|
|
|
@ -7,6 +7,7 @@ using Avalonia.Controls.Platform; |
|
|
|
using Avalonia.Controls.Presenters; |
|
|
|
using Avalonia.Interactivity; |
|
|
|
using Avalonia.Layout; |
|
|
|
using Avalonia.LogicalTree; |
|
|
|
using Avalonia.Media; |
|
|
|
using Avalonia.Platform; |
|
|
|
using Avalonia.Styling; |
|
|
|
@ -82,8 +83,9 @@ namespace Avalonia.Controls.Primitives |
|
|
|
/// </summary>
|
|
|
|
public void SnapInsideScreenEdges() |
|
|
|
{ |
|
|
|
var mainWindow = Window.OpenWindows.First(); |
|
|
|
var screen = mainWindow.Screens.ScreenFromPoint(Position); |
|
|
|
var window = this.GetSelfAndLogicalAncestors().OfType<Window>().First(); |
|
|
|
|
|
|
|
var screen = window.Screens.ScreenFromPoint(Position); |
|
|
|
|
|
|
|
var screenX = Position.X + Bounds.Width - screen.Bounds.X; |
|
|
|
var screenY = Position.Y + Bounds.Height - screen.Bounds.Y; |
|
|
|
|