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>
This commit is contained in:
parent
c38e287bef
commit
357d8654c9
|
@ -702,33 +702,6 @@ BOOL WINAPI EmptyClipboard(void)
|
|||
}
|
||||
|
||||
|
||||
/**************************************************************************
|
||||
* ChangeClipboardChain (USER32.@)
|
||||
*/
|
||||
BOOL WINAPI ChangeClipboardChain( HWND hwnd, HWND next )
|
||||
{
|
||||
NTSTATUS status;
|
||||
HWND viewer;
|
||||
|
||||
if (!hwnd) return FALSE;
|
||||
|
||||
SERVER_START_REQ( set_clipboard_viewer )
|
||||
{
|
||||
req->viewer = wine_server_user_handle( next );
|
||||
req->previous = wine_server_user_handle( hwnd );
|
||||
status = wine_server_call( req );
|
||||
viewer = wine_server_ptr_handle( reply->old_viewer );
|
||||
}
|
||||
SERVER_END_REQ;
|
||||
|
||||
if (status == STATUS_PENDING)
|
||||
return !SendMessageW( viewer, WM_CHANGECBCHAIN, (WPARAM)hwnd, (LPARAM)next );
|
||||
|
||||
if (status) SetLastError( RtlNtStatusToDosError( status ));
|
||||
return !status;
|
||||
}
|
||||
|
||||
|
||||
/**************************************************************************
|
||||
* SetClipboardData (USER32.@)
|
||||
*/
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
@ stdcall CallWindowProcW(ptr long long long long)
|
||||
@ stdcall CascadeChildWindows(long long)
|
||||
@ stdcall CascadeWindows(long long ptr long ptr)
|
||||
@ stdcall ChangeClipboardChain(long long)
|
||||
@ stdcall ChangeClipboardChain(long long) NtUserChangeClipboardChain
|
||||
@ stdcall ChangeDisplaySettingsA(ptr long)
|
||||
@ stdcall ChangeDisplaySettingsExA(str ptr long long ptr)
|
||||
@ stdcall ChangeDisplaySettingsExW(wstr ptr long long ptr)
|
||||
|
|
|
@ -274,6 +274,32 @@ HWND WINAPI NtUserGetClipboardViewer(void)
|
|||
return viewer;
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
* NtUserChangeClipboardChain (win32u.@)
|
||||
*/
|
||||
BOOL WINAPI NtUserChangeClipboardChain( HWND hwnd, HWND next )
|
||||
{
|
||||
NTSTATUS status;
|
||||
HWND viewer;
|
||||
|
||||
if (!hwnd) return FALSE;
|
||||
|
||||
SERVER_START_REQ( set_clipboard_viewer )
|
||||
{
|
||||
req->viewer = wine_server_user_handle( next );
|
||||
req->previous = wine_server_user_handle( hwnd );
|
||||
status = wine_server_call( req );
|
||||
viewer = wine_server_ptr_handle( reply->old_viewer );
|
||||
}
|
||||
SERVER_END_REQ;
|
||||
|
||||
if (status == STATUS_PENDING)
|
||||
return !send_message( viewer, WM_CHANGECBCHAIN, (WPARAM)hwnd, (LPARAM)next );
|
||||
|
||||
if (status) SetLastError( RtlNtStatusToDosError( status ));
|
||||
return !status;
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
* NtUserGetOpenClipboardWindow (win32u.@)
|
||||
*/
|
||||
|
|
|
@ -1139,6 +1139,7 @@ static struct unix_funcs unix_funcs =
|
|||
NtUserCallNoParam,
|
||||
NtUserCallOneParam,
|
||||
NtUserCallTwoParam,
|
||||
NtUserChangeClipboardChain,
|
||||
NtUserChangeDisplaySettings,
|
||||
NtUserClipCursor,
|
||||
NtUserCloseClipboard,
|
||||
|
|
|
@ -782,7 +782,7 @@
|
|||
@ stdcall NtUserCallOneParam(long long)
|
||||
@ stdcall NtUserCallTwoParam(long long long)
|
||||
@ stub NtUserCanBrokerForceForeground
|
||||
@ stub NtUserChangeClipboardChain
|
||||
@ stdcall NtUserChangeClipboardChain(long long)
|
||||
@ stdcall NtUserChangeDisplaySettings(ptr ptr long long ptr)
|
||||
@ stub NtUserChangeWindowMessageFilterEx
|
||||
@ stub NtUserCheckAccessForIntegrityLevel
|
||||
|
|
|
@ -191,6 +191,7 @@ struct unix_funcs
|
|||
ULONG_PTR (WINAPI *pNtUserCallNoParam)( ULONG code );
|
||||
ULONG_PTR (WINAPI *pNtUserCallOneParam)( ULONG_PTR arg, ULONG code );
|
||||
ULONG_PTR (WINAPI *pNtUserCallTwoParam)( ULONG_PTR arg1, ULONG_PTR arg2, ULONG code );
|
||||
BOOL (WINAPI *pNtUserChangeClipboardChain)( HWND hwnd, HWND next );
|
||||
LONG (WINAPI *pNtUserChangeDisplaySettings)( UNICODE_STRING *devname, DEVMODEW *devmode, HWND hwnd,
|
||||
DWORD flags, void *lparam );
|
||||
BOOL (WINAPI *pNtUserClipCursor)( const RECT *rect );
|
||||
|
|
|
@ -755,6 +755,12 @@ BOOL WINAPI NtUserCloseClipboard(void)
|
|||
return unix_funcs->pNtUserCloseClipboard();
|
||||
}
|
||||
|
||||
BOOL WINAPI NtUserChangeClipboardChain( HWND hwnd, HWND next )
|
||||
{
|
||||
if (!unix_funcs) return DISP_CHANGE_FAILED;
|
||||
return unix_funcs->pNtUserChangeClipboardChain( hwnd, next );
|
||||
}
|
||||
|
||||
LONG WINAPI NtUserChangeDisplaySettings( UNICODE_STRING *devname, DEVMODEW *devmode, HWND hwnd,
|
||||
DWORD flags, void *lparam )
|
||||
{
|
||||
|
|
|
@ -417,6 +417,7 @@ LRESULT WINAPI NtUserCallNextHookEx( HHOOK hhook, INT code, WPARAM wparam, LPARA
|
|||
ULONG_PTR WINAPI NtUserCallNoParam( ULONG code );
|
||||
ULONG_PTR WINAPI NtUserCallOneParam( ULONG_PTR arg, ULONG code );
|
||||
ULONG_PTR WINAPI NtUserCallTwoParam( ULONG_PTR arg1, ULONG_PTR arg2, ULONG code );
|
||||
BOOL WINAPI NtUserChangeClipboardChain( HWND hwnd, HWND next );
|
||||
LONG WINAPI NtUserChangeDisplaySettings( UNICODE_STRING *devname, DEVMODEW *devmode, HWND hwnd,
|
||||
DWORD flags, void *lparam );
|
||||
DWORD WINAPI NtUserCheckMenuItem( HMENU handle, UINT id, UINT flags );
|
||||
|
|
Loading…
Reference in New Issue