Example #1
0
        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));
        }
Example #2
0
        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));
        }