Zhiyi Zhang zzhang@codeweavers.com wrote:
diff --git a/dlls/winex11.drv/event.c b/dlls/winex11.drv/event.c index 6054f645c4..a75bc61b60 100644 --- a/dlls/winex11.drv/event.c +++ b/dlls/winex11.drv/event.c @@ -1255,6 +1255,7 @@ static void handle_wm_state_notify( HWND hwnd, XPropertyEvent *event, BOOL updat { TRACE( "restoring to max %p/%lx\n", data->hwnd, data->whole_window ); release_win_data( data );
SetActiveWindow( hwnd ); SendMessageW( hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0 ); return; }
@@ -1266,6 +1267,7 @@ static void handle_wm_state_notify( HWND hwnd, XPropertyEvent *event, BOOL updat { TRACE( "restoring win %p/%lx\n", data->hwnd, data->whole_window ); release_win_data( data );
SetActiveWindow( hwnd ); SendMessageW( hwnd, WM_SYSCOMMAND, SC_RESTORE, 0 ); return;
Activation should be a part of the WM_SYSCOMMAND handling, you should try to figure out why it doesn't happen. Also this hack most likely will break existing user32 tests.