=?UTF-8?Q?Gabriel=20Iv=C4=83ncescu=20?=: shell32/autocomplete: Use the same font for the AutoComplete listbox as the edit control.

Alexandre Julliard julliard at winehq.org
Thu Sep 27 18:25:13 CDT 2018


Module: wine
Branch: master
Commit: d8de5fe47dbbd2bd542f5b2cbdd0230a94bff286
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=d8de5fe47dbbd2bd542f5b2cbdd0230a94bff286

Author: Gabriel Ivăncescu <gabrielopcode at gmail.com>
Date:   Thu Sep 27 00:35:21 2018 +0300

shell32/autocomplete: Use the same font for the AutoComplete listbox as the edit control.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode at gmail.com>
Signed-off-by: Huw Davies <huw at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/shell32/autocomplete.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/dlls/shell32/autocomplete.c b/dlls/shell32/autocomplete.c
index fe5bba2..9acd3f4 100644
--- a/dlls/shell32/autocomplete.c
+++ b/dlls/shell32/autocomplete.c
@@ -384,6 +384,10 @@ static LRESULT APIENTRY ACEditSubclassProc(HWND hwnd, UINT uMsg, WPARAM wParam,
             ret = CallWindowProcW(This->wpOrigEditProc, hwnd, uMsg, wParam, lParam);
             autocomplete_text(This, hwnd, autoappend_flag_yes);
             return ret;
+        case WM_SETFONT:
+            if (This->hwndListBox)
+                SendMessageW(This->hwndListBox, WM_SETFONT, wParam, lParam);
+            break;
         case WM_DESTROY:
         {
             WNDPROC proc = This->wpOrigEditProc;
@@ -434,9 +438,16 @@ static void create_listbox(IAutoCompleteImpl *This)
                                     0, 0, 0, 0, GetParent(This->hwndEdit), NULL, shell32_hInstance, NULL);
 
     if (This->hwndListBox) {
+        HFONT edit_font;
+
         This->wpOrigLBoxProc = (WNDPROC) SetWindowLongPtrW( This->hwndListBox, GWLP_WNDPROC, (LONG_PTR) ACLBoxSubclassProc);
         SetWindowLongPtrW( This->hwndListBox, GWLP_USERDATA, (LONG_PTR)This);
         SetParent(This->hwndListBox, HWND_DESKTOP);
+
+        /* Use the same font as the edit control, as it gets destroyed before it anyway */
+        edit_font = (HFONT)SendMessageW(This->hwndEdit, WM_GETFONT, 0, 0);
+        if (edit_font)
+            SendMessageW(This->hwndListBox, WM_SETFONT, (WPARAM)edit_font, FALSE);
     }
     else
         This->options &= ~ACO_AUTOSUGGEST;




More information about the wine-cvs mailing list