Jacek Caban : win32u: Introduce NtUserClipboardWindowProc.
Alexandre Julliard
julliard at winehq.org
Tue May 31 15:58:00 CDT 2022
Module: wine
Branch: master
Commit: 806d85529f34da0ebcf05fe6b7631849372834d8
URL: https://source.winehq.org/git/wine.git/?a=commit;h=806d85529f34da0ebcf05fe6b7631849372834d8
Author: Jacek Caban <jacek at codeweavers.com>
Date: Mon May 30 21:43:17 2022 +0200
win32u: Introduce NtUserClipboardWindowProc.
Signed-off-by: Jacek Caban <jacek at codeweavers.com>
---
dlls/win32u/driver.c | 7 +++++++
dlls/win32u/message.c | 2 ++
include/ntuser.h | 5 +++--
include/wine/gdi_driver.h | 1 +
4 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/dlls/win32u/driver.c b/dlls/win32u/driver.c
index 4dac0760464..b4cea3d42c8 100644
--- a/dlls/win32u/driver.c
+++ b/dlls/win32u/driver.c
@@ -1099,6 +1099,11 @@ static BOOL loaderdrv_ClipCursor( const RECT *clip )
return load_driver()->pClipCursor( clip );
}
+static LRESULT nulldrv_ClipboardWindowProc( HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam )
+{
+ return 0;
+}
+
static void loaderdrv_UpdateClipboard(void)
{
load_driver()->pUpdateClipboard();
@@ -1172,6 +1177,7 @@ static const struct user_driver_funcs lazy_load_driver =
loaderdrv_SetCursorPos,
loaderdrv_ClipCursor,
/* clipboard functions */
+ nulldrv_ClipboardWindowProc,
loaderdrv_UpdateClipboard,
/* display modes */
loaderdrv_ChangeDisplaySettingsEx,
@@ -1247,6 +1253,7 @@ void CDECL __wine_set_user_driver( const struct user_driver_funcs *funcs, UINT v
SET_USER_FUNC(GetCursorPos);
SET_USER_FUNC(SetCursorPos);
SET_USER_FUNC(ClipCursor);
+ SET_USER_FUNC(ClipboardWindowProc);
SET_USER_FUNC(UpdateClipboard);
SET_USER_FUNC(ChangeDisplaySettingsEx);
SET_USER_FUNC(EnumDisplaySettingsEx);
diff --git a/dlls/win32u/message.c b/dlls/win32u/message.c
index 6bb9aa455f5..bc6db20d164 100644
--- a/dlls/win32u/message.c
+++ b/dlls/win32u/message.c
@@ -2911,6 +2911,8 @@ LRESULT WINAPI NtUserMessageCall( HWND hwnd, UINT msg, WPARAM wparam, LPARAM lpa
return send_notify_message( hwnd, msg, wparam, lparam, ansi );
case NtUserSendMessageCallback:
return send_message_callback( hwnd, msg, wparam, lparam, (void *)result_info, ansi );
+ case NtUserClipboardWindowProc:
+ return user_driver->pClipboardWindowProc( hwnd, msg, wparam, lparam );
case NtUserSpyEnter:
spy_enter_message( ansi, hwnd, msg, wparam, lparam );
return 0;
diff --git a/include/ntuser.h b/include/ntuser.h
index 29de027a334..091d34c3a5f 100644
--- a/include/ntuser.h
+++ b/include/ntuser.h
@@ -189,8 +189,9 @@ enum
NtUserSendNotifyMessage = 0x02b7,
NtUserSendMessageCallback = 0x02b8,
/* Wine-specific exports */
- NtUserSpyEnter = 0x0300,
- NtUserSpyExit = 0x0301,
+ NtUserClipboardWindowProc = 0x0300,
+ NtUserSpyEnter = 0x0301,
+ NtUserSpyExit = 0x0302,
};
/* NtUserThunkedMenuItemInfo codes */
diff --git a/include/wine/gdi_driver.h b/include/wine/gdi_driver.h
index 21fff4d4aa2..52fd6fe49d3 100644
--- a/include/wine/gdi_driver.h
+++ b/include/wine/gdi_driver.h
@@ -291,6 +291,7 @@ struct user_driver_funcs
BOOL (*pSetCursorPos)(INT,INT);
BOOL (*pClipCursor)(LPCRECT);
/* clipboard functions */
+ LRESULT (*pClipboardWindowProc)(HWND,UINT,WPARAM,LPARAM);
void (*pUpdateClipboard)(void);
/* display modes */
LONG (*pChangeDisplaySettingsEx)(LPCWSTR,LPDEVMODEW,HWND,DWORD,LPVOID);
More information about the wine-cvs
mailing list