[PATCH v2 1/2] comctl32: Redraw children when the combo box is dropped down.
Some applications subclass the combo box and handle WM_ERASEBKGND themselves, without using WS_CLIPCHILDREN. This causes them to erase over the editbox child, so it requires a refresh as well. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=22260 Signed-off-by: Gabriel Ivăncescu <gabrielopcode(a)gmail.com> --- dlls/comctl32/combo.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/dlls/comctl32/combo.c b/dlls/comctl32/combo.c index 4208ff8..2f3652c 100644 --- a/dlls/comctl32/combo.c +++ b/dlls/comctl32/combo.c @@ -1003,8 +1003,7 @@ static void CBDropDown( LPHEADCOMBO lphc ) if( !(lphc->wState & CBF_NOREDRAW) ) - RedrawWindow( lphc->self, NULL, 0, RDW_INVALIDATE | - RDW_ERASE | RDW_UPDATENOW | RDW_NOCHILDREN ); + RedrawWindow( lphc->self, NULL, 0, RDW_INVALIDATE | RDW_ERASE | RDW_UPDATENOW ); EnableWindow( lphc->hWndLBox, TRUE ); if (GetCapture() != lphc->self) -- 2.31.1
Some applications subclass the combo box and handle WM_ERASEBKGND themselves, without using WS_CLIPCHILDREN. This causes them to erase over the editbox child, so it requires a refresh as well. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=22260 Signed-off-by: Gabriel Ivăncescu <gabrielopcode(a)gmail.com> --- dlls/user32/combo.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/dlls/user32/combo.c b/dlls/user32/combo.c index 1b53a2d..aeb7fa0 100644 --- a/dlls/user32/combo.c +++ b/dlls/user32/combo.c @@ -1003,8 +1003,7 @@ static void CBDropDown( LPHEADCOMBO lphc ) if( !(lphc->wState & CBF_NOREDRAW) ) - RedrawWindow( lphc->self, NULL, 0, RDW_INVALIDATE | - RDW_ERASE | RDW_UPDATENOW | RDW_NOCHILDREN ); + RedrawWindow( lphc->self, NULL, 0, RDW_INVALIDATE | RDW_ERASE | RDW_UPDATENOW ); EnableWindow( lphc->hWndLBox, TRUE ); if (GetCapture() != lphc->self) -- 2.31.1
Hi, While running your changed tests, I think I found new failures. Being a bot and all I'm not very good at pattern recognition, so I might be wrong, but could you please double-check? Full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=101831 Your paranoid android. === debiant2 (32 bit Chinese:China report) === user32: msg.c:15143: Test failed: bad time 7c5c609
participants (2)
-
Gabriel Ivăncescu -
Marvin