Rebase against 8091f3a0b8463d41049ed4ade98c79f82c86ebbc.

This commit is contained in:
Alistair Leslie-Hughes 2022-04-06 09:00:31 +10:00
parent 3d32dd0626
commit 2f728605b0
4 changed files with 20 additions and 20 deletions

View File

@ -51,7 +51,7 @@ usage()
# Get the upstream commit sha
upstream_commit()
{
echo "0de8d01b09b1cc7ca34f7ae3890b4a416ff801fe"
echo "8091f3a0b8463d41049ed4ade98c79f82c86ebbc"
}
# Show version information

View File

@ -1,4 +1,4 @@
From 313d448f0e96df2c0b7b68bce8a6c7a2afed4c2e Mon Sep 17 00:00:00 2001
From 308420aac52197c2add1e472f509b109a17db961 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gabriel=20Iv=C4=83ncescu?= <gabrielopcode@gmail.com>
Date: Mon, 22 Jul 2019 15:29:25 +0300
Subject: [PATCH] user32/focus: Prevent a recursive loop with the activation
@ -34,10 +34,10 @@ index ff41cf716a1..a044133ab40 100644
* FOCUS_MouseActivate
*
diff --git a/dlls/user32/tests/msg.c b/dlls/user32/tests/msg.c
index f28b1151c4d..4dad60d3ad6 100644
index f939e91764c..af4fee6b3fc 100644
--- a/dlls/user32/tests/msg.c
+++ b/dlls/user32/tests/msg.c
@@ -5572,7 +5572,7 @@ static void test_messages(void)
@@ -5571,7 +5571,7 @@ static void test_messages(void)
ShowWindow(hwnd, SW_MINIMIZE);
flush_events();
@ -47,10 +47,10 @@ index f28b1151c4d..4dad60d3ad6 100644
if (GetWindowLongW( hwnd, GWL_STYLE ) & WS_MINIMIZE)
diff --git a/dlls/win32u/input.c b/dlls/win32u/input.c
index 08eded198a3..9ed6dc01a1e 100644
index 328f270fb1f..ade8c313423 100644
--- a/dlls/win32u/input.c
+++ b/dlls/win32u/input.c
@@ -1187,7 +1187,7 @@ static BOOL set_active_window( HWND hwnd, HWND *prev, BOOL mouse, BOOL focus )
@@ -1287,7 +1287,7 @@ static BOOL set_active_window( HWND hwnd, HWND *prev, BOOL mouse, BOOL focus )
{
HWND previous = get_active_window();
BOOL ret;
@ -59,7 +59,7 @@ index 08eded198a3..9ed6dc01a1e 100644
CBTACTIVATESTRUCT cbt;
if (previous == hwnd)
@@ -1196,16 +1196,24 @@ static BOOL set_active_window( HWND hwnd, HWND *prev, BOOL mouse, BOOL focus )
@@ -1296,16 +1296,24 @@ static BOOL set_active_window( HWND hwnd, HWND *prev, BOOL mouse, BOOL focus )
return TRUE;
}
@ -93,10 +93,10 @@ index 08eded198a3..9ed6dc01a1e 100644
}
SERVER_START_REQ( set_active_window )
@@ -1225,7 +1233,11 @@ static BOOL set_active_window( HWND hwnd, HWND *prev, BOOL mouse, BOOL focus )
if (send_message( hwnd, WM_QUERYNEWPALETTE, 0, 0 ) && user_callbacks)
user_callbacks->pSendMessageTimeoutW( HWND_BROADCAST, WM_PALETTEISCHANGING, (WPARAM)hwnd, 0,
SMTO_ABORTIFHUNG, 2000, NULL );
@@ -1325,7 +1333,11 @@ static BOOL set_active_window( HWND hwnd, HWND *prev, BOOL mouse, BOOL focus )
if (send_message( hwnd, WM_QUERYNEWPALETTE, 0, 0 ))
send_message_timeout( HWND_BROADCAST, WM_PALETTEISCHANGING, (WPARAM)hwnd, 0,
SMTO_ABORTIFHUNG, 2000, NULL, FALSE );
- if (!is_window(hwnd)) return FALSE;
+ if (!is_window(hwnd))
+ {
@ -106,7 +106,7 @@ index 08eded198a3..9ed6dc01a1e 100644
}
old_thread = previous ? get_window_thread( previous, NULL ) : 0;
@@ -1257,7 +1269,7 @@ static BOOL set_active_window( HWND hwnd, HWND *prev, BOOL mouse, BOOL focus )
@@ -1357,7 +1369,7 @@ static BOOL set_active_window( HWND hwnd, HWND *prev, BOOL mouse, BOOL focus )
}
}
@ -115,7 +115,7 @@ index 08eded198a3..9ed6dc01a1e 100644
{
send_message( hwnd, WM_NCACTIVATE, hwnd == NtUserGetForegroundWindow(), (LPARAM)previous );
send_message( hwnd, WM_ACTIVATE,
@@ -1282,7 +1294,9 @@ static BOOL set_active_window( HWND hwnd, HWND *prev, BOOL mouse, BOOL focus )
@@ -1382,7 +1394,9 @@ static BOOL set_active_window( HWND hwnd, HWND *prev, BOOL mouse, BOOL focus )
}
}
@ -127,10 +127,10 @@ index 08eded198a3..9ed6dc01a1e 100644
/**********************************************************************
diff --git a/dlls/win32u/ntuser_private.h b/dlls/win32u/ntuser_private.h
index 49fd22ca140..3b77f37e9f2 100644
index 6afe3955787..9994b56bac2 100644
--- a/dlls/win32u/ntuser_private.h
+++ b/dlls/win32u/ntuser_private.h
@@ -119,6 +119,7 @@ typedef struct tagWND
@@ -121,6 +121,7 @@ typedef struct tagWND
#define WIN_NEEDS_SHOW_OWNEDPOPUP 0x0020 /* WM_SHOWWINDOW:SC_SHOW must be sent in the next ShowOwnedPopup call */
#define WIN_CHILDREN_MOVED 0x0040 /* children may have moved, ignore stored positions */
#define WIN_HAS_IME_WIN 0x0080 /* the window has been registered with imm32 */

View File

@ -1,4 +1,4 @@
From 0c87051cd420a36eee8c30b1a647c2668caaf589 Mon Sep 17 00:00:00 2001
From 49cc6f9c79195d243f0e8d035267d9734708e5a5 Mon Sep 17 00:00:00 2001
From: Dmitry Timoshkov <dmitry@baikal.ru>
Date: Wed, 6 Apr 2016 15:14:25 +0800
Subject: [PATCH] user32: Before asking a WM to activate a window make sure
@ -10,13 +10,13 @@ This patch fixes iconify action using WM's taskbar buttons for Winamp.
1 file changed, 4 insertions(+)
diff --git a/dlls/win32u/input.c b/dlls/win32u/input.c
index 3e838e5b17d..ee07627c008 100644
index ade8c313423..dda2a750275 100644
--- a/dlls/win32u/input.c
+++ b/dlls/win32u/input.c
@@ -1277,6 +1277,10 @@ static BOOL set_active_window( HWND hwnd, HWND *prev, BOOL mouse, BOOL focus )
@@ -1377,6 +1377,10 @@ static BOOL set_active_window( HWND hwnd, HWND *prev, BOOL mouse, BOOL focus )
(LPARAM)previous );
if (NtUserGetAncestor( hwnd, GA_PARENT ) == get_desktop_window())
post_message( get_desktop_window(), WM_PARENTNOTIFY, WM_NCACTIVATE, (LPARAM)hwnd );
NtUserPostMessage( get_desktop_window(), WM_PARENTNOTIFY, WM_NCACTIVATE, (LPARAM)hwnd );
+
+ if (hwnd == NtUserGetForegroundWindow() && !is_iconic( hwnd ))
+ NtUserSetActiveWindow( hwnd );

View File

@ -1 +1 @@
0de8d01b09b1cc7ca34f7ae3890b4a416ff801fe
8091f3a0b8463d41049ed4ade98c79f82c86ebbc