Commit Graph

2400 Commits

Author SHA1 Message Date
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
Michael Stefaniuc a1f0d09ab3 user32/tests: Use wine_dbgstr_rect() to print RECTs.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-06 16:15:52 +09:00
Michael Stefaniuc 488562904f user32: Use InflateRect() too when stretching the RECT in just one axis.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-04 17:41:35 +09:00
Michael Stefaniuc 62c3bce847 user32: Use InflateRect() instead of open coding it.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-04 10:58:50 +09:00
Michael Stefaniuc ce88870982 user32/tests: Avoid using CopyRect().
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 22:16:35 +09:00
Michael Stefaniuc c03ccff2ba user32/tests: Finish the move to use wine_dbgstr_rect().
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-21 00:23:56 +09:00
Michael Stefaniuc 827cd8f332 user32/tests: Use the stricter !IsRectEmpty() check.
The EMPTY macro is much stricter than IsRectEmpty() as it checks for
zero heigth AND width aka rect has the size of a point.

Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-21 00:23:56 +09:00
Michael Stefaniuc 4730f4fffb user32/tests: Remove some old broken behavior.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-21 00:23:56 +09:00
Michael Stefaniuc bca5acb5ca user32: Use EqualRect() instead of memcmp() to compare RECTs.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-21 00:23:55 +09:00
Michael Stefaniuc 41d01871fe user32/tests: Add some IsRectEmpty() tests.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-17 00:09:23 +09:00
Michael Stefaniuc 7f5adb69cd user32/tests: Use wine_dbgstr_rect() to print RECTs.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-17 00:09:21 +09:00
Michael Stefaniuc 82fa7dea2a user32/tests: Remove an unused macro.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-17 00:09:20 +09:00
Michael Stefaniuc ea50a4f8d8 user32/tests: Use wine_dbgstr_rect() in the win tests.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-13 19:50:20 +09:00