Commit 69b41aeb authored by Alexandre Julliard's avatar Alexandre Julliard

explorer: Don't bother with taskbar buttons when the taskbar is not visible.

parent 1b025eb0
...@@ -483,6 +483,8 @@ static void sync_taskbar_buttons(void) ...@@ -483,6 +483,8 @@ static void sync_taskbar_buttons(void)
int right = tray_width - nb_displayed * icon_cx; int right = tray_width - nb_displayed * icon_cx;
HWND foreground = GetAncestor( GetForegroundWindow(), GA_ROOTOWNER ); HWND foreground = GetAncestor( GetForegroundWindow(), GA_ROOTOWNER );
if (!IsWindowVisible( tray_window )) return;
LIST_FOR_EACH_ENTRY( win, &taskbar_buttons, struct taskbar_button, entry ) LIST_FOR_EACH_ENTRY( win, &taskbar_buttons, struct taskbar_button, entry )
{ {
if (!win->hwnd) /* start button */ if (!win->hwnd) /* start button */
...@@ -597,6 +599,8 @@ static void add_taskbar_button( HWND hwnd ) ...@@ -597,6 +599,8 @@ static void add_taskbar_button( HWND hwnd )
{ {
struct taskbar_button *win; struct taskbar_button *win;
if (hide_systray) return;
/* ignore our own windows */ /* ignore our own windows */
if (hwnd) if (hwnd)
{ {
...@@ -730,9 +734,9 @@ static void do_show_systray(void) ...@@ -730,9 +734,9 @@ static void do_show_systray(void)
tray_width = GetSystemMetrics( SM_CXSCREEN ); tray_width = GetSystemMetrics( SM_CXSCREEN );
tray_height = max( icon_cy, size.cy ); tray_height = max( icon_cy, size.cy );
start_button_width = size.cx; start_button_width = size.cx;
sync_taskbar_buttons();
SetWindowPos( tray_window, HWND_TOPMOST, 0, GetSystemMetrics( SM_CYSCREEN ) - tray_height, SetWindowPos( tray_window, HWND_TOPMOST, 0, GetSystemMetrics( SM_CYSCREEN ) - tray_height,
tray_width, tray_height, SWP_NOACTIVATE | SWP_SHOWWINDOW ); tray_width, tray_height, SWP_NOACTIVATE | SWP_SHOWWINDOW );
sync_taskbar_buttons();
} }
static LRESULT WINAPI tray_wndproc( HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) static LRESULT WINAPI tray_wndproc( HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment