diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index 944d958f..e0267921 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -7876,7 +7876,7 @@ if test "$enable_winex11__NET_ACTIVE_WINDOW" -eq 1; then patch_apply winex11-_NET_ACTIVE_WINDOW/0001-winex11.drv-Add-support-for-_NET_ACTIVE_WINDOW.patch patch_apply winex11-_NET_ACTIVE_WINDOW/0002-user32-Before-asking-a-WM-to-activate-a-window-make-.patch ( - echo '+ { "Dmitry Timoshkov", "winex11.drv: Add support for _NET_ACTIVE_WINDOW.", 1 },'; + echo '+ { "Dmitry Timoshkov", "winex11.drv: Add support for _NET_ACTIVE_WINDOW.", 2 },'; echo '+ { "Dmitry Timoshkov", "user32: Before asking a WM to activate a window make sure that the window is in foreground and not minimized.", 1 },'; ) >> "$patchlist" fi diff --git a/patches/winex11-_NET_ACTIVE_WINDOW/0001-winex11.drv-Add-support-for-_NET_ACTIVE_WINDOW.patch b/patches/winex11-_NET_ACTIVE_WINDOW/0001-winex11.drv-Add-support-for-_NET_ACTIVE_WINDOW.patch index 03fd4e47..a1732045 100644 --- a/patches/winex11-_NET_ACTIVE_WINDOW/0001-winex11.drv-Add-support-for-_NET_ACTIVE_WINDOW.patch +++ b/patches/winex11-_NET_ACTIVE_WINDOW/0001-winex11.drv-Add-support-for-_NET_ACTIVE_WINDOW.patch @@ -1,7 +1,7 @@ -From 2629f350d6b567941b7a66eb39c9b74e2e2616eb Mon Sep 17 00:00:00 2001 +From f545d21724b78220ab7dbbd341db8d3e34583150 Mon Sep 17 00:00:00 2001 From: Dmitry Timoshkov Date: Wed, 10 Feb 2016 15:09:29 +0800 -Subject: winex11.drv: Add support for _NET_ACTIVE_WINDOW. +Subject: winex11.drv: Add support for _NET_ACTIVE_WINDOW. (v2) And use it as a backend in user32.SetActiveWindow(). @@ -70,7 +70,7 @@ index c47a82d..1c705d5 100644 if (focus) { diff --git a/dlls/user32/user_private.h b/dlls/user32/user_private.h -index ead7a53..dfa91ed 100644 +index e4a2ed1..0dc736c 100644 --- a/dlls/user32/user_private.h +++ b/dlls/user32/user_private.h @@ -101,6 +101,7 @@ typedef struct tagUSER_DRIVER { @@ -105,7 +105,7 @@ index 51ef24b..0d8319b 100644 Foreground window, because in most cases the messages sent above must have already changed the foreground window, in which diff --git a/dlls/winex11.drv/window.c b/dlls/winex11.drv/window.c -index 4789f98..22a05df 100644 +index 06ce26e..7c0c38d 100644 --- a/dlls/winex11.drv/window.c +++ b/dlls/winex11.drv/window.c @@ -2111,6 +2111,54 @@ BOOL CDECL X11DRV_ScrollDC( HDC hdc, INT dx, INT dy, HRGN update ) @@ -116,7 +116,7 @@ index 4789f98..22a05df 100644 + */ +void CDECL X11DRV_SetActiveWindow( HWND hwnd ) +{ -+ struct x11drv_thread_data *thread_data = x11drv_thread_data(); ++ struct x11drv_thread_data *thread_data = x11drv_init_thread_data(); + struct x11drv_win_data *data; + + TRACE("%p\n", hwnd); @@ -208,5 +208,5 @@ index d4f5c84..bef9055 100644 "_NET_STARTUP_INFO", "_NET_SUPPORTED", -- -2.7.1 +2.8.0