[Screen Ruler] Don't flicker UI window at startup (#20206)

This commit is contained in:
Andrey Nekrasov
2022-08-31 20:55:27 +03:00
committed by GitHub
parent 086eb58d80
commit 7e291fb303

View File

@@ -39,9 +39,9 @@ namespace MeasureToolUI
InitializeComponent(); InitializeComponent();
var hwnd = WinRT.Interop.WindowNative.GetWindowHandle(this); var hwnd = WinRT.Interop.WindowNative.GetWindowHandle(this);
SetWindowPos(hwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE | SWP_SHOWWINDOW);
WindowId windowId = Win32Interop.GetWindowIdFromWindow(hwnd); WindowId windowId = Win32Interop.GetWindowIdFromWindow(hwnd);
_appWindow = AppWindow.GetFromWindowId(windowId); _appWindow = AppWindow.GetFromWindowId(windowId);
var presenter = _appWindow.Presenter as OverlappedPresenter; var presenter = _appWindow.Presenter as OverlappedPresenter;
presenter.IsAlwaysOnTop = true; presenter.IsAlwaysOnTop = true;
this.SetIsAlwaysOnTop(true); this.SetIsAlwaysOnTop(true);
@@ -61,7 +61,6 @@ namespace MeasureToolUI
_initialPosition.Y, _initialPosition.Y,
_initialPosition.X + (int)(dpiScale * WindowWidth), _initialPosition.X + (int)(dpiScale * WindowWidth),
_initialPosition.Y + (int)(dpiScale * WindowHeight)); _initialPosition.Y + (int)(dpiScale * WindowHeight));
OnPositionChanged(_initialPosition); OnPositionChanged(_initialPosition);
} }