Browse Source

transform to visual.

pull/11502/head
Dan Walmsley 3 years ago
parent
commit
d064ad4e6a
  1. 10
      src/Avalonia.Base/Input/PointerEventArgs.cs

10
src/Avalonia.Base/Input/PointerEventArgs.cs

@ -70,16 +70,14 @@ namespace Avalonia.Input
if (relativeTo == null)
return pt;
if (!ReferenceEquals(_rootVisual, relativeTo.VisualRoot))
if (!ReferenceEquals(_rootVisual, relativeTo.VisualRoot) && relativeTo.VisualRoot is Visual v)
{
var screenPt = _rootVisual.PointToScreen(pt);
return relativeTo.PointToClient(screenPt);
}
else
{
return pt * _rootVisual.TransformToVisual(relativeTo) ?? default;
return relativeTo.PointToClient(screenPt) * v.TransformToVisual(relativeTo) ?? default;
}
return pt * _rootVisual.TransformToVisual(relativeTo) ?? default;
}
/// <summary>

Loading…
Cancel
Save