https://git.reactos.org/?p=reactos.git;a=commitdiff;h=b59bf8a3f40a12061157c2b9548fc06921358b44

commit b59bf8a3f40a12061157c2b9548fc06921358b44
Author:     Katayama Hirofumi MZ <katayama.hirofumi...@gmail.com>
AuthorDate: Wed Jan 3 08:45:24 2024 +0900
Commit:     GitHub <nore...@github.com>
CommitDate: Wed Jan 3 08:45:24 2024 +0900

    [COMCTL32][USER32] ComboBox: Don't close listbox on letter type (#6227)
    
    Based on KRosUser's combo_v3.patch.
    JIRA issue: CORE-16376
    - Set CBF_NOROLLUP flag on (WM_CHAR or
      WM_IME_CHAR) and CBF_DROPPED state.
---
 dll/win32/comctl32/combo.c           | 4 ++++
 win32ss/user/user32/controls/combo.c | 4 ++++
 2 files changed, 8 insertions(+)

diff --git a/dll/win32/comctl32/combo.c b/dll/win32/comctl32/combo.c
index 62c2d4138a2..0c67b2ee729 100644
--- a/dll/win32/comctl32/combo.c
+++ b/dll/win32/comctl32/combo.c
@@ -1918,6 +1918,10 @@ static LRESULT CALLBACK COMBO_WindowProc( HWND hwnd, 
UINT message, WPARAM wParam
         {
             HWND hwndTarget;
 
+#ifdef __REACTOS__
+            if (lphc->wState & CBF_DROPPED)
+                lphc->wState |= CBF_NOROLLUP;
+#endif
             if ( lphc->wState & CBF_EDIT )
                 hwndTarget = lphc->hWndEdit;
             else
diff --git a/win32ss/user/user32/controls/combo.c 
b/win32ss/user/user32/controls/combo.c
index b29d5a36efb..c118b314233 100644
--- a/win32ss/user/user32/controls/combo.c
+++ b/win32ss/user/user32/controls/combo.c
@@ -2017,6 +2017,10 @@ LRESULT WINAPI ComboWndProc_common( HWND hwnd, UINT 
message, WPARAM wParam, LPAR
         {
             HWND hwndTarget;
 
+#ifdef __REACTOS__
+            if (lphc->wState & CBF_DROPPED)
+                lphc->wState |= CBF_NOROLLUP;
+#endif
             if ( lphc->wState & CBF_EDIT )
                 hwndTarget = lphc->hWndEdit;
             else

Reply via email to