From: Jacek Caban jacek@codeweavers.com
--- dlls/win32u/gdiobj.c | 8 ---- dlls/win32u/syscall.c | 8 ++++ dlls/win32u/win32u.spec | 16 ++++---- dlls/win32u/win32u_private.h | 8 ---- dlls/win32u/wrappers.c | 48 ---------------------- dlls/wow64win/syscall.h | 8 ++++ dlls/wow64win/user.c | 78 ++++++++++++++++++++++++++++++++++++ 7 files changed, 102 insertions(+), 72 deletions(-)
diff --git a/dlls/win32u/gdiobj.c b/dlls/win32u/gdiobj.c index 6244e7ab472..f7df8f88cb6 100644 --- a/dlls/win32u/gdiobj.c +++ b/dlls/win32u/gdiobj.c @@ -1136,13 +1136,11 @@ static struct unix_funcs unix_funcs = NtGdiUnrealizeObject, NtGdiUpdateColors, NtGdiWidenPath, - NtUserCreateCaret, NtUserCreateWindowEx, NtUserDeferWindowPosAndBand, NtUserDestroyMenu, NtUserDestroyWindow, NtUserDisableThreadIme, - NtUserDragDetect, NtUserDrawCaptionTemp, NtUserDrawMenuBarTemp, NtUserEnableMenuItem, @@ -1156,7 +1154,6 @@ static struct unix_funcs unix_funcs = NtUserGetScrollBarInfo, NtUserGetSystemMenu, NtUserGetWindowPlacement, - NtUserHideCaret, NtUserHiliteMenuItem, NtUserInternalGetWindowIcon, NtUserMoveWindow, @@ -1164,12 +1161,9 @@ static struct unix_funcs unix_funcs = NtUserReleaseDC, NtUserScrollDC, NtUserSelectPalette, - NtUserSetActiveWindow, - NtUserSetCapture, NtUserSetClassLong, NtUserSetClassLongPtr, NtUserSetClassWord, - NtUserSetFocus, NtUserSetInternalWindowPos, NtUserSetLayeredWindowAttributes, NtUserSetMenu, @@ -1182,13 +1176,11 @@ static struct unix_funcs unix_funcs = NtUserSetWindowPos, NtUserSetWindowRgn, NtUserSetWindowWord, - NtUserShowCaret, NtUserShowScrollBar, NtUserShowWindow, NtUserShowWindowAsync, NtUserSystemParametersInfo, NtUserSystemParametersInfoForDpi, - NtUserTrackMouseEvent, NtUserTranslateAccelerator, NtUserUnregisterClass, NtUserUpdateLayeredWindow, diff --git a/dlls/win32u/syscall.c b/dlls/win32u/syscall.c index 2bc178db91d..92077671eb6 100644 --- a/dlls/win32u/syscall.c +++ b/dlls/win32u/syscall.c @@ -124,6 +124,7 @@ static void * const syscalls[] = NtUserCopyAcceleratorTable, NtUserCountClipboardFormats, NtUserCreateAcceleratorTable, + NtUserCreateCaret, NtUserCreateDesktopEx, NtUserCreateInputContext, NtUserCreateWindowStation, @@ -132,6 +133,7 @@ static void * const syscalls[] = NtUserDestroyCursor, NtUserDestroyInputContext, NtUserDispatchMessage, + NtUserDragDetect, NtUserDrawIconEx, NtUserEmptyClipboard, NtUserEndMenu, @@ -191,6 +193,7 @@ static void * const syscalls[] = NtUserGetUpdateRgn, NtUserGetUpdatedClipboardFormats, NtUserGetWindowRgnEx, + NtUserHideCaret, NtUserInitializeClientPfnArrays, NtUserInternalGetWindowText, NtUserInvalidateRect, @@ -219,11 +222,14 @@ static void * const syscalls[] = NtUserRemoveProp, NtUserScrollWindowEx, NtUserSendInput, + NtUserSetActiveWindow, + NtUserSetCapture, NtUserSetClipboardData, NtUserSetClipboardViewer, NtUserSetCursor, NtUserSetCursorIconData, NtUserSetCursorPos, + NtUserSetFocus, NtUserSetKeyboardState, NtUserSetMenuContextHelpId, NtUserSetMenuDefaultItem, @@ -237,10 +243,12 @@ static void * const syscalls[] = NtUserSetTimer, NtUserSetWinEventHook, NtUserSetWindowsHookEx, + NtUserShowCaret, NtUserShowCursor, NtUserThunkedMenuInfo, NtUserThunkedMenuItemInfo, NtUserToUnicodeEx, + NtUserTrackMouseEvent, NtUserTrackPopupMenuEx, NtUserTranslateMessage, NtUserUnhookWinEvent, diff --git a/dlls/win32u/win32u.spec b/dlls/win32u/win32u.spec index fb61addd3a8..c0ad2866b48 100644 --- a/dlls/win32u/win32u.spec +++ b/dlls/win32u/win32u.spec @@ -807,7 +807,7 @@ @ stdcall -syscall NtUserCreateAcceleratorTable(ptr long) @ stub NtUserCreateActivationGroup @ stub NtUserCreateActivationObject -@ stdcall NtUserCreateCaret(long long long long) +@ stdcall -syscall NtUserCreateCaret(long long long long) @ stub NtUserCreateDCompositionHwndTarget @ stdcall -syscall NtUserCreateDesktopEx(ptr ptr ptr long long long) @ stub NtUserCreateEmptyCursorObject @@ -845,7 +845,7 @@ @ stub NtUserDoSoundConnect @ stub NtUserDoSoundDisconnect @ stub NtUserDownlevelTouchpad -@ stdcall NtUserDragDetect(long long long) +@ stdcall -syscall NtUserDragDetect(long long long) @ stub NtUserDragObject @ stub NtUserDrawAnimatedRects @ stub NtUserDrawCaption @@ -1020,7 +1020,7 @@ @ stub NtUserGhostWindowFromHungWindow @ stub NtUserHandleDelegatedInput @ stub NtUserHardErrorControl -@ stdcall NtUserHideCaret(long) +@ stdcall -syscall NtUserHideCaret(long) @ stub NtUserHidePointerContactVisualization @ stdcall NtUserHiliteMenuItem(long long long long) @ stub NtUserHungWindowFromGhostWindow @@ -1163,13 +1163,13 @@ @ stub NtUserSendInteracsetiveControlHapticsReport @ stub NtUserSetActivationFilter @ stub NtUserSetActiveProcessForMonitor -@ stdcall NtUserSetActiveWindow(long) +@ stdcall -syscall NtUserSetActiveWindow(long) @ stub NtUserSetAppImeLevel @ stub NtUserSetAutoRotation @ stub NtUserSetBridgeWindowChild @ stub NtUserSetBrokeredForeground @ stub NtUserSetCalibrationData -@ stdcall NtUserSetCapture(long) +@ stdcall -syscall NtUserSetCapture(long) @ stub NtUserSetChildWindowNoActivate @ stdcall NtUserSetClassLong(long long long long) @ stdcall NtUserSetClassLongPtr(long long long long) @@ -1190,7 +1190,7 @@ @ stub NtUserSetDisplayMapping @ stub NtUserSetFallbackForeground @ stub NtUserSetFeatureReportResponse -@ stdcall NtUserSetFocus(long) +@ stdcall -syscall NtUserSetFocus(long) @ stub NtUserSetForegroundWindowForApplication @ stub NtUserSetFullscreenMagnifierOffsetsDWMUpdated @ stub NtUserSetGestureConfig @@ -1257,7 +1257,7 @@ @ stdcall NtUserSetWindowWord(long long long) @ stub NtUserSetWindowsHookAW @ stdcall -syscall NtUserSetWindowsHookEx(ptr ptr long long ptr long) -@ stdcall NtUserShowCaret(long) +@ stdcall -syscall NtUserShowCaret(long) @ stdcall -syscall NtUserShowCursor(long) @ stdcall NtUserShowScrollBar(long long long) @ stub NtUserShowSystemCursor @@ -1277,7 +1277,7 @@ @ stdcall -syscall NtUserThunkedMenuInfo(long ptr) @ stdcall -syscall NtUserThunkedMenuItemInfo(long long long long ptr ptr) @ stdcall -syscall NtUserToUnicodeEx(long long ptr ptr long long long) -@ stdcall NtUserTrackMouseEvent(ptr) +@ stdcall -syscall NtUserTrackMouseEvent(ptr) @ stdcall -syscall NtUserTrackPopupMenuEx(long long long long long ptr) @ stub NtUserTransformPoint @ stub NtUserTransformRect diff --git a/dlls/win32u/win32u_private.h b/dlls/win32u/win32u_private.h index b96d02e12f4..722bee43944 100644 --- a/dlls/win32u/win32u_private.h +++ b/dlls/win32u/win32u_private.h @@ -186,7 +186,6 @@ struct unix_funcs BOOL (WINAPI *pNtGdiUnrealizeObject)( HGDIOBJ obj ); BOOL (WINAPI *pNtGdiUpdateColors)( HDC hdc ); BOOL (WINAPI *pNtGdiWidenPath)( HDC hdc ); - BOOL (WINAPI *pNtUserCreateCaret)( HWND hwnd, HBITMAP bitmap, int width, int height ); HWND (WINAPI *pNtUserCreateWindowEx)( DWORD ex_style, UNICODE_STRING *class_name, UNICODE_STRING *version, UNICODE_STRING *window_name, DWORD style, INT x, INT y, INT width, INT height, @@ -198,7 +197,6 @@ struct unix_funcs BOOL (WINAPI *pNtUserDestroyMenu)( HMENU handle ); BOOL (WINAPI *pNtUserDestroyWindow)( HWND hwnd ); BOOL (WINAPI *pNtUserDisableThreadIme)( DWORD thread_id ); - BOOL (WINAPI *pNtUserDragDetect)( HWND hwnd, int x, int y ); BOOL (WINAPI *pNtUserDrawCaptionTemp)( HWND hwnd, HDC hdc, const RECT *rect, HFONT font, HICON icon, const WCHAR *str, UINT flags ); DWORD (WINAPI *pNtUserDrawMenuBarTemp)( HWND hwnd, HDC hdc, RECT *rect, HMENU handle, HFONT font ); @@ -214,7 +212,6 @@ struct unix_funcs BOOL (WINAPI *pNtUserGetScrollBarInfo)( HWND hwnd, LONG id, SCROLLBARINFO *info ); HMENU (WINAPI *pNtUserGetSystemMenu)( HWND hwnd, BOOL revert ); BOOL (WINAPI *pNtUserGetWindowPlacement)( HWND hwnd, WINDOWPLACEMENT *placement ); - BOOL (WINAPI *pNtUserHideCaret)( HWND hwnd ); BOOL (WINAPI *pNtUserHiliteMenuItem)( HWND hwnd, HMENU handle, UINT item, UINT hilite ); HICON (WINAPI *pNtUserInternalGetWindowIcon)( HWND hwnd, UINT type ); BOOL (WINAPI *pNtUserMoveWindow)( HWND hwnd, INT x, INT y, INT cx, INT cy, BOOL repaint ); @@ -226,12 +223,9 @@ struct unix_funcs BOOL (WINAPI *pNtUserScrollDC)( HDC hdc, INT dx, INT dy, const RECT *scroll, const RECT *clip, HRGN ret_update_rgn, RECT *update_rect ); HPALETTE (WINAPI *pNtUserSelectPalette)( HDC hdc, HPALETTE hpal, WORD bkg ); - HWND (WINAPI *pNtUserSetActiveWindow)( HWND hwnd ); - HWND (WINAPI *pNtUserSetCapture)( HWND hwnd ); DWORD (WINAPI *pNtUserSetClassLong)( HWND hwnd, INT offset, LONG newval, BOOL ansi ); ULONG_PTR (WINAPI *pNtUserSetClassLongPtr)( HWND hwnd, INT offset, LONG_PTR newval, BOOL ansi ); WORD (WINAPI *pNtUserSetClassWord)( HWND hwnd, INT offset, WORD newval ); - HWND (WINAPI *pNtUserSetFocus)( HWND hwnd ); void (WINAPI *pNtUserSetInternalWindowPos)( HWND hwnd, UINT cmd, RECT *rect, POINT *pt ); BOOL (WINAPI *pNtUserSetLayeredWindowAttributes)( HWND hwnd, COLORREF key, BYTE alpha, DWORD flags ); BOOL (WINAPI *pNtUserSetMenu)( HWND hwnd, HMENU menu ); @@ -244,14 +238,12 @@ struct unix_funcs BOOL (WINAPI *pNtUserSetWindowPos)( HWND hwnd, HWND after, INT x, INT y, INT cx, INT cy, UINT flags ); int (WINAPI *pNtUserSetWindowRgn)( HWND hwnd, HRGN hrgn, BOOL redraw ); WORD (WINAPI *pNtUserSetWindowWord)( HWND hwnd, INT offset, WORD newval ); - BOOL (WINAPI *pNtUserShowCaret)( HWND hwnd ); BOOL (WINAPI *pNtUserShowScrollBar)( HWND hwnd, INT bar, BOOL show ); BOOL (WINAPI *pNtUserShowWindow)( HWND hwnd, INT cmd ); BOOL (WINAPI *pNtUserShowWindowAsync)( HWND hwnd, INT cmd ); BOOL (WINAPI *pNtUserSystemParametersInfo)( UINT action, UINT val, PVOID ptr, UINT winini ); BOOL (WINAPI *pNtUserSystemParametersInfoForDpi)( UINT action, UINT val, PVOID ptr, UINT winini, UINT dpi ); - BOOL (WINAPI *pNtUserTrackMouseEvent)( TRACKMOUSEEVENT *info ); INT (WINAPI *pNtUserTranslateAccelerator)( HWND hwnd, HACCEL accel, MSG *msg ); BOOL (WINAPI *pNtUserUnregisterClass)( UNICODE_STRING *name, HINSTANCE instance, struct client_menu_name *client_menu_name ); diff --git a/dlls/win32u/wrappers.c b/dlls/win32u/wrappers.c index 98f8638c193..9694c203fcb 100644 --- a/dlls/win32u/wrappers.c +++ b/dlls/win32u/wrappers.c @@ -725,12 +725,6 @@ NTSTATUS WINAPI NtGdiDdDDISetVidPnSourceOwner( const D3DKMT_SETVIDPNSOURCEOWNER return unix_funcs->pNtGdiDdDDISetVidPnSourceOwner( desc ); }
-BOOL WINAPI NtUserCreateCaret( HWND hwnd, HBITMAP bitmap, int width, int height ) -{ - if (!unix_funcs) return 0; - return unix_funcs->pNtUserCreateCaret( hwnd, bitmap, width, height ); -} - HWND WINAPI NtUserCreateWindowEx( DWORD ex_style, UNICODE_STRING *class_name, UNICODE_STRING *version, UNICODE_STRING *window_name, DWORD style, INT x, INT y, INT width, INT height, @@ -770,12 +764,6 @@ BOOL WINAPI NtUserDisableThreadIme( DWORD thread_id ) return unix_funcs->pNtUserDisableThreadIme( thread_id ); }
-BOOL WINAPI NtUserDragDetect( HWND hwnd, int x, int y ) -{ - if (!unix_funcs) return FALSE; - return unix_funcs->pNtUserDragDetect( hwnd, x, y ); -} - BOOL WINAPI NtUserDrawCaptionTemp( HWND hwnd, HDC hdc, const RECT *rect, HFONT font, HICON icon, const WCHAR *str, UINT flags ) { @@ -838,12 +826,6 @@ HMENU WINAPI NtUserGetSystemMenu( HWND hwnd, BOOL revert ) return unix_funcs->pNtUserGetSystemMenu( hwnd, revert ); }
-BOOL WINAPI NtUserHideCaret( HWND hwnd ) -{ - if (!unix_funcs) return FALSE; - return unix_funcs->pNtUserHideCaret( hwnd ); -} - BOOL WINAPI NtUserHiliteMenuItem( HWND hwnd, HMENU handle, UINT item, UINT hilite ) { if (!unix_funcs) return FALSE; @@ -901,18 +883,6 @@ HPALETTE WINAPI NtUserSelectPalette( HDC hdc, HPALETTE hpal, WORD bkg ) return unix_funcs->pNtUserSelectPalette( hdc, hpal, bkg ); }
-HWND WINAPI NtUserSetActiveWindow( HWND hwnd ) -{ - if (!unix_funcs) return 0; - return unix_funcs->pNtUserSetActiveWindow( hwnd ); -} - -HWND WINAPI NtUserSetCapture( HWND hwnd ) -{ - if (!unix_funcs) return 0; - return unix_funcs->pNtUserSetCapture( hwnd ); -} - DWORD WINAPI NtUserSetClassLong( HWND hwnd, INT offset, LONG newval, BOOL ansi ) { if (!unix_funcs) return 0; @@ -931,12 +901,6 @@ WORD WINAPI NtUserSetClassWord( HWND hwnd, INT offset, WORD newval ) return unix_funcs->pNtUserSetClassWord( hwnd, offset, newval ); }
-HWND WINAPI NtUserSetFocus( HWND hwnd ) -{ - if (!unix_funcs) return FALSE; - return unix_funcs->pNtUserSetFocus( hwnd ); -} - void WINAPI NtUserSetInternalWindowPos( HWND hwnd, UINT cmd, RECT *rect, POINT *pt ) { if (!unix_funcs) return; @@ -1009,12 +973,6 @@ WORD WINAPI NtUserSetWindowWord( HWND hwnd, INT offset, WORD newval ) return unix_funcs->pNtUserSetWindowWord( hwnd, offset, newval ); }
-BOOL WINAPI NtUserShowCaret( HWND hwnd ) -{ - if (!unix_funcs) return FALSE; - return unix_funcs->pNtUserShowCaret( hwnd ); -} - BOOL WINAPI NtUserShowScrollBar( HWND hwnd, INT bar, BOOL show ) { if (!unix_funcs) return FALSE; @@ -1045,12 +1003,6 @@ BOOL WINAPI NtUserSystemParametersInfoForDpi( UINT action, UINT val, PVOID ptr, return unix_funcs->pNtUserSystemParametersInfoForDpi( action, val, ptr, winini, dpi ); }
-BOOL WINAPI NtUserTrackMouseEvent( TRACKMOUSEEVENT *info ) -{ - if (!unix_funcs) return FALSE; - return unix_funcs->pNtUserTrackMouseEvent( info ); -} - INT WINAPI NtUserTranslateAccelerator( HWND hwnd, HACCEL accel, MSG *msg ) { if (!unix_funcs) return 0; diff --git a/dlls/wow64win/syscall.h b/dlls/wow64win/syscall.h index 0f6217fee63..7bdf8dd32cd 100644 --- a/dlls/wow64win/syscall.h +++ b/dlls/wow64win/syscall.h @@ -111,6 +111,7 @@ SYSCALL_ENTRY( NtUserCopyAcceleratorTable ) \ SYSCALL_ENTRY( NtUserCountClipboardFormats ) \ SYSCALL_ENTRY( NtUserCreateAcceleratorTable ) \ + SYSCALL_ENTRY( NtUserCreateCaret ) \ SYSCALL_ENTRY( NtUserCreateDesktopEx ) \ SYSCALL_ENTRY( NtUserCreateInputContext ) \ SYSCALL_ENTRY( NtUserCreateWindowStation ) \ @@ -119,6 +120,7 @@ SYSCALL_ENTRY( NtUserDestroyCursor ) \ SYSCALL_ENTRY( NtUserDestroyInputContext ) \ SYSCALL_ENTRY( NtUserDispatchMessage ) \ + SYSCALL_ENTRY( NtUserDragDetect ) \ SYSCALL_ENTRY( NtUserDrawIconEx ) \ SYSCALL_ENTRY( NtUserEmptyClipboard ) \ SYSCALL_ENTRY( NtUserEndMenu ) \ @@ -178,6 +180,7 @@ SYSCALL_ENTRY( NtUserGetUpdateRgn ) \ SYSCALL_ENTRY( NtUserGetUpdatedClipboardFormats ) \ SYSCALL_ENTRY( NtUserGetWindowRgnEx ) \ + SYSCALL_ENTRY( NtUserHideCaret ) \ SYSCALL_ENTRY( NtUserInitializeClientPfnArrays ) \ SYSCALL_ENTRY( NtUserInternalGetWindowText ) \ SYSCALL_ENTRY( NtUserInvalidateRect ) \ @@ -206,11 +209,14 @@ SYSCALL_ENTRY( NtUserRemoveProp ) \ SYSCALL_ENTRY( NtUserScrollWindowEx ) \ SYSCALL_ENTRY( NtUserSendInput ) \ + SYSCALL_ENTRY( NtUserSetActiveWindow ) \ + SYSCALL_ENTRY( NtUserSetCapture ) \ SYSCALL_ENTRY( NtUserSetClipboardData ) \ SYSCALL_ENTRY( NtUserSetClipboardViewer ) \ SYSCALL_ENTRY( NtUserSetCursor ) \ SYSCALL_ENTRY( NtUserSetCursorIconData ) \ SYSCALL_ENTRY( NtUserSetCursorPos ) \ + SYSCALL_ENTRY( NtUserSetFocus ) \ SYSCALL_ENTRY( NtUserSetKeyboardState ) \ SYSCALL_ENTRY( NtUserSetMenuContextHelpId ) \ SYSCALL_ENTRY( NtUserSetMenuDefaultItem ) \ @@ -224,10 +230,12 @@ SYSCALL_ENTRY( NtUserSetTimer ) \ SYSCALL_ENTRY( NtUserSetWinEventHook ) \ SYSCALL_ENTRY( NtUserSetWindowsHookEx ) \ + SYSCALL_ENTRY( NtUserShowCaret ) \ SYSCALL_ENTRY( NtUserShowCursor ) \ SYSCALL_ENTRY( NtUserThunkedMenuInfo ) \ SYSCALL_ENTRY( NtUserThunkedMenuItemInfo ) \ SYSCALL_ENTRY( NtUserToUnicodeEx ) \ + SYSCALL_ENTRY( NtUserTrackMouseEvent ) \ SYSCALL_ENTRY( NtUserTrackPopupMenuEx ) \ SYSCALL_ENTRY( NtUserTranslateMessage ) \ SYSCALL_ENTRY( NtUserUnhookWinEvent ) \ diff --git a/dlls/wow64win/user.c b/dlls/wow64win/user.c index 2eb53272ca4..8c971154448 100644 --- a/dlls/wow64win/user.c +++ b/dlls/wow64win/user.c @@ -375,6 +375,16 @@ NTSTATUS WINAPI wow64_NtUserCreateAcceleratorTable( UINT *args ) return HandleToUlong( NtUserCreateAcceleratorTable( table, count )); }
+NTSTATUS WINAPI wow64_NtUserCreateCaret( UINT *args ) +{ + HWND hwnd = get_handle( &args ); + HBITMAP bitmap = get_handle( &args ); + int width = get_ulong( &args ); + int height = get_ulong( &args ); + + return NtUserCreateCaret( hwnd, bitmap, width, height ); +} + NTSTATUS WINAPI wow64_NtUserCreateDesktopEx( UINT *args ) { OBJECT_ATTRIBUTES32 *attr32 = get_ptr( &args ); @@ -456,6 +466,15 @@ NTSTATUS WINAPI wow64_NtUserDispatchMessage( UINT *args ) return NtUserDispatchMessage( msg_32to64( &msg, msg32 )); }
+NTSTATUS WINAPI wow64_NtUserDragDetect( UINT *args ) +{ + HWND hwnd = get_handle( &args ); + int x = get_ulong( &args ); + int y = get_ulong( &args ); + + return NtUserDragDetect( hwnd, x, y ); +} + NTSTATUS WINAPI wow64_NtUserDrawIconEx( UINT *args ) { HDC hdc = get_handle( &args ); @@ -1202,6 +1221,13 @@ NTSTATUS WINAPI wow64_NtUserGetWindowRgnEx( UINT *args ) return NtUserGetWindowRgnEx( hwnd, hrgn, unk ); }
+NTSTATUS WINAPI wow64_NtUserHideCaret( UINT *args ) +{ + HWND hwnd = get_handle( &args ); + + return NtUserHideCaret( hwnd ); +} + NTSTATUS WINAPI wow64_NtUserInitializeClientPfnArrays( UINT *args ) { FIXME( "\n" ); @@ -1541,6 +1567,20 @@ NTSTATUS WINAPI wow64_NtUserSendInput( UINT *args ) return NtUserSendInput( count, inputs, sizeof(*inputs) ); }
+NTSTATUS WINAPI wow64_NtUserSetActiveWindow( UINT *args ) +{ + HWND hwnd = get_handle( &args ); + + return HandleToUlong( NtUserSetActiveWindow( hwnd )); +} + +NTSTATUS WINAPI wow64_NtUserSetCapture( UINT *args ) +{ + HWND hwnd = get_handle( &args ); + + return HandleToUlong( NtUserSetCapture( hwnd )); +} + NTSTATUS WINAPI wow64_NtUserSetClipboardData( UINT *args ) { UINT format = get_ulong( &args ); @@ -1595,6 +1635,13 @@ NTSTATUS WINAPI wow64_NtUserSetCursorPos( UINT *args ) return NtUserSetCursorPos( x, y ); }
+NTSTATUS WINAPI wow64_NtUserSetFocus( UINT *args ) +{ + HWND hwnd = get_handle( &args ); + + return HandleToUlong( NtUserSetFocus( hwnd )); +} + NTSTATUS WINAPI wow64_NtUserSetKeyboardState( UINT *args ) { BYTE *state = get_ptr( &args ); @@ -1724,6 +1771,13 @@ NTSTATUS WINAPI wow64_NtUserSetWindowsHookEx( UINT *args ) return HandleToUlong( ret ); }
+NTSTATUS WINAPI wow64_NtUserShowCaret( UINT *args ) +{ + HWND hwnd = get_handle( &args ); + + return NtUserShowCaret( hwnd ); +} + NTSTATUS WINAPI wow64_NtUserShowCursor( UINT *args ) { BOOL show = get_ulong( &args ); @@ -1811,6 +1865,30 @@ NTSTATUS WINAPI wow64_NtUserToUnicodeEx( UINT *args ) return NtUserToUnicodeEx( virt, scan, state, str, size, flags, layout ); }
+NTSTATUS WINAPI wow64_NtUserTrackMouseEvent( UINT *args ) +{ + struct + { + DWORD cbSize; + DWORD dwFlags; + UINT32 hwndTrack; + DWORD dwHoverTime; + } *info32 = get_ptr( &args ); + TRACKMOUSEEVENT info; + + if (info32->cbSize != sizeof(*info32)) + { + SetLastError( ERROR_INVALID_PARAMETER ); + return FALSE; + } + + info.cbSize = sizeof(info); + info.dwFlags = info32->dwFlags; + info.hwndTrack = UlongToHandle( info32->hwndTrack ); + info.dwHoverTime = info32->dwHoverTime; + return NtUserTrackMouseEvent( &info ); +} + NTSTATUS WINAPI wow64_NtUserTrackPopupMenuEx( UINT *args ) { HMENU handle = get_handle( &args );