[PATCH 2/6] user32/msg: Add test for combo with disabled edit control showing usage of WM_CTLCOLORSTATIC
Fabian Maurer
dark.shadow4 at web.de
Sat Sep 21 13:35:04 CDT 2019
Signed-off-by: Fabian Maurer <dark.shadow4 at web.de>
---
dlls/user32/tests/msg.c | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)
diff --git a/dlls/user32/tests/msg.c b/dlls/user32/tests/msg.c
index 2766e7f5fb..37fdc797fe 100644
--- a/dlls/user32/tests/msg.c
+++ b/dlls/user32/tests/msg.c
@@ -7291,6 +7291,13 @@ static const struct message WMSetFocusComboBoxSeq[] =
{ 0 }
};
+static const struct message WMEditReadonlyComboBoxSeq[] =
+{
+ { WM_CTLCOLORSTATIC, sent },
+ { WM_CTLCOLORSTATIC, sent|optional }, /* Not sent by wine */
+ { 0 }
+};
+
static const struct message SetFocusButtonSeq[] =
{
{ WM_KILLFOCUS, sent },
@@ -7587,6 +7594,30 @@ static void test_combobox_messages(void)
DestroyWindow(combo);
DestroyWindow(parent);
+
+ /* Test what happens when we use EM_SETREADONLY on the edit control */
+ parent = CreateWindowExA(0, "TestParentClass", "Parent", WS_OVERLAPPEDWINDOW | WS_VISIBLE,
+ 10, 10, 300, 300, NULL, NULL, NULL, NULL);
+ ok(parent != 0, "Failed to create parent window\n");
+
+ combo = CreateWindowExA(0, "my_combobox_class", "test", WS_CHILD | WS_VISIBLE | CBS_DROPDOWN,
+ 5, 5, 100, 100, parent, (HMENU)ID_COMBOBOX, NULL, NULL);
+ ok(combo != 0, "Failed to create combobox window\n");
+ UpdateWindow(combo);
+
+ cbInfo.cbSize = sizeof(COMBOBOXINFO);
+ SetLastError(0xdeadbeef);
+ res = GetComboBoxInfo(combo, &cbInfo);
+ ok(res, "Failed to get COMBOBOXINFO structure; LastError: %u\n", GetLastError());
+
+ SendMessageA(cbInfo.hwndItem, EM_SETREADONLY, (WPARAM)TRUE, 0);
+
+ flush_sequence();
+ UpdateWindow(combo);
+ ok_sequence(WMEditReadonlyComboBoxSeq, "Setting edit control readonly.", FALSE);
+
+ DestroyWindow(combo);
+ DestroyWindow(parent);
}
/****************** WM_IME_KEYDOWN message test *******************/
--
2.23.0
More information about the wine-devel
mailing list