Added patch to avoid forcing a combobox repaint on WM_SIZE.

This commit is contained in:
Sebastian Lackner 2016-12-12 06:57:32 +01:00
parent aeb8488db7
commit 206ef39564
3 changed files with 48 additions and 0 deletions

View File

@ -319,6 +319,7 @@ patch_enable_all ()
enable_taskmgr_Memory_Usage="$1"
enable_user_exe16_CONTAINING_RECORD="$1"
enable_user_exe16_DlgDirList="$1"
enable_user32_Combobox_WM_SIZE="$1"
enable_user32_DM_SETDEFID="$1"
enable_user32_DeferWindowPos="$1"
enable_user32_DialogBoxParam="$1"
@ -1135,6 +1136,9 @@ patch_enable ()
user.exe16-DlgDirList)
enable_user_exe16_DlgDirList="$2"
;;
user32-Combobox_WM_SIZE)
enable_user32_Combobox_WM_SIZE="$2"
;;
user32-DM_SETDEFID)
enable_user32_DM_SETDEFID="$2"
;;
@ -6712,6 +6716,21 @@ if test "$enable_user_exe16_DlgDirList" -eq 1; then
) >> "$patchlist"
fi
# Patchset user32-Combobox_WM_SIZE
# |
# | This patchset fixes the following Wine bugs:
# | * [#41404] Don't force a combobox repaint on WM_SIZE
# |
# | Modified files:
# | * dlls/user32/combo.c
# |
if test "$enable_user32_Combobox_WM_SIZE" -eq 1; then
patch_apply user32-Combobox_WM_SIZE/0001-user32-Don-t-force-a-combobox-repaint-on-WM_SIZE.patch
(
echo '+ { "Dmitry Timoshkov", "user32: Don'\''t force a combobox repaint on WM_SIZE.", 1 },';
) >> "$patchlist"
fi
# Patchset user32-DM_SETDEFID
# |
# | This patchset fixes the following Wine bugs:

View File

@ -0,0 +1,28 @@
From e680be170761fdbfb3c9bc5ee51a5f6002e586ca Mon Sep 17 00:00:00 2001
From: Dmitry Timoshkov <dmitry@baikal.ru>
Date: Wed, 7 Dec 2016 16:10:31 +0800
Subject: user32: Don't force a combobox repaint on WM_SIZE.
This breaks z-order based painting and causes side effects for
applications that during the WM_PAINT processing reference internal
data associated with a not fully initialized window.
---
dlls/user32/combo.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/user32/combo.c b/dlls/user32/combo.c
index a2e8b3c..501bfe8 100644
--- a/dlls/user32/combo.c
+++ b/dlls/user32/combo.c
@@ -1558,7 +1558,7 @@ static void COMBO_Size( LPHEADCOMBO lphc )
&lphc->buttonRect,
&lphc->droppedRect);
- CBResetPos( lphc, &lphc->textRect, &lphc->droppedRect, TRUE );
+ CBResetPos( lphc, &lphc->textRect, &lphc->droppedRect, FALSE );
}
--
2.9.0

View File

@ -0,0 +1 @@
Fixes: [41404] Don't force a combobox repaint on WM_SIZE