private Point EnsureWindowVisibility(Point size) { var x = Left; var y = Top; LogTo.Debug($"Loaded Window position: {x}|{y}"); var screen = ScreenRepo.GetScreenFromPosition(x, y); // If the window is half off the screen, move it into view if (y + size.Y / 2 > screen.Height) { y = screen.Height - size.Y; } if (x + size.X / 2 > screen.Width) { x = screen.Width - size.X; } // Ensure window does not hang off screen if (y < screen.Top) { y = screen.Top; } if (x < screen.Left) { x = screen.Left; } LogTo.Debug($"Clipped Window position: {x}|{y}"); return(new Point(x, y)); }
private Point EnsureWindowSize() { var x = Width; var y = Height; LogTo.Debug($"Loaded Window size: {x}|{y}"); var screen = ScreenRepo.GetScreenFromPosition(x, y); // Make sure the window is at most as large as the available screen space. if (x > screen.Width) { x = screen.Width; } if (y > screen.Height) { y = screen.Height; } LogTo.Debug($"Clipped Window size: {x}|{y}"); return(new Point(x, y)); }