diff --git a/dlls/user32/tests/win.c b/dlls/user32/tests/win.c index 26b1f0098dd..1b03e64181a 100644 --- a/dlls/user32/tests/win.c +++ b/dlls/user32/tests/win.c @@ -13034,6 +13034,7 @@ static void test_WM_NCCALCSIZE(void) } #define TRAY_MINIMIZE_ALL 419 +#define TRAY_MINIMIZE_ALL_UNDO 416 static void test_shell_tray(void) { @@ -13056,6 +13057,10 @@ static void test_shell_tray(void) flush_events( TRUE ); todo_wine ok( IsIconic( hwnd ), "window is not minimized.\n" ); + SendMessageA( traywnd, WM_COMMAND, TRAY_MINIMIZE_ALL_UNDO, 0xdeadbeef ); + flush_events( TRUE ); + ok( !IsIconic( hwnd ), "window is minimized.\n" ); + DestroyWindow(hwnd); } diff --git a/programs/explorer/systray.c b/programs/explorer/systray.c index 99a5a99490d..43187db30b5 100644 --- a/programs/explorer/systray.c +++ b/programs/explorer/systray.c @@ -34,6 +34,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(systray); #define TRAY_MINIMIZE_ALL 419 +#define TRAY_MINIMIZE_ALL_UNDO 416 struct notify_data /* platform-independent format for NOTIFYICONDATA */ { @@ -1064,7 +1065,7 @@ static LRESULT WINAPI shell_traywnd_proc( HWND hwnd, UINT msg, WPARAM wparam, LP case WM_COMMAND: if (HIWORD(wparam) == BN_CLICKED) { - if (LOWORD(wparam) == TRAY_MINIMIZE_ALL) + if (LOWORD(wparam) == TRAY_MINIMIZE_ALL || LOWORD(wparam) == TRAY_MINIMIZE_ALL_UNDO) { FIXME( "Shell command %u is not supported.\n", LOWORD(wparam) ); break;