Commit Graph

2412 Commits

Author SHA1 Message Date
Alexandre Julliard 8865f4a4ec user32: Synthesize text clipboard formats on the user32 side.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-07 00:34:24 +09:00
Alexandre Julliard b1e8ed3e3b user32/tests: Add a few more tests for synthesized formats rendering.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-06 17:24:53 +09:00
Alexandre Julliard fa06ecbfce user32: Implement GetUpdatedClipboardFormats.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-06 15:35:49 +09:00
Huw Davies 5942625a00 user32/tests: On Win 8 and later, moving a window off-screen doesn't crop its update region.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-06 11:29:48 +09:00
Huw Davies 1c70de2a34 user32/tests: ValidateRect(NULL, &rect) on >= Win 8 no longer invalidates all windows.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-06 11:29:40 +09:00
Sebastian Lackner 994b06a97d user32: Do not create IME window for HWND_MESSAGE windows.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-02 23:34:27 +09:00
Alexandre Julliard e01592e82f user32/tests: Add some tests for synthesized clipboard formats.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-02 16:20:07 +09:00
Huw Davies c247a36eed user32: EC_USEFONTINFO behaviour depends on whether the font's charset is CJK or not.
In the non-CJK case, the margins are half of the width returned by
GdiGetCharDimensions() but only if the client rect's width is above a
certain size.  There is an exception if the client rect is empty if
the font is sufficiently small.

In the CJK case, the margins are independent of the client rect size.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-01 22:14:22 +09:00
Alexandre Julliard 2b8021d4d0 server: Don't release the clipboard owner window when the owner thread terminates.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-01 22:14:22 +09:00
Alexandre Julliard bddab0e7f8 server: Add a release_clipboard request, and notify the owner and viewer on release.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-01 22:02:04 +09:00
Alexandre Julliard c6f12bd9cc server: Notify all listeners when the contents of the clipboard have changed.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-30 16:33:04 +09:00
Alexandre Julliard 7594afeb6c user32: Fix InSendMessage return value.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-30 14:38:15 +09:00
Alexandre Julliard 35537b1d45 server: Implement Add/RemoveClipboardFormatListener.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-29 23:54:40 +09:00
Alexandre Julliard 19d16a7cb1 server: Add some validation of clipboard window handles.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-29 21:31:50 +09:00
Akihiro Sagawa 911d269be8 user32: Create and destroy the default IME window implicitly.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-29 16:45:32 +09:00
Piotr Caban 1c73fcdbcb user32: Fix DefWindowProc behavior on WM_NCRBUTTONDOWN message.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-29 16:38:31 +09:00
Jacek Caban f0e7bd248e user32: Introduced ThreadDetach driver entry point.
The problem was diagnosed by Ken Thomases.

Currently drivers use DllMain(DLL_THREAD_DETACH) to release thread data.
The problem is that DLLs (like native urlmon.dll, esp. reproducible in
IE8) may still do user32 calls after driver detaches thread. Loader
ensures that since user32.dll was loaded before dependent DLLs, user32's
DllMain will be called in the right moment. Due to lazy loading of
drivers, we have no control over them. We may use a new entry point to
make sure that we detach user32 and driver at the same time.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-27 13:23:52 +09:00
Alexandre Julliard 7888382e0a user32: Notify the clipboard viewer on close even if we are not the owner.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-25 22:09:08 +09:00
Alexandre Julliard 57e2b75c02 user32/tests: Add some tests for inter-process clipboard viewer notifications.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-25 21:36:32 +09:00
Alexandre Julliard 5962df3a1e server: Cleanup clipboard information upon window destruction.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-24 00:16:43 +09:00
Alexandre Julliard 43e38153ee user32/tests: Add a few more clipboard tests.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-24 00:16:43 +09:00
Alexandre Julliard 99d5b75c7d winex11: Don't disallow replacing unowned formats.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-23 18:05:48 +09:00
Alexandre Julliard d9df977006 user32: Don't disallow delayed rendering even when not the clipboard owner.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-23 17:57:50 +09:00
Alexandre Julliard 42c221db6c user32: Don't allow SetClipboardData if the clipboard is not open.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-23 17:35:18 +09:00
Alexandre Julliard 79d2e0a9be server: Add a request to return clipboard information.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-23 16:29:00 +09:00
Huw Davies 9efcbd113d user32: Scale the button size with screen resolution.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-22 23:05:22 +09:00
Huw Davies b0ec8a6675 user32: The offset between the button and the text is half the digit width.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-22 23:05:22 +09:00
Huw Davies 94a87819c5 user32: Scale the check mark drawn with DrawFrameControl().
Based on a patch by Alexandre Julliard.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-22 23:05:22 +09:00
Huw Davies e06f3cd12c user32: Scale the edge thickness of check boxes drawn with DrawFrameControl().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-22 23:05:21 +09:00
Alexandre Julliard 67ee1d3fd8 user32: Get rid of the CLIPBOARDINFO structure.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-22 23:05:21 +09:00
Alexandre Julliard 98b24dcb50 server: Add a separate request to set the clipboard viewer.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-22 23:05:20 +09:00
Alexandre Julliard 7258793169 server: Add separate requests for opening and closing the clipboard.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-22 16:20:53 +09:00
Alexandre Julliard e3a8c3a869 user32/tests: Disable custom GDI clipboard formats tests on 64-bit.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-19 16:14:30 +09:00
Alexandre Julliard 60f8b516e2 winex11: Allocate clipboard data as GMEM_FIXED.
Based on a patch by Rafał Harabień.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 20:57:51 +09:00
Alexandre Julliard a96b017070 user32/tests: Add some tests for GDI clipboard formats.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 20:51:16 +09:00
Józef Kucia 4277b055de user32: Prevent resetting WS_MINIMIZE through SetWindowLong.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 11:57:25 +09:00
Józef Kucia 412b8dcafb user32/tests: Add more tests for setting window styles.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 11:57:11 +09:00
Alexandre Julliard 2e6fc89395 user32/tests: Add some cross-process clipboard tests.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 00:09:36 +09:00
Alexandre Julliard 0a1f9bec6d user32/tests: Add tests for clipboard global memory handles.
The GMEM_FIXED tests are based on a patch by Rafał Harabień.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-17 17:22:46 +09:00
Nikolay Sivov 17987c589f user32: Handle invalid dialog handles in IsDialogMessage().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-17 11:53:41 +09:00
Michael Stefaniuc d8a970f94a user32/tests: Remove an identical if/else branch.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-10 22:22:57 +09:00
Nikolay Sivov 6c8887b830 user32/tests: Fix indentation warnings on GCC 6.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-10 12:51:54 +09:00
Andrew Eikum c1c3198aa4 user32: Don't always insert menu items during WM_MDISETMENU.
MSDN says WM_MDISETMENU shouldn't change the frame menu if it is given
as NULL. Tests bear that out. Some other tests are included to show we
haven't broken behavior on e.g. initially maximized MDI child windows.

Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-08 18:41:29 +09:00
Michael Stefaniuc c80ba53864 user32/tests: Make use of todo_wine_if().
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-04 16:50:52 -05:00
Michael Stefaniuc 07f9f71278 user32: Use straight assignments instead of CopyRect().
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-02 16:18:05 -05:00
Michael Stefaniuc e13011f63e user32: Simplify a RECT copy.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-19 19:59:31 +09:00
Michael Stefaniuc 07ada9a85b user32: Use SetRect() instead of open coding it.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-19 19:59:30 +09:00
Alexandre Julliard 911e59c133 user32: Store window station objects under the session directory.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-18 16:21:24 +09:00
Dmitry Timoshkov 59ba31d1fc user32: Properly handle invalid parameters in CharToOem[Buff]W and OemToChar[Buff]W.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-08 20:12:12 +09:00
Dmitry Timoshkov 80d655ca75 user32: Properly handle invalid parameters in CharToOem[Buff]A and OemToChar[Buff]A.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-08 20:12:09 +09:00