[PATCH 0/1] MR8107: winex11: Don't activate/update foreground in virtual desktop mode.
From: Rémi Bernon <rbernon(a)codeweavers.com> Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=58217 --- dlls/winex11.drv/event.c | 2 +- dlls/winex11.drv/window.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dlls/winex11.drv/event.c b/dlls/winex11.drv/event.c index 58692a2ca65..723f3204dd8 100644 --- a/dlls/winex11.drv/event.c +++ b/dlls/winex11.drv/event.c @@ -1302,7 +1302,7 @@ void X11DRV_ActivateWindow( HWND hwnd, HWND previous ) { struct x11drv_win_data *data; - set_net_active_window( hwnd, previous ); + if (!is_virtual_desktop()) set_net_active_window( hwnd, previous ); if (!(data = get_win_data( hwnd ))) return; if (!data->managed || data->embedder) set_input_focus( data ); diff --git a/dlls/winex11.drv/window.c b/dlls/winex11.drv/window.c index 7fd1151bdff..c6decf4796d 100644 --- a/dlls/winex11.drv/window.c +++ b/dlls/winex11.drv/window.c @@ -1623,7 +1623,7 @@ BOOL X11DRV_GetWindowStateUpdates( HWND hwnd, UINT *state_cmd, UINT *config_cmd, *foreground = 0; if (!(old_foreground = NtUserGetForegroundWindow())) old_foreground = NtUserGetDesktopWindow(); - if (NtUserGetWindowThread( old_foreground, NULL ) == GetCurrentThreadId() && + if (!is_virtual_desktop() && NtUserGetWindowThread( old_foreground, NULL ) == GetCurrentThreadId() && !window_has_pending_wm_state( old_foreground, NormalState ) && !thread_data->net_active_window_serial) { -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/8107
participants (1)
-
Rémi Bernon