|
|
|
@ -340,7 +340,7 @@ namespace Avalonia.Layout |
|
|
|
{ |
|
|
|
for (var i = 0; i < count; ++i) |
|
|
|
{ |
|
|
|
var l = _effectiveViewportChangedListeners[i]; |
|
|
|
var l = listeners[i]; |
|
|
|
|
|
|
|
if (!l.Listener.IsAttachedToVisualTree) |
|
|
|
{ |
|
|
|
@ -352,7 +352,7 @@ namespace Avalonia.Layout |
|
|
|
if (viewport != l.Viewport) |
|
|
|
{ |
|
|
|
l.Listener.EffectiveViewportChanged(new EffectiveViewportChangedEventArgs(viewport)); |
|
|
|
_effectiveViewportChangedListeners[i] = new EffectiveViewportChangedListener(l.Listener, viewport); |
|
|
|
l.Viewport = viewport; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
@ -404,7 +404,7 @@ namespace Avalonia.Layout |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
private readonly struct EffectiveViewportChangedListener |
|
|
|
private struct EffectiveViewportChangedListener |
|
|
|
{ |
|
|
|
public EffectiveViewportChangedListener(ILayoutable listener, Rect viewport) |
|
|
|
{ |
|
|
|
@ -413,7 +413,7 @@ namespace Avalonia.Layout |
|
|
|
} |
|
|
|
|
|
|
|
public ILayoutable Listener { get; } |
|
|
|
public Rect Viewport { get; } |
|
|
|
public Rect Viewport { get; set; } |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|