Browse Source

Merge pull request #7902 from pr8x/button-flyout-diagnostics

Fix devtools popup inspection
pull/7931/head
Jumar Macato 4 years ago
committed by GitHub
parent
commit
eafb5175bb
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 7
      src/Avalonia.Controls/Primitives/PopupRoot.cs
  2. 9
      src/Avalonia.Diagnostics/Diagnostics/Views/MainWindow.xaml.cs

7
src/Avalonia.Controls/Primitives/PopupRoot.cs

@ -17,7 +17,6 @@ namespace Avalonia.Controls.Primitives
/// </summary>
public sealed class PopupRoot : WindowBase, IInteractive, IHostedVisualTreeRoot, IDisposable, IStyleHost, IPopupHost
{
private readonly TopLevel _parent;
private PopupPositionerParameters _positionerParameters;
/// <summary>
@ -47,7 +46,7 @@ namespace Avalonia.Controls.Primitives
public PopupRoot(TopLevel parent, IPopupImpl impl, IAvaloniaDependencyResolver? dependencyResolver)
: base(impl, dependencyResolver)
{
_parent = parent;
ParentTopLevel = parent;
}
/// <summary>
@ -73,6 +72,8 @@ namespace Avalonia.Controls.Primitives
/// </summary>
IStyleHost? IStyleHost.StylingParent => Parent;
public TopLevel ParentTopLevel { get; }
/// <inheritdoc/>
public void Dispose()
{
@ -91,7 +92,7 @@ namespace Avalonia.Controls.Primitives
PopupPositionerConstraintAdjustment constraintAdjustment = PopupPositionerConstraintAdjustment.All,
Rect? rect = null)
{
_positionerParameters.ConfigurePosition(_parent, target,
_positionerParameters.ConfigurePosition(ParentTopLevel, target,
placement, offset, anchor, gravity, constraintAdjustment, rect);
if (_positionerParameters.Size != default)

9
src/Avalonia.Diagnostics/Diagnostics/Views/MainWindow.xaml.cs

@ -162,13 +162,18 @@ namespace Avalonia.Diagnostics.Views
return;
}
var root = Root as TopLevel
?? vm.PointerOverRoot as TopLevel;
var root = vm.PointerOverRoot as TopLevel;
if (root is null)
{
return;
}
if (root is PopupRoot pr && pr.ParentTopLevel != null)
{
root = pr.ParentTopLevel;
}
switch (e.Modifiers)
{
case RawInputModifiers.Control when (e.Key == Key.LeftShift || e.Key == Key.RightShift):

Loading…
Cancel
Save