Commit graph

355 commits

Author SHA1 Message Date
Jacek Caban 8bdfe2be19 win32u: Move NtUserGetWindowDC implementation from user32. 2022-11-29 12:50:19 +01:00
Jacek Caban be6f5ed95a win32u: Move NtUserGetDC implementation from user32. 2022-11-29 12:50:16 +01:00
Zhiyi Zhang c196d2462d user32: Hook drawing menu buttons. 2022-11-04 19:23:55 +01:00
Rémi Bernon dec91f0631 opengl32: Introduce a new NtUserCallOpenGLDebugMessageCallback callback. 2022-11-04 19:23:55 +01:00
Nikolay Sivov 645326214f user32: Add DragObject() stub.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53768
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-10-31 20:41:45 +01:00
Paul Gofman 162101bcb3 win32u: Move NtUserDisplayConfigGetDeviceInfo implementation from user32. 2022-10-31 12:12:15 +01:00
Jacek Caban 4467589a4a win32u: Introduce NtUserSendDriverMessage.
And use it in display drivers.
2022-09-20 20:52:56 +02:00
Jacek Caban 3ba583fde8 win32u: Introduce NtUserActivateOtherWindow.
And use it instead of WINPOS_ActivateOtherWindow.
2022-08-27 16:53:30 +02:00
Jacek Caban 803a5f0789 win32u: Move NtUserPerMonitorDPIPhysicalToLogicalPoint implementation from user32. 2022-08-27 16:53:28 +02:00
Jacek Caban 352e24dcdf win32u: Move NtUserLogicalToPerMonitorDPIPhysicalPoint implementation from user32. 2022-08-27 16:53:27 +02:00
Jacek Caban 577fbb0ff1 user32: Move dialog proc getting implementation from win32u. 2022-08-18 21:42:26 +02:00
Jacek Caban 6d8b1887a5 wow64win: Implement more user callbacks. 2022-08-16 22:27:53 +02:00
Jacek Caban caad167278 win32u: Use a client copy of windows hook lparam when calling hook procs.
Instead of leaking kernel pointers.
2022-08-16 22:27:53 +02:00
Jacek Caban 439cdf4901 win32u: Move more logic from dispatch_win_proc_params. 2022-08-15 18:15:19 +02:00
Jacek Caban 40dbc84913 win32u: Use NtUserCallMessage for passing packed winproc result. 2022-08-12 22:12:32 +02:00
Jacek Caban 701932a6ce wow64win: Add initial user callbacks support. 2022-08-11 16:50:55 +02:00
Jacek Caban 2c75490c3e win32u: Use NtUserMessageCall for NtUserSpyGetMsgName.
Instead of leaking a kernel pointer.
2022-08-09 15:55:44 +02:00
Jacek Caban 8bb71922a5 win32u: Store thread info in 64-bit TEB on wow64. 2022-08-09 15:55:44 +02:00
Jacek Caban 1e9390e558 win32u: Use platform-independent layout for ntuser_thread_info. 2022-08-09 15:55:43 +02:00
Jacek Caban 1e640b5e7f user32: Don't include ntuser_private.h. 2022-08-08 18:47:45 +02:00
Jacek Caban eb317d9d8c win32u: Store receive_flags in ntuser_thread_info. 2022-08-08 18:47:45 +02:00
Jacek Caban ca903a4a16 win32u: Move msg_source and recursion_count to ntuser_thread_info. 2022-08-08 18:47:45 +02:00
Jacek Caban da2c400edc win32u: Store wmchar_data in ntuser_thread_info. 2022-08-08 18:47:44 +02:00
Jacek Caban f390b5b884 win32u: Store DPI awareness in ntuser_thread_info. 2022-08-08 18:47:44 +02:00
Jacek Caban ed693f5b32 win32u: Move builtin classes registration from user32. 2022-08-08 18:47:44 +02:00
Jacek Caban 929694c66d user32: Remove USER_CheckNotLock.
It's no longer interesting. Its remaining callers are not used by locked code, which is restricted to win32u.
2022-08-05 20:13:33 +02:00
Jacek Caban 421fb1c804 win32u: Introduce NtUserGetChildRect.
And use it in CalcChildScroll.
2022-08-05 20:13:33 +02:00
Jacek Caban c0b62eb5ae user32: Use win32u to get and set MDI client info. 2022-08-05 20:13:33 +02:00
Jacek Caban 224a8fc24e win32u: Introduce NtUserGetWindowSysSubMenu.
And use it for MDI client implementation.
2022-08-05 20:13:33 +02:00
Jacek Caban fa7aaca9f1 win32u: Remove no longer needed exports. 2022-07-28 17:34:03 +02:00
Jacek Caban 3dc3709f4c win32u: Introduce NtUserGetDialogProc.
And use it in user32 instead of DEFDLG_GetDlgProc.
2022-07-28 17:34:03 +02:00
Jacek Caban 1cd5702d9f win32u: Introduce NtUserGetDialogInfo and NtUserSetDialogInfo.
And use it instead of accessing window object from user32.
2022-07-28 17:34:03 +02:00
Jacek Caban 11657aab27 user32: Avoid using WIN_GetPtr for window handle validation.
We will eventually want to make GetWindowThreadProcessId fast (probably based on shared handle table) instead of calling win32u.
2022-07-28 17:34:03 +02:00
Jacek Caban 88462d9127 win32u: Get rid of no longer needed NtUserSetCallbacks. 2022-07-21 23:03:29 +02:00
Jacek Caban 2ef6a6eee6 win32u: Remove no longer needed NtUserDispatchMessageA. 2022-07-21 23:03:29 +02:00
Jacek Caban 26a4fb74ee user32: Avoid using NtUserDispatchMessage in DispatchMessage.
When possible, call window proc on PE side to allow unwinding exceptions through DispatchMessageW call.
2022-07-21 23:03:29 +02:00
Jacek Caban d3c57dec71 win32u: Use KeUserModeCallback interface for DDE message callbacks. 2022-07-12 22:51:29 +02:00
Jacek Caban 0826fbbb74 win32u: Use KeUserModeCallback for ImmProcessKey and ImmTranslateMessage calls. 2022-07-12 22:51:29 +02:00
Jacek Caban 047d74c4b1 win32u: Move default IME window management from imm32. 2022-07-12 22:51:29 +02:00
Jacek Caban f5b3283e24 win32u: Move window input context handling from imm32. 2022-07-12 22:51:29 +02:00
Jacek Caban 3e8a4b671d imm32: Store message spy pointer in TEB. 2022-07-12 22:51:29 +02:00
Jacek Caban 7babf75789 imm32: Move default IMM window proc implementation from user32. 2022-07-11 18:56:17 +02:00
Jacek Caban d9fc5b3f96 win32u: Implement input context object. 2022-07-11 18:56:16 +02:00
Jacek Caban c9c69dff7e win32u: Support undocumented SIF_RETURNPREV flag in set_scroll_info. 2022-07-05 12:34:03 +02:00
Jacek Caban 419893519c win32u: Move scroll tracking implementation from user32. 2022-07-04 20:14:02 +02:00
Jacek Caban 22cab055e4 win32u: Partially move ScrollBarWndProc implementation from user32. 2022-07-04 20:14:02 +02:00
Jacek Caban b4ba6de6e1 win32u: Move NtUserShowScrollBar implementation from user32. 2022-07-04 20:14:02 +02:00
Zebediah Figura 0a93089019 win32u: Move raw input device list management from user32. 2022-06-30 10:54:17 +02:00
Zebediah Figura cbbab65571 win32u: Move NtUserGetRegisteredRawInputDevices from user32. 2022-06-30 10:54:16 +02:00
Zebediah Figura 0ce4ed675f win32u: Move NtUserRegisterRawInputDevices from user32. 2022-06-30 10:54:12 +02:00
Jacek Caban e411b98155 win32u: Move NtUserGetSystemMenu implementation from user32. 2022-06-27 22:58:21 +02:00
Jacek Caban 2bd0c87278 win32u: Move GetMenuDefaultItem implementation from user32. 2022-06-27 22:58:21 +02:00
Jacek Caban 313f75a0af user32: Use NtUserThunkedMenuItemInfo for GetSubMenu implementation. 2022-06-24 22:38:47 +02:00
Jacek Caban d7dba1ed74 win32u: Move CheckMenuRadioItem implementation from user32. 2022-06-24 22:38:47 +02:00
Jacek Caban 9f267c2258 win32u: Move GetMenuItemID implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-21 18:53:18 +02:00
Jacek Caban 7099c8d7e8 win32u: Move get_menu_item_info implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-21 18:53:18 +02:00
Jacek Caban 3ec9c2990b win32u: Move WM_APPCOMMAND implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-20 20:54:41 +02:00
Zebediah Figura 591fd06b6c win32u: Move NtUserGetRawInputBuffer from user32. 2022-06-17 20:37:56 +02:00
Zebediah Figura db43005cd8 win32u: Move NtUserGetRawInputData from user32. 2022-06-17 20:37:54 +02:00
Jacek Caban 86f9c8b1f6 win32u: Move NtUserGetTitleBarInfo implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-17 18:06:53 +02:00
Jacek Caban 67e39efb75 win32u: Move NtUserDrawCaptionTemp implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-17 18:06:53 +02:00
Jacek Caban b9d8a842f0 win32u: Move menu tracking implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-16 19:29:10 +02:00
Jacek Caban 76a0108c59 win32u: Use NtUserCallHwnd for NtUserSetForegroundWindow.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-15 18:32:19 +02:00
Jacek Caban 07f2cc9dda win32u: Move process default layout handling from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-15 18:32:18 +02:00
Jacek Caban 6f3ed5fd64 win32u: Move NtUserInvalidateRect and NtUserInvalidateRgn implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-15 18:32:16 +02:00
Jacek Caban 95b76f5101 win32u: Move NtUserMenuItemFromPoint implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-15 18:32:16 +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 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 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 9f03d8f3e1 win32u: Move WM_NCPAINT handling from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-13 16:37:03 +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 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 806d85529f win32u: Introduce NtUserClipboardWindowProc.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-05-31 22:52:45 +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 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
Jacek Caban 040d1f9bbd winex11: Introduce x11drv_client_call.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-05 18:35:07 +02:00
Jacek Caban 4604c45540 win32u: Move NtUserGetSystemMenu implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-02 22:43:53 +02:00
Jacek Caban 189da79a18 win32u: Move NtUserDeleteMenu implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-02 22:43:53 +02:00
Jacek Caban bad82953db win32u: Move GetMenuItemCount implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-02 22:43:53 +02:00
Jacek Caban 1899cd2a9e win32u: Move GetMenuState implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-02 22:43:53 +02:00
Jacek Caban 77ab51019f win32u: Move menu item info management from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-02 22:43:53 +02:00
Jacek Caban a37cae58d9 win32u: Use user mode callback for registering builtin classes.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-26 22:21:04 +02:00
Jacek Caban 286471a307 win32u: Introduce data-only mode in NtUserGetClipboardData.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-26 22:21:04 +02:00
Zebediah Figura b8732c80b1 win32u: Move caret APIs from user32.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-26 22:21:04 +02:00
Zebediah Figura 5ce53f95cf win32u: Move NtUserTrackMouseEvent() implementation from user32.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-26 22:21:04 +02:00
Jacek Caban eba0a51002 win32u: Move clipboard data management from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-25 20:34:47 +02:00
Jacek Caban cad4adedaa win32u: Add more clipboard stubs.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-25 20:34:44 +02:00
Jacek Caban ea9fb81c09 win32u: Move EnumClipboardFormats implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 21:42:20 +02:00
Jacek Caban 357d8654c9 win32u: Move NtUserChangeClipboardChain implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 21:42:20 +02:00
Jacek Caban c38e287bef win32u: Move NtUserSetClipboardViewer implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 21:42:20 +02:00
Jacek Caban 172ae86945 win32u: Move NtUserSetMenuDefaultItem implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 21:42:20 +02:00
Jacek Caban 99b94fcc74 win32u: Move NtUserThunkedMenuInfo implementation from user32.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 21:42:20 +02:00