From a853455a234181aea55a9035ed7b30c826860de3 Mon Sep 17 00:00:00 2001 From: Alistair Leslie-Hughes Date: Wed, 16 Mar 2022 11:19:13 +1100 Subject: [PATCH] Rebase against 670a1e81b465f67cb7e49fdb84c1fc96853fc9d7. --- ...nt-a-better-stub-for-IPicture-SaveAs.patch | 38 +++++++-------- ...leaut32-Implement-OleLoadPictureFile.patch | 46 +++++++++---------- patches/patchinstall.sh | 4 +- ...x-should-be-topmost-when-MB_SYSTEMMO.patch | 22 ++++----- ...ges-sent-on-a-window-without-WS_CHIL.patch | 33 +++++++------ ...v-Add-support-for-_NET_ACTIVE_WINDOW.patch | 20 ++++---- staging/upstream-commit | 2 +- 7 files changed, 85 insertions(+), 80 deletions(-) diff --git a/patches/oleaut32-OLEPictureImpl_SaveAsFile/0002-oleaut32-Implement-a-better-stub-for-IPicture-SaveAs.patch b/patches/oleaut32-OLEPictureImpl_SaveAsFile/0002-oleaut32-Implement-a-better-stub-for-IPicture-SaveAs.patch index f27f399d..188a496a 100644 --- a/patches/oleaut32-OLEPictureImpl_SaveAsFile/0002-oleaut32-Implement-a-better-stub-for-IPicture-SaveAs.patch +++ b/patches/oleaut32-OLEPictureImpl_SaveAsFile/0002-oleaut32-Implement-a-better-stub-for-IPicture-SaveAs.patch @@ -1,4 +1,4 @@ -From 209317c803637eda7411ec3094dfb3cfa3ada93a Mon Sep 17 00:00:00 2001 +From a9c768a74e8ecbe857dfb851e35c62d5447f8d10 Mon Sep 17 00:00:00 2001 From: Dmitry Timoshkov Date: Tue, 24 Nov 2015 17:22:02 +0800 Subject: [PATCH] oleaut32: Implement a better stub for IPicture::SaveAsFile. @@ -12,10 +12,10 @@ For bug 8532. 2 files changed, 79 insertions(+), 22 deletions(-) diff --git a/dlls/oleaut32/olepicture.c b/dlls/oleaut32/olepicture.c -index a3bbdc52a0f..ad4aff2aecc 100644 +index bbc5e2aa9c8..0410d2b3cad 100644 --- a/dlls/oleaut32/olepicture.c +++ b/dlls/oleaut32/olepicture.c -@@ -859,19 +859,6 @@ static HRESULT WINAPI OLEPictureImpl_PictureChanged(IPicture *iface) +@@ -832,19 +832,6 @@ static HRESULT WINAPI OLEPictureImpl_PictureChanged(IPicture *iface) return S_OK; } @@ -35,7 +35,7 @@ index a3bbdc52a0f..ad4aff2aecc 100644 /************************************************************************ * OLEPictureImpl_get_Attributes */ -@@ -1915,6 +1902,85 @@ static HRESULT WINAPI OLEPictureImpl_GetSizeMax( +@@ -1887,6 +1874,85 @@ static HRESULT WINAPI OLEPictureImpl_GetSizeMax( return E_NOTIMPL; } @@ -122,58 +122,58 @@ index a3bbdc52a0f..ad4aff2aecc 100644 /************************************************************************ * IDispatch diff --git a/dlls/oleaut32/tests/olepicture.c b/dlls/oleaut32/tests/olepicture.c -index 0582bd2266e..ce87dd3d4d4 100644 +index beafb98b28f..e0fb3bb3cd8 100644 --- a/dlls/oleaut32/tests/olepicture.c +++ b/dlls/oleaut32/tests/olepicture.c @@ -1178,18 +1178,14 @@ static void test_load_save_bmp(void) size = -1; hr = IPicture_SaveAsFile(pic, dst_stream, TRUE, &size); - ok(hr == S_OK, "IPicture_SaveasFile error %#x\n", hr); + ok(hr == S_OK, "IPicture_SaveasFile error %#lx\n", hr); - todo_wine - ok(size == 66, "expected 66, got %d\n", size); + ok(size == 66, "expected 66, got %ld\n", size); mem = GlobalLock(hmem); - todo_wine - ok(!memcmp(&mem[0], "BM", 2), "got wrong bmp header %04x\n", mem[0]); + ok(!memcmp(&mem[0], "BM", 2), "got wrong bmp header %04lx\n", mem[0]); GlobalUnlock(hmem); size = -1; hr = IPicture_SaveAsFile(pic, dst_stream, FALSE, &size); - todo_wine - ok(hr == E_FAIL, "expected E_FAIL, got %#x\n", hr); + ok(hr == E_FAIL, "expected E_FAIL, got %#lx\n", hr); - todo_wine - ok(size == -1, "expected -1, got %d\n", size); + ok(size == -1, "expected -1, got %ld\n", size); offset.QuadPart = 0; @@ -1256,15 +1252,12 @@ static void test_load_save_icon(void) todo_wine - ok(size == 766, "expected 766, got %d\n", size); + ok(size == 766, "expected 766, got %ld\n", size); mem = GlobalLock(hmem); - todo_wine - ok(mem[0] == 0x00010000, "got wrong icon header %04x\n", mem[0]); + ok(mem[0] == 0x00010000, "got wrong icon header %04lx\n", mem[0]); GlobalUnlock(hmem); size = -1; hr = IPicture_SaveAsFile(pic, dst_stream, FALSE, &size); - todo_wine - ok(hr == E_FAIL, "expected E_FAIL, got %#x\n", hr); + ok(hr == E_FAIL, "expected E_FAIL, got %#lx\n", hr); - todo_wine - ok(size == -1, "expected -1, got %d\n", size); + ok(size == -1, "expected -1, got %ld\n", size); offset.QuadPart = 0; @@ -1330,13 +1323,11 @@ static void test_load_save_empty_picture(void) size = -1; hr = IPicture_SaveAsFile(pic, dst_stream, TRUE, &size); - ok(hr == S_OK, "IPicture_SaveasFile error %#x\n", hr); + ok(hr == S_OK, "IPicture_SaveasFile error %#lx\n", hr); - todo_wine - ok(size == -1, "expected -1, got %d\n", size); + ok(size == -1, "expected -1, got %ld\n", size); size = -1; hr = IPicture_SaveAsFile(pic, dst_stream, FALSE, &size); - ok(hr == S_OK, "IPicture_SaveasFile error %#x\n", hr); + ok(hr == S_OK, "IPicture_SaveasFile error %#lx\n", hr); - todo_wine - ok(size == -1, "expected -1, got %d\n", size); + ok(size == -1, "expected -1, got %ld\n", size); hr = IPicture_QueryInterface(pic, &IID_IPersistStream, (void **)&src_stream); -- -2.34.1 +2.35.1 diff --git a/patches/oleaut32-OleLoadPictureFile/0003-oleaut32-Implement-OleLoadPictureFile.patch b/patches/oleaut32-OleLoadPictureFile/0003-oleaut32-Implement-OleLoadPictureFile.patch index a469d88f..deb28e6c 100644 --- a/patches/oleaut32-OleLoadPictureFile/0003-oleaut32-Implement-OleLoadPictureFile.patch +++ b/patches/oleaut32-OleLoadPictureFile/0003-oleaut32-Implement-OleLoadPictureFile.patch @@ -1,18 +1,18 @@ -From c5cb6a3fabbc59568fcd0794473b94ea61127a85 Mon Sep 17 00:00:00 2001 +From eb7f29d66825c454043b3f68594e5b50412300ed Mon Sep 17 00:00:00 2001 From: Dmitry Timoshkov Date: Sun, 27 Mar 2016 16:28:33 +0800 -Subject: oleaut32: Implement OleLoadPictureFile. (v2) +Subject: [PATCH] oleaut32: Implement OleLoadPictureFile. (v2) --- - dlls/oleaut32/olepicture.c | 36 ++++++++++++++++++++------- - dlls/oleaut32/tests/olepicture.c | 53 ++++++++++++++++++++++++++++++++++++++++ + dlls/oleaut32/olepicture.c | 36 ++++++++++++++++------ + dlls/oleaut32/tests/olepicture.c | 53 ++++++++++++++++++++++++++++++++ 2 files changed, 80 insertions(+), 9 deletions(-) diff --git a/dlls/oleaut32/olepicture.c b/dlls/oleaut32/olepicture.c -index 765711d..29a091f 100644 +index 4a478217997..b5c9e8db271 100644 --- a/dlls/oleaut32/olepicture.c +++ b/dlls/oleaut32/olepicture.c -@@ -2315,15 +2315,6 @@ HRESULT WINAPI OleLoadPictureEx( LPSTREAM lpstream, LONG lSize, BOOL fRunmode, +@@ -2387,15 +2387,6 @@ HRESULT WINAPI OleLoadPictureEx( LPSTREAM lpstream, LONG lSize, BOOL fRunmode, return hr; } @@ -28,10 +28,11 @@ index 765711d..29a091f 100644 static HRESULT create_stream(const WCHAR *filename, IStream **stream) { HANDLE hFile; -@@ -2364,6 +2355,33 @@ static HRESULT create_stream(const WCHAR *filename, IStream **stream) +@@ -2435,6 +2426,33 @@ static HRESULT create_stream(const WCHAR *filename, IStream **stream) + return hr; } - /*********************************************************************** ++/*********************************************************************** + * OleLoadPictureFile (OLEAUT32.422) + */ +HRESULT WINAPI OleLoadPictureFile(VARIANT filename, IDispatch **picture) @@ -58,15 +59,14 @@ index 765711d..29a091f 100644 + return hr; +} + -+/*********************************************************************** + /*********************************************************************** * OleSavePictureFile (OLEAUT32.423) */ - HRESULT WINAPI OleSavePictureFile(IDispatch *picture, BSTR filename) diff --git a/dlls/oleaut32/tests/olepicture.c b/dlls/oleaut32/tests/olepicture.c -index 0903298..46cb185 100644 +index 747134e2458..78c2ed5294e 100644 --- a/dlls/oleaut32/tests/olepicture.c +++ b/dlls/oleaut32/tests/olepicture.c -@@ -850,6 +850,7 @@ static void test_OleLoadPicturePath(void) +@@ -958,6 +958,7 @@ static void test_OleLoadPicturePath(void) HANDLE file; DWORD size; WCHAR *ptr; @@ -74,7 +74,7 @@ index 0903298..46cb185 100644 const struct { -@@ -916,6 +917,14 @@ static void test_OleLoadPicturePath(void) +@@ -1024,6 +1025,14 @@ static void test_OleLoadPicturePath(void) if (pic) IPicture_Release(pic); @@ -89,7 +89,7 @@ index 0903298..46cb185 100644 /* Try a DOS path with tacked on "file:". */ hres = OleLoadPicturePath(temp_fileW, NULL, 0, 0, &IID_IPicture, (void **)&pic); ok(hres == S_OK || -@@ -924,6 +933,13 @@ static void test_OleLoadPicturePath(void) +@@ -1032,6 +1041,13 @@ static void test_OleLoadPicturePath(void) if (pic) IPicture_Release(pic); @@ -103,9 +103,9 @@ index 0903298..46cb185 100644 DeleteFileA(temp_file); /* Try with a nonexistent file. */ -@@ -933,12 +949,26 @@ static void test_OleLoadPicturePath(void) +@@ -1041,12 +1057,26 @@ static void test_OleLoadPicturePath(void) broken(hres == E_FAIL), /*Win2k */ - "Expected OleLoadPicturePath to return INET_E_RESOURCE_NOT_FOUND, got 0x%08x\n", hres); + "Expected OleLoadPicturePath to return INET_E_RESOURCE_NOT_FOUND, got 0x%08lx\n", hres); + VariantInit(&var); + V_VT(&var) = VT_BSTR; @@ -118,7 +118,7 @@ index 0903298..46cb185 100644 ok(hres == INET_E_RESOURCE_NOT_FOUND || /* XP+ */ broken(hres == E_UNEXPECTED) || /* NT4 */ broken(hres == E_FAIL), /* Win2k */ - "Expected OleLoadPicturePath to return INET_E_RESOURCE_NOT_FOUND, got 0x%08x\n", hres); + "Expected OleLoadPicturePath to return INET_E_RESOURCE_NOT_FOUND, got 0x%08lx\n", hres); + VariantInit(&var); + V_VT(&var) = VT_BSTR; @@ -130,7 +130,7 @@ index 0903298..46cb185 100644 file = CreateFileA(temp_file, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL); WriteFile(file, bmpimage, sizeof(bmpimage), &size, NULL); -@@ -960,6 +990,13 @@ static void test_OleLoadPicturePath(void) +@@ -1068,6 +1098,13 @@ static void test_OleLoadPicturePath(void) if (pic) IPicture_Release(pic); @@ -144,23 +144,23 @@ index 0903298..46cb185 100644 DeleteFileA(temp_file); /* Try with a nonexistent file. */ -@@ -968,6 +1005,22 @@ static void test_OleLoadPicturePath(void) +@@ -1076,6 +1113,22 @@ static void test_OleLoadPicturePath(void) broken(hres == E_UNEXPECTED) || /* NT4 */ broken(hres == E_FAIL), /* Win2k */ - "Expected OleLoadPicturePath to return INET_E_RESOURCE_NOT_FOUND, got 0x%08x\n", hres); + "Expected OleLoadPicturePath to return INET_E_RESOURCE_NOT_FOUND, got 0x%08lx\n", hres); + + VariantInit(&var); + V_VT(&var) = VT_BSTR; + V_BSTR(&var) = SysAllocString(temp_fileW); + hres = OleLoadPictureFile(var, (IDispatch **)&pic); -+ ok(hres == CTL_E_PATHFILEACCESSERROR, "wrong error %#x\n", hres); ++ ok(hres == CTL_E_PATHFILEACCESSERROR, "wrong error %#lx\n", hres); + VariantClear(&var); + + VariantInit(&var); + V_VT(&var) = VT_INT; + V_INT(&var) = 762; + hres = OleLoadPictureFile(var, (IDispatch **)&pic); -+ ok(hres == CTL_E_FILENOTFOUND, "wrong error %#x\n", hres); ++ ok(hres == CTL_E_FILENOTFOUND, "wrong error %#lx\n", hres); + +if (0) /* crashes under Windows */ + hres = OleLoadPictureFile(var, NULL); @@ -168,5 +168,5 @@ index 0903298..46cb185 100644 static void test_himetric(void) -- -2.7.1 +2.35.1 diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index 2cbbe390..f5270033 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -51,7 +51,7 @@ usage() # Get the upstream commit sha upstream_commit() { - echo "8a52d3e93f5690fd0833c228d54a996a784afad7" + echo "670a1e81b465f67cb7e49fdb84c1fc96853fc9d7" } # Show version information @@ -3291,7 +3291,7 @@ fi # | * [#40262] Correct order of windows messages. # | # | Modified files: -# | * dlls/user32/tests/msg.c, dlls/user32/winpos.c +# | * dlls/user32/tests/msg.c, dlls/user32/winpos.c, dlls/win32u/window.c # | if test "$enable_user32_message_order" -eq 1; then patch_apply user32-message-order/0001-user32-Fix-messages-sent-on-a-window-without-WS_CHIL.patch diff --git a/patches/user32-MessageBox_WS_EX_TOPMOST/0002-user32-MessageBox-should-be-topmost-when-MB_SYSTEMMO.patch b/patches/user32-MessageBox_WS_EX_TOPMOST/0002-user32-MessageBox-should-be-topmost-when-MB_SYSTEMMO.patch index a7aab108..3c737ba3 100644 --- a/patches/user32-MessageBox_WS_EX_TOPMOST/0002-user32-MessageBox-should-be-topmost-when-MB_SYSTEMMO.patch +++ b/patches/user32-MessageBox_WS_EX_TOPMOST/0002-user32-MessageBox-should-be-topmost-when-MB_SYSTEMMO.patch @@ -1,8 +1,8 @@ -From dcbc830fec12f4de0dd759d0ca7e780173d82716 Mon Sep 17 00:00:00 2001 +From d5ce913a6d9dbf9b7fd6026ae78f4f8b5697055e Mon Sep 17 00:00:00 2001 From: Dmitry Timoshkov Date: Thu, 18 Feb 2016 10:22:29 +0800 -Subject: user32: MessageBox should be topmost when MB_SYSTEMMODAL style is - set. +Subject: [PATCH] user32: MessageBox should be topmost when MB_SYSTEMMODAL + style is set. --- dlls/user32/msgbox.c | 4 ++-- @@ -10,25 +10,25 @@ Subject: user32: MessageBox should be topmost when MB_SYSTEMMODAL style is 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/dlls/user32/msgbox.c b/dlls/user32/msgbox.c -index 2ba98c9..e5dc120 100644 +index 195bab2384b..31285ab11fa 100644 --- a/dlls/user32/msgbox.c +++ b/dlls/user32/msgbox.c -@@ -313,8 +313,8 @@ static void MSGBOX_OnInit(HWND hwnd, LPMSGBOXPARAMSW lpmb) +@@ -310,8 +310,8 @@ static void MSGBOX_OnInit(HWND hwnd, LPMSGBOXPARAMSW lpmb) } /*handle modal message boxes*/ - if (((lpmb->dwStyle & MB_TASKMODAL) && (lpmb->hwndOwner==NULL)) || (lpmb->dwStyle & MB_SYSTEMMODAL)) -- SetWindowPos(hwnd, HWND_TOP, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE); +- NtUserSetWindowPos( hwnd, HWND_TOP, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE ); + if (lpmb->dwStyle & MB_SYSTEMMODAL) -+ SetWindowPos(hwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE); ++ NtUserSetWindowPos(hwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE); HeapFree( GetProcessHeap(), 0, buffer ); } diff --git a/dlls/user32/tests/dialog.c b/dlls/user32/tests/dialog.c -index e80b581..24a549f 100644 +index 83a9efe0a24..4ac5b88717f 100644 --- a/dlls/user32/tests/dialog.c +++ b/dlls/user32/tests/dialog.c -@@ -1551,7 +1551,6 @@ static void test_MessageBox(void) +@@ -2241,7 +2241,6 @@ static void test_MessageBox(void) hwnd = wait_for_window(params.caption); ex_style = GetWindowLongA(hwnd, GWL_EXSTYLE); @@ -36,7 +36,7 @@ index e80b581..24a549f 100644 ok((ex_style & WS_EX_TOPMOST) == test[i].ex_style, "%d: got window ex_style %#x\n", i, ex_style); PostMessageA(hwnd, WM_COMMAND, IDCANCEL, 0); -@@ -1573,7 +1572,6 @@ static void test_MessageBox(void) +@@ -2263,7 +2262,6 @@ static void test_MessageBox(void) hwnd = wait_for_window(params.caption); ex_style = GetWindowLongA(hwnd, GWL_EXSTYLE); @@ -45,5 +45,5 @@ index e80b581..24a549f 100644 PostMessageA(hwnd, WM_COMMAND, IDCANCEL, 0); -- -2.7.1 +2.35.1 diff --git a/patches/user32-message-order/0001-user32-Fix-messages-sent-on-a-window-without-WS_CHIL.patch b/patches/user32-message-order/0001-user32-Fix-messages-sent-on-a-window-without-WS_CHIL.patch index 42548c2e..fbff8f1b 100644 --- a/patches/user32-message-order/0001-user32-Fix-messages-sent-on-a-window-without-WS_CHIL.patch +++ b/patches/user32-message-order/0001-user32-Fix-messages-sent-on-a-window-without-WS_CHIL.patch @@ -1,4 +1,4 @@ -From 93abf7b468f93d525ef47754737496a11facaec4 Mon Sep 17 00:00:00 2001 +From d0087c1c1d68b0bda581ca9a394d8b980dd7a430 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20Iv=C4=83ncescu?= Date: Wed, 16 Sep 2020 17:35:09 +0300 Subject: [PATCH] user32: Fix messages sent on a window without WS_CHILD, but @@ -17,15 +17,16 @@ This also fixes a TODO message sequence, so that Wine matches Windows. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=40262 Signed-off-by: Gabriel Ivăncescu --- - dlls/user32/tests/msg.c | 3 ++- - dlls/user32/winpos.c | 11 +++++++---- - 2 files changed, 9 insertions(+), 5 deletions(-) + dlls/user32/tests/msg.c | 3 ++- + dlls/user32/winpos.c | 4 ++-- + dlls/win32u/window.c | 7 +++++-- + 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/dlls/user32/tests/msg.c b/dlls/user32/tests/msg.c -index c6f2bc38c6c..9164f57fdc2 100644 +index 4e2d39dff10..f28b1151c4d 100644 --- a/dlls/user32/tests/msg.c +++ b/dlls/user32/tests/msg.c -@@ -17117,6 +17117,7 @@ static const struct message WmSetParentSeq_2[] = { +@@ -17118,6 +17118,7 @@ static const struct message WmSetParentSeq_2[] = { { HCBT_ACTIVATE, hook|optional }, { EVENT_SYSTEM_FOREGROUND, winevent_hook|wparam|lparam|optional, 0, 0 }, { WM_WINDOWPOSCHANGING, sent|wparam|optional, SWP_NOSIZE|SWP_NOMOVE }, @@ -33,7 +34,7 @@ index c6f2bc38c6c..9164f57fdc2 100644 { WM_NCACTIVATE, sent|wparam|optional, 1 }, { WM_ACTIVATE, sent|wparam|optional, 1 }, { HCBT_SETFOCUS, hook|optional }, -@@ -17187,7 +17188,7 @@ static void test_SetParent(void) +@@ -17188,7 +17189,7 @@ static void test_SetParent(void) SetParent(popup, child); flush_events(); @@ -43,10 +44,10 @@ index c6f2bc38c6c..9164f57fdc2 100644 ok(GetWindowLongA(popup, GWL_STYLE) & WS_VISIBLE, "WS_VISIBLE should be set\n"); ok(!IsWindowVisible(popup), "IsWindowVisible() should return FALSE\n"); diff --git a/dlls/user32/winpos.c b/dlls/user32/winpos.c -index 3238d0c1b50..b0a4fac958a 100644 +index b3e8aff3cfa..eaa965fdbee 100644 --- a/dlls/user32/winpos.c +++ b/dlls/user32/winpos.c -@@ -1029,8 +1029,8 @@ static BOOL show_window( HWND hwnd, INT cmd ) +@@ -983,8 +983,8 @@ static BOOL show_window( HWND hwnd, INT cmd ) } swp = new_swp; @@ -57,19 +58,23 @@ index 3238d0c1b50..b0a4fac958a 100644 { /* if parent is not visible simply toggle WS_VISIBLE and return */ if (showFlag) WIN_SetStyle( hwnd, WS_VISIBLE, 0 ); -@@ -1849,8 +1849,11 @@ static BOOL fixup_flags( WINDOWPOS *winpos, const RECT *old_window_rect, int par +diff --git a/dlls/win32u/window.c b/dlls/win32u/window.c +index c9801ff8870..71b75445efa 100644 +--- a/dlls/win32u/window.c ++++ b/dlls/win32u/window.c +@@ -2315,8 +2315,11 @@ static BOOL fixup_swp_flags( WINDOWPOS *winpos, const RECT *old_window_rect, int if (winpos->cy < 0) winpos->cy = 0; else if (winpos->cy > 32767) winpos->cy = 32767; - parent = NtUserGetAncestor( winpos->hwnd, GA_PARENT ); -- if (!IsWindowVisible( parent )) winpos->flags |= SWP_NOREDRAW; -+ if (wndPtr->dwStyle & WS_CHILD) +- if (!is_window_visible( parent )) winpos->flags |= SWP_NOREDRAW; ++ if (win->dwStyle & WS_CHILD) + { + parent = NtUserGetAncestor( winpos->hwnd, GA_PARENT ); -+ if (!IsWindowVisible( parent )) winpos->flags |= SWP_NOREDRAW; ++ if (!is_window_visible( parent )) winpos->flags |= SWP_NOREDRAW; + } - if (wndPtr->dwStyle & WS_VISIBLE) winpos->flags &= ~SWP_SHOWWINDOW; + if (win->dwStyle & WS_VISIBLE) winpos->flags &= ~SWP_SHOWWINDOW; else -- 2.35.1 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 422b615d..9b260d88 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,4 +1,4 @@ -From 35cc5818d0a0fcd086e0a67de86f0494cc7bb0de Mon Sep 17 00:00:00 2001 +From 54cf4c24f3c032fa3200fb6b5835cb7b4dd3cba4 Mon Sep 17 00:00:00 2001 From: Dmitry Timoshkov Date: Wed, 10 Feb 2016 15:09:29 +0800 Subject: [PATCH] winex11.drv: Add support for _NET_ACTIVE_WINDOW. (v2) @@ -18,30 +18,30 @@ For bug #2155. 8 files changed, 69 insertions(+) diff --git a/dlls/user32/driver.c b/dlls/user32/driver.c -index 3f487ce72d8..b4ae4783a91 100644 +index 0523da699d4..aa2fae2fd26 100644 --- a/dlls/user32/driver.c +++ b/dlls/user32/driver.c -@@ -91,6 +91,10 @@ static DWORD CDECL nulldrv_MsgWaitForMultipleObjectsEx( DWORD count, const HANDL - timeout, flags & MWMO_ALERTABLE ); +@@ -95,6 +95,10 @@ static void CDECL nulldrv_SetWindowIcon( HWND hwnd, UINT type, HICON icon ) + { } +static void CDECL nulldrv_SetLayeredWindowAttributes( HWND hwnd, COLORREF key, BYTE alpha, DWORD flags ) +{ +} + - static void CDECL nulldrv_SetParent( HWND hwnd, HWND parent, HWND old_parent ) + static void CDECL nulldrv_SetWindowStyle( HWND hwnd, INT offset, STYLESTRUCT *style ) { } -@@ -196,6 +200,7 @@ static struct user_driver_funcs lazy_load_driver = +@@ -192,6 +196,7 @@ static struct user_driver_funcs lazy_load_driver = NULL, NULL, NULL, + nulldrv_SetLayeredWindowAttributes, - nulldrv_SetParent, + NULL, NULL, nulldrv_SetWindowIcon, diff --git a/dlls/win32u/driver.c b/dlls/win32u/driver.c -index a7822fef746..452e733755c 100644 +index 52aee36c029..6b6cc1fe7dd 100644 --- a/dlls/win32u/driver.c +++ b/dlls/win32u/driver.c @@ -842,6 +842,10 @@ static BOOL CDECL nulldrv_ScrollDC( HDC hdc, INT dx, INT dy, HRGN update ) @@ -55,7 +55,7 @@ index a7822fef746..452e733755c 100644 static void CDECL nulldrv_SetCapture( HWND hwnd, UINT flags ) { } -@@ -1260,6 +1264,7 @@ void CDECL __wine_set_display_driver( struct user_driver_funcs *driver, UINT ver +@@ -1261,6 +1265,7 @@ void CDECL __wine_set_display_driver( struct user_driver_funcs *driver, UINT ver SET_USER_FUNC(MsgWaitForMultipleObjectsEx); SET_USER_FUNC(ReleaseDC); SET_USER_FUNC(ScrollDC); @@ -198,7 +198,7 @@ index 4c63d5b3b06..58b31acaa28 100644 "_NET_STARTUP_INFO", "_NET_SUPPORTED", diff --git a/include/wine/gdi_driver.h b/include/wine/gdi_driver.h -index 560c21b18c1..88319342506 100644 +index 23bd1e9d8cf..a7c0d898d5a 100644 --- a/include/wine/gdi_driver.h +++ b/include/wine/gdi_driver.h @@ -300,6 +300,7 @@ struct user_driver_funcs diff --git a/staging/upstream-commit b/staging/upstream-commit index 6a8d0465..6561be22 100644 --- a/staging/upstream-commit +++ b/staging/upstream-commit @@ -1 +1 @@ -8a52d3e93f5690fd0833c228d54a996a784afad7 +670a1e81b465f67cb7e49fdb84c1fc96853fc9d7