Commit graph

3903 commits

Author SHA1 Message Date
Rémi Bernon bcf38fc53c user32/tests: Workaround use after free warnings.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
2022-06-15 11:53:29 +02:00
Jacek Caban eda3732afd user32: Reimplement GetMenuContextHelpId on top of GetMenuInfo.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-14 11:29:13 +02:00
Jacek Caban d4b8ca7853 win32u: Move PopupMenuWndProc implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-14 11:29:13 +02:00
Jacek Caban e13145c893 win32u: Move MENU_DrawMenuBar implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-14 11:29:13 +02:00
Jacek Caban af00521e29 win32u: Move NtUserDrawMenuBarTemp implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-14 11:29:12 +02:00
Jacek Caban 05b29423e5 win32u: Move WM_NCCALCSIZE implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-14 11:29:11 +02:00
Alex Henrie 001d78a582 user32: Plug icon handle leak in MDI_AugmentFrameMenu (Coverity).
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
2022-06-14 11:28:27 +02:00
Jacek Caban d65f2492ed win32u: Move GetDialogBaseUnits implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-13 16:37:03 +02:00
Jacek Caban 817dca1099 win32u: Move WM_NCACTIVATE implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-13 16:37:03 +02:00
Jacek Caban 9f03d8f3e1 win32u: Move WM_NCPAINT handling from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-13 16:37:03 +02:00
Zebediah Figura b0731f6e7e user32: Use registry APIs to enumerate raw input devices. 2022-06-10 11:59:11 +02:00
Zebediah Figura 5d63f809c9 user32: Store the device path as a simple string pointer. 2022-06-10 11:59:11 +02:00
Zebediah Figura 1798702655 user32: Use IOCTL_HID_GET_WINE_RAWINPUT_HANDLE to retrieve the raw input handle.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-09 20:55:45 +02:00
Jacek Caban 61ad0b844d win32u: Move SC_SIZE and SC_MOVE handling from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-09 20:55:20 +02:00
Jacek Caban 6e2ea185c2 win32u: Move NtUserInternalGetWindowIcon implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-09 20:55:20 +02:00
Jacek Caban a8ed1c94b3 win32u: Move NtUserDragDetect implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-09 20:55:20 +02:00
Jacek Caban 540dc761fc win32u: Move SetWindowContextHelpId implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-09 20:55:20 +02:00
Jacek Caban b2db69efcf win32u: Move NtUserScrollWindowEx implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-09 20:55:20 +02:00
Jacek Caban eae27293ba user32: Remove no longer needed helpers.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-08 10:50:15 +02:00
Jacek Caban 915ac1c197 user32: Use a critical section in RegisterUserApiHook.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-08 10:50:15 +02:00
Jacek Caban 2a3b4c9bd7 win32u: Move NtUserLockWindowUpdate implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-08 10:50:14 +02:00
Jacek Caban 6b8b981199 wineandroid: Implement desktop window proc using driver interface.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-06 23:09:17 +02:00
Zebediah Figura 2ae59899bf user32: Perform HID ioctls on the right file handle.
This fixes a regression from 8962ec5a83.

Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-03 21:55:14 +02:00
Jactry Zeng f30332fe5e win32u/clipboard: Set handle of bitmap and palette as system object.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
2022-06-02 17:22:30 +02:00
Jactry Zeng e743f02010 user32/tests: Add more tests of SetClipboardData().
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
2022-06-02 17:22:29 +02:00
Zebediah Figura 0881d42e7b user32: Factor out raw input device enumeration.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
2022-06-02 09:50:43 +02:00
Zebediah Figura 879ef36148 user32: Use HID ioctls directly.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
2022-06-02 09:50:43 +02:00
Zebediah Figura a448ae89ca user32: Use GUID_DEVINTERFACE_HID directly.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
2022-06-02 09:50:43 +02:00
Zebediah Figura c55980a47c user32: Retrieve the usage page and usage directly from the hid_preparsed_data structure.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
2022-06-02 09:50:43 +02:00
Zebediah Figura 4c4c64bf32 user32: Handle failure from HID APIs.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
2022-06-02 09:50:43 +02:00
Zebediah Figura 8962ec5a83 user32: Populate the RID_DEVICE_INFO structure in add_device().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
2022-06-02 09:50:43 +02:00
Eric Pouech 9d72487f21 user32: Enable compilation with long types.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-31 22:52:45 +02:00
Jacek Caban 7625e6ba20 win32u: Use user_callbacks for alertable NtWaitForMultipleObjects calls.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53020
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-05-31 22:52:45 +02:00
Zhiyi Zhang 546cbdc250 win32u: Create a dummy bitmap for display device contexts.
On Windows 7 and older versions of Windows, calling GetCurrentObject(hdc, OBJ_BITMAP) for a display
device context will return a valid handle. However, this handle will fail for GetObject(). On newer
versions of Windows, GetCurrentObject(hdc, OBJ_BITMAP) for display device contexts returns a bitmap
of virtual screen size and its size changes after display mode changes. This behavior is tested in
the _check_display_dc() function in user32/tests/monitor.c.

The screen shot function of WeChat depends on GetObject() to either return failure or a valid size
for the bitmap from display device contexts. Since Wine currently report Windows 7 as default and to
save memory, the Windows 7 behavior is implemented.

Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
2022-05-30 22:07:42 +02:00
Jacek Caban 336f033273 win32u: Move desktop window proc implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-19 20:53:35 +02:00
Jacek Caban a15df248e5 win32u: Export NtUserGetWindowPlacement.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-19 20:53:34 +02:00
Jacek Caban 9abd2ae8d1 win32u: Move NtUserSetInternalWindowPos implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-19 20:53:33 +02:00
Jacek Caban 96b2b4c078 win32u: Move NtUserSetWindowPlacement implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-19 20:53:31 +02:00
Jacek Caban e2d79b395d user32: Remove no longer used WINPOS_WindowFromPoint.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-16 20:46:49 +02:00
Zebediah Figura ab34fb78f8 include: Constify the RAWINPUTDEVICE pointer parameter to RegisterRawInputDevices().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-16 10:40:03 +02:00
Pedro Perdigão 1146bde39e win32u: Allow an out-of-order RECT in RedrawWindow().
Signed-off-by: Pedro Perdigão <pperdigao@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-13 22:11:40 +02:00
Pedro Perdigão 06b3471605 user32/tests: Test an out-of-order RECT in RedrawWindow().
Signed-off-by: Pedro Perdigão <pperdigao@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-13 22:11:40 +02:00
Jacek Caban b9a40c4b26 win32u: Move default WM_WINDOWPOSCHANGING implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-12 19:32:28 +02:00
Jacek Caban 63ce060e5b win32u: Move default WM_ERASEBKGND implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-12 19:32:28 +02:00
Jacek Caban 135e3176b6 win32u: Move more default window commands from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-12 19:32:28 +02:00
Jacek Caban 0e0438bfaa win32u: Move default WM_PAINT implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-12 19:32:28 +02:00
Jacek Caban 1f296397ca win32u: Move default WM_GETICON implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-12 19:32:28 +02:00
Francois Gouget 3ce1d494a6 user32/tests: Make the test_char_from_pos() failures more informative.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-06 19:16:42 +02:00
Jacek Caban d8c807ba98 win32u: Use KeUserModeCallback interface for CopyImage.
Its implementation doesn't seem to be exposed from win32u and it
generally fits well in user space. It will be also useful for drivers.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-05 18:35:12 +02:00
Jacek Caban 70d3e41d64 win32u: Move NtUserCallMsgFilter implementation from user32.
A/W conversion is not used in those cases anyway, so just use a single implementation.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-05 18:35:08 +02:00