Added patch to fix handling of ShowWindow when window is already visible.

This commit is contained in:
Sebastian Lackner 2017-04-28 15:30:12 +02:00
parent bf3ff21ed7
commit c00520d3f8
3 changed files with 47 additions and 0 deletions

View File

@ -373,6 +373,7 @@ patch_enable_all ()
enable_user32_PNG_Support="$1"
enable_user32_Refresh_MDI_Menus="$1"
enable_user32_ScrollWindowEx="$1"
enable_user32_ShowWindow="$1"
enable_user32_Sorted_Listbox="$1"
enable_user32_WM_MEASUREITEM="$1"
enable_user32_lpCreateParams="$1"
@ -1343,6 +1344,9 @@ patch_enable ()
user32-ScrollWindowEx)
enable_user32_ScrollWindowEx="$2"
;;
user32-ShowWindow)
enable_user32_ShowWindow="$2"
;;
user32-Sorted_Listbox)
enable_user32_Sorted_Listbox="$2"
;;
@ -7793,6 +7797,21 @@ if test "$enable_user32_ScrollWindowEx" -eq 1; then
) >> "$patchlist"
fi
# Patchset user32-ShowWindow
# |
# | This patchset fixes the following Wine bugs:
# | * [#39731] Fix handling of ShowWindow when window is already visible
# |
# | Modified files:
# | * dlls/user32/winpos.c
# |
if test "$enable_user32_ShowWindow" -eq 1; then
patch_apply user32-ShowWindow/0001-user32-ShowWindow-should-not-send-message-when-windo.patch
(
printf '%s\n' '+ { "Kimmo Myllyvirta", "user32: ShowWindow should not send message when window is already visible.", 1 },';
) >> "$patchlist"
fi
# Patchset user32-WM_MEASUREITEM
# |
# | This patchset fixes the following Wine bugs:

View File

@ -0,0 +1,27 @@
From 33f637536046687bc533370397ed7fc704eaa0e2 Mon Sep 17 00:00:00 2001
From: Kimmo Myllyvirta <kimmo.myllyvirta@gmail.com>
Date: Fri, 28 Apr 2017 15:28:55 +0200
Subject: user32: ShowWindow should not send message when window is already
visible.
---
dlls/user32/winpos.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/dlls/user32/winpos.c b/dlls/user32/winpos.c
index c2b35ec1f5..64fdfe01b0 100644
--- a/dlls/user32/winpos.c
+++ b/dlls/user32/winpos.c
@@ -1239,6 +1239,9 @@ BOOL WINAPI ShowWindow( HWND hwnd, INT cmd )
if ((cmd == SW_HIDE) && !(GetWindowLongW( hwnd, GWL_STYLE ) & WS_VISIBLE))
return FALSE;
+ if ((cmd == SW_SHOW) && (GetWindowLongW( hwnd, GWL_STYLE ) & WS_VISIBLE))
+ return TRUE;
+
return SendMessageW( hwnd, WM_WINE_SHOWWINDOW, cmd, 0 );
}
--
2.12.2

View File

@ -0,0 +1 @@
Fixes: [39731] Fix handling of ShowWindow when window is already visible