Commit graph

4847 commits

Author SHA1 Message Date
Rémi Bernon
fa56a363b1 comctl32/edit: Delegate composition string rendering to the IME UI.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53860
2023-05-15 06:09:54 -05:00
Rémi Bernon
e2cd4dcf8b comctl32/edit: Notify IME on caret position, format_rect and font changes.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53860
2023-05-15 06:09:54 -05:00
Alex Henrie
231199bc46 comctl32/treeview: Ignore the lParam to WM_PRINTCLIENT and add tests.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54640
2023-03-17 11:48:09 +01:00
Rémi Bernon
078c6e5ab2 comctl32: Skip restoring window proc if it has been modified.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=43073
2023-02-01 17:12:31 +01:00
Rémi Bernon
8387d2feff comctl32: Always use unicode messages for subclass procedures.
Final Fantasy XIV Online depends on this for its text input.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=43073
2023-02-01 17:12:29 +01:00
Rémi Bernon
591f585a55 comctl32: Save unicode window nature on SetWindowSubclass call.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=43073
2023-02-01 17:12:29 +01:00
Rémi Bernon
711f05c432 comctl32/tests: Test unicode nature of window subclasses.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=43073
2023-02-01 17:12:29 +01:00
Nikolay Sivov
32bfaeb3f9 comctl32/header: Do not touch 'hwnd' field in HDM_LAYOUT.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-01-26 22:05:13 +01:00
Zhiyi Zhang
1f1f99025d comctl32/listview: Repaint when changing view styles.
Changing listview view styles should repaint according to the tests in test_WM_STYLECHANGED().

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54215
2023-01-24 18:13:32 +01:00
Zhiyi Zhang
cc84be8d89 comctl32/tests: Add WM_STYLECHANGED tests for changing listview view styles.
Changing view styles should repaint listviews according to the newly added tests.
2023-01-24 18:13:30 +01:00
Rémi Bernon
0bb029eb59 comctl32: Avoid mismatching heap in ProgressWindowProc.
When free-ing an Alloc-ed pointer.
2023-01-13 19:37:01 +01:00
Eric Pouech
ee5cdea922 comctl32/tests: Fix failing WM_PASTE tests for edit control on Win10+.
There are cases in Windows10+ where the WM_PASTE message doesn't paste
the content of the clipboard.

This appeared in testing:
- almost always just after (for a couple of milliseconds) setting new
  content into the clipboard and closing it.
- in some unrelated rare occasions (like once for 400 runs).

It looks like another (installed) process had opened the clipboard and
forbids the paste command.
As WM_PASTE doesn't return success/error status, workaround it by
wrapping the WM_PASTE command into a helper, and retry when the
clipboard's content hasn't been pasted.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53276
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53277
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2023-01-09 16:44:08 +01:00
Eric Pouech
e9a32c6a8d comctl32/tests: Retry when opening the clipboard.
As the clipboard is a shared resource, we cannot expect that
no other app hasn't openeded it.
So wrap clipboard access with a retry feature in case of failure.

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2023-01-09 16:44:08 +01:00
Nikolay Sivov
136a576d8c comctl32/tests: Ignore some IME messages in monthcal tests. 2023-01-06 13:39:45 +01:00
Vladislav Timonin
b3ab1f8fb3 comctl32/listview: Exclude header area in WM_NCPAINT.
An improvement of 5f0dcf7918,
which, depending on theme, had an issue with
drawing the top border clipped inside the header.
2023-01-06 13:39:45 +01:00
Eric Pouech
0d8b477b1f comctl32/test: Adapt the edit tests for height to Win10+.
Starting with Win10, height of multiline edit controls no longer seems
to be hardwired to a multiple of the font height (when larger than
font height).

- Adapt the tests accordingly (detecting how to compute the expected
  height of a control).
- Extend the ranges of the tested heights.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52152
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2023-01-06 10:43:20 +01:00
Eric Pouech
e439373f59 comctl32/tests: Fix failing test on Windows in Arabic UTF-8.
Already fixed in user32/tests/edit.c by
614b7d7430

Apply same fix for equivalent test on comctl32/tests/edit.c

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52932
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2023-01-06 10:42:48 +01:00
Nikolay Sivov
df65aee926 comctl32: Switch back to internal allocation function.
We are still using exported string functions internally,
and that caused mismatches after recent incomplete switching to crt functions.

There is also no evidence that crt functions are used at all there,
so for now switch back to fix mismatching calls.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-12-09 17:52:25 +01:00
Alexandre Julliard
c63f485379 include: Use proper dllimports for comctl32 functions. 2022-12-07 13:51:37 +01:00
Alex Henrie
9aaf04687a comctl32: Annotate (Re)Alloc with __WINE_(DEALLOC|MALLOC). 2022-12-05 20:04:54 +01:00
Nikolay Sivov
0002cb89ec comctl32/listview: Use CRT allocation functions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-11-30 10:55:24 +01:00
Nikolay Sivov
aa98d43c45 comctl32/button: Use CRT allocation functions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-11-30 10:55:23 +01:00
Nikolay Sivov
7ef99635fb comctl32/static: Use CRT allocation functions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-11-30 10:55:21 +01:00
Nikolay Sivov
a1f4a2d13a comctl32/monthcal: Use CRT allocation functions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-11-30 10:55:20 +01:00
Nikolay Sivov
8fe1c2282e comctl32/header: Use CRT allocation functions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-11-30 10:55:18 +01:00
Alex Henrie
5fe082172d comctl32: Use standard C functions for memory allocation in edit.c. 2022-11-29 19:11:18 +01:00
Nikolay Sivov
644143d553 comctl32/hotkey: Use CRT allocation functions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-11-22 18:27:31 +01:00
Nikolay Sivov
389f961bc5 comctl32/ipaddress: Use CRT allocation functions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-11-22 18:27:31 +01:00
Nikolay Sivov
40c9966efe comctl32/progress: Use CRT allocation functions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-11-22 18:27:31 +01:00
Nikolay Sivov
25ad6d7594 comctl32/treeview: Use CRT allocation functions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-11-22 18:27:31 +01:00
Nikolay Sivov
fca468beb4 comctl32/updown: Use CRT allocation functions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-11-22 18:27:30 +01:00
Nikolay Sivov
a79b761cdd comctl32/pager: Use CRT allocation functions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-11-22 18:27:30 +01:00
Nikolay Sivov
80de410139 comctl32/animate: Use CRT allocation functions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-11-22 18:27:30 +01:00
Eric Pouech
190fbc7500 comctl32/tests: Fix monthcal selection tests.
Changed MCHITTESTINFO.cbSize to fall back to V1:
  From the rest of the tests, it looks like the extended size
  of MCHITTESTINFO requires loading common controls V6, which is
  only done afterwards in the tests.

Improved lookup of an unselected day.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50097
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-11-21 12:58:35 +01:00
Alex Henrie
0b09db5902 comctl32: Fix memory leak on error path in EDIT_MakeUndoFit. 2022-11-15 18:05:07 +01:00
Rémi Bernon
d7538e339c comctl32/tests: Remove a now succeeding todo_wine.
Fixed by 33617af814.
2022-11-07 21:13:32 +01:00
Nikolay Sivov
fed0c33fe0 comctl32/edit: Check for control destruction on notification return.
Based on a patch by Mark Jansen.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-11-07 21:13:31 +01:00
Jinoh Kang
b6a41a2f98 comctl32/tests: Flush events before testing edit control IME messages. 2022-11-07 21:13:31 +01:00
Jinoh Kang
7a772a7feb comctl32/tests: Flush events before testing edit control SetFocus() messages. 2022-11-07 21:13:31 +01:00
Zhiyi Zhang
398cb9595a comctl32/button: Initialize dtFlags in PB_Paint().
Fix an uninitialized variable warning.
2022-11-02 14:39:30 +01:00
Piotr Caban
ebe35f6f0a comctl32: Add support for adding extra data in CreatePropertySheetPage. 2022-10-26 15:03:05 +02:00
Piotr Caban
cae20edb0b comctl32: Fix PROPSHEETPAGE[AW] structure content in messages and callbacks. 2022-10-26 15:03:05 +02:00
Piotr Caban
eb5a4f2160 comctl32: Don't use PROPSHEETPAGE structure to store internal HPROPSHEETPAGE data. 2022-10-26 15:03:05 +02:00
Piotr Caban
fc767fd589 comctl32: Create page if PROPSHEETPAGE was passed as HPROPSHEETPAGE to PropertySheetAW or PSM_INSERTPAGE. 2022-10-26 15:03:05 +02:00
Zhiyi Zhang
4277b47f3e comctl32/tests: Use a toolbar with TBSTYLE_FLAT in toolbar visual tests.
Fix a test failure when theming is off. A toolbar without TBSTYLE_FLAT will fill its checked button
background rectangle when theming is inactive, overwriting the checked pattern required for the test.
2022-10-20 20:57:19 +02:00
Zhiyi Zhang
cacb60cb6d comctl32/updown: Don't repaint when handling WM_STYLECHANGED. 2022-10-19 18:50:17 +02:00
Zhiyi Zhang
b7624fb4ed comctl32/tab: Don't repaint when handling WM_STYLECHANGED. 2022-10-19 18:50:16 +02:00
Zhiyi Zhang
ff514c1104 comctl32/syslink: Don't repaint when handling WM_STYLECHANGED. 2022-10-19 18:50:14 +02:00
Zhiyi Zhang
5267d32d67 comctl32/datetime: Don't repaint when handling WM_STYLECHANGED. 2022-10-19 18:50:13 +02:00
Zhiyi Zhang
07685c37aa comctl32/animate: Don't repaint when handling WM_STYLECHANGED. 2022-10-19 18:50:11 +02:00