mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-04-05 10:46:33 +02:00
[Settings]Fix blank icon in the taskbar (#38259)
This commit is contained in:
@@ -28,18 +28,15 @@ namespace Microsoft.PowerToys.Settings.UI
|
|||||||
var bootTime = new System.Diagnostics.Stopwatch();
|
var bootTime = new System.Diagnostics.Stopwatch();
|
||||||
bootTime.Start();
|
bootTime.Start();
|
||||||
|
|
||||||
|
this.Activated += Window_Activated_SetIcon;
|
||||||
|
|
||||||
App.ThemeService.ThemeChanged += OnThemeChanged;
|
App.ThemeService.ThemeChanged += OnThemeChanged;
|
||||||
App.ThemeService.ApplyTheme();
|
App.ThemeService.ApplyTheme();
|
||||||
|
|
||||||
ShellPage.SetElevationStatus(App.IsElevated);
|
ShellPage.SetElevationStatus(App.IsElevated);
|
||||||
ShellPage.SetIsUserAnAdmin(App.IsUserAnAdmin);
|
ShellPage.SetIsUserAnAdmin(App.IsUserAnAdmin);
|
||||||
|
|
||||||
// Set window icon
|
|
||||||
var hWnd = WinRT.Interop.WindowNative.GetWindowHandle(this);
|
var hWnd = WinRT.Interop.WindowNative.GetWindowHandle(this);
|
||||||
WindowId windowId = Win32Interop.GetWindowIdFromWindow(hWnd);
|
|
||||||
AppWindow appWindow = AppWindow.GetFromWindowId(windowId);
|
|
||||||
appWindow.SetIcon("Assets\\Settings\\icon.ico");
|
|
||||||
|
|
||||||
var placement = WindowHelper.DeserializePlacementOrDefault(hWnd);
|
var placement = WindowHelper.DeserializePlacementOrDefault(hWnd);
|
||||||
if (createHidden)
|
if (createHidden)
|
||||||
{
|
{
|
||||||
@@ -221,6 +218,15 @@ namespace Microsoft.PowerToys.Settings.UI
|
|||||||
App.ThemeService.ThemeChanged -= OnThemeChanged;
|
App.ThemeService.ThemeChanged -= OnThemeChanged;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void Window_Activated_SetIcon(object sender, WindowActivatedEventArgs args)
|
||||||
|
{
|
||||||
|
// Set window icon
|
||||||
|
var hWnd = WinRT.Interop.WindowNative.GetWindowHandle(this);
|
||||||
|
WindowId windowId = Win32Interop.GetWindowIdFromWindow(hWnd);
|
||||||
|
AppWindow appWindow = AppWindow.GetFromWindowId(windowId);
|
||||||
|
appWindow.SetIcon("Assets\\Settings\\icon.ico");
|
||||||
|
}
|
||||||
|
|
||||||
private void Window_Activated(object sender, WindowActivatedEventArgs args)
|
private void Window_Activated(object sender, WindowActivatedEventArgs args)
|
||||||
{
|
{
|
||||||
if (args.WindowActivationState != WindowActivationState.Deactivated)
|
if (args.WindowActivationState != WindowActivationState.Deactivated)
|
||||||
|
|||||||
@@ -41,11 +41,10 @@ namespace Microsoft.PowerToys.Settings.UI
|
|||||||
|
|
||||||
this.InitializeComponent();
|
this.InitializeComponent();
|
||||||
|
|
||||||
// Set window icon
|
|
||||||
_hWnd = WinRT.Interop.WindowNative.GetWindowHandle(this);
|
_hWnd = WinRT.Interop.WindowNative.GetWindowHandle(this);
|
||||||
_windowId = Win32Interop.GetWindowIdFromWindow(_hWnd);
|
_windowId = Win32Interop.GetWindowIdFromWindow(_hWnd);
|
||||||
_appWindow = AppWindow.GetFromWindowId(_windowId);
|
_appWindow = AppWindow.GetFromWindowId(_windowId);
|
||||||
_appWindow.SetIcon("Assets\\Settings\\icon.ico");
|
this.Activated += Window_Activated_SetIcon;
|
||||||
|
|
||||||
OverlappedPresenter presenter = _appWindow.Presenter as OverlappedPresenter;
|
OverlappedPresenter presenter = _appWindow.Presenter as OverlappedPresenter;
|
||||||
presenter.IsMinimizable = false;
|
presenter.IsMinimizable = false;
|
||||||
@@ -110,6 +109,12 @@ namespace Microsoft.PowerToys.Settings.UI
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void Window_Activated_SetIcon(object sender, WindowActivatedEventArgs args)
|
||||||
|
{
|
||||||
|
// Set window icon
|
||||||
|
_appWindow.SetIcon("Assets\\Settings\\icon.ico");
|
||||||
|
}
|
||||||
|
|
||||||
private void OobeWindow_SizeChanged(object sender, WindowSizeChangedEventArgs args)
|
private void OobeWindow_SizeChanged(object sender, WindowSizeChangedEventArgs args)
|
||||||
{
|
{
|
||||||
var dpi = NativeMethods.GetDpiForWindow(_hWnd);
|
var dpi = NativeMethods.GetDpiForWindow(_hWnd);
|
||||||
|
|||||||
Reference in New Issue
Block a user