Browse Source

Use OnMeasureInvalidated instead of virtual InvalidateMeasure

pull/1016/head
Nikita Tsukanov 9 years ago
parent
commit
35f353c2db
  1. 11
      src/Avalonia.Layout/Layoutable.cs
  2. 3
      src/Windows/Avalonia.Win32.Interop/Wpf/WpfTopLevelImpl.cs

11
src/Avalonia.Layout/Layoutable.cs

@ -367,10 +367,18 @@ namespace Avalonia.Layout
}
}
/// <summary>
/// Called by InvalidateMeasure
/// </summary>
protected virtual void OnMeasureInvalidated()
{
}
/// <summary>
/// Invalidates the measurement of the control and queues a new layout pass.
/// </summary>
public virtual void InvalidateMeasure()
public void InvalidateMeasure()
{
if (IsMeasureValid)
{
@ -384,6 +392,7 @@ namespace Avalonia.Layout
LayoutManager.Instance?.InvalidateMeasure(this);
InvalidateVisual();
}
OnMeasureInvalidated();
}
}

3
src/Windows/Avalonia.Win32.Interop/Wpf/WpfTopLevelImpl.cs

@ -40,10 +40,9 @@ namespace Avalonia.Win32.Interop.Wpf
EnforceClientSize = false;
}
public override void InvalidateMeasure()
protected override void OnMeasureInvalidated()
{
((FrameworkElement)PlatformImpl)?.InvalidateMeasure();
base.InvalidateMeasure();
}
protected override void HandleResized(Size clientSize)

Loading…
Cancel
Save