Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
399dfc25
Commit
399dfc25
authored
Jul 10, 2022
by
Jacek Caban
Committed by
Alexandre Julliard
Jul 25, 2022
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
win32u: Use syscall interface for cursor icon functions.
parent
b20f3985
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
109 additions
and
69 deletions
+109
-69
gdiobj.c
dlls/win32u/gdiobj.c
+0
-7
syscall.c
dlls/win32u/syscall.c
+7
-0
win32u.spec
dlls/win32u/win32u.spec
+7
-7
win32u_private.h
dlls/win32u/win32u_private.h
+0
-10
wrappers.c
dlls/win32u/wrappers.c
+0
-45
syscall.h
dlls/wow64win/syscall.h
+7
-0
user.c
dlls/wow64win/user.c
+88
-0
No files found.
dlls/win32u/gdiobj.c
View file @
399dfc25
...
...
@@ -1136,17 +1136,14 @@ static struct unix_funcs unix_funcs =
NtGdiUnrealizeObject
,
NtGdiUpdateColors
,
NtGdiWidenPath
,
NtUserClipCursor
,
NtUserCreateCaret
,
NtUserCreateWindowEx
,
NtUserDeferWindowPosAndBand
,
NtUserDestroyCursor
,
NtUserDestroyMenu
,
NtUserDestroyWindow
,
NtUserDisableThreadIme
,
NtUserDragDetect
,
NtUserDrawCaptionTemp
,
NtUserDrawIconEx
,
NtUserDrawMenuBarTemp
,
NtUserEnableMenuItem
,
NtUserEnableScrollBar
,
...
...
@@ -1155,7 +1152,6 @@ static struct unix_funcs unix_funcs =
NtUserExcludeUpdateRgn
,
NtUserFlashWindowEx
,
NtUserGetClassInfoEx
,
NtUserGetIconInfo
,
NtUserGetMenuBarInfo
,
NtUserGetScrollBarInfo
,
NtUserGetSystemMenu
,
...
...
@@ -1173,8 +1169,6 @@ static struct unix_funcs unix_funcs =
NtUserSetClassLong
,
NtUserSetClassLongPtr
,
NtUserSetClassWord
,
NtUserSetCursor
,
NtUserSetCursorIconData
,
NtUserSetFocus
,
NtUserSetInternalWindowPos
,
NtUserSetLayeredWindowAttributes
,
...
...
@@ -1189,7 +1183,6 @@ static struct unix_funcs unix_funcs =
NtUserSetWindowRgn
,
NtUserSetWindowWord
,
NtUserShowCaret
,
NtUserShowCursor
,
NtUserShowScrollBar
,
NtUserShowWindow
,
NtUserShowWindowAsync
,
...
...
dlls/win32u/syscall.c
View file @
399dfc25
...
...
@@ -117,6 +117,7 @@ static void * const syscalls[] =
NtUserChangeDisplaySettings
,
NtUserCheckMenuItem
,
NtUserChildWindowFromPointEx
,
NtUserClipCursor
,
NtUserCloseClipboard
,
NtUserCloseDesktop
,
NtUserCloseWindowStation
,
...
...
@@ -128,8 +129,10 @@ static void * const syscalls[] =
NtUserCreateWindowStation
,
NtUserDeleteMenu
,
NtUserDestroyAcceleratorTable
,
NtUserDestroyCursor
,
NtUserDestroyInputContext
,
NtUserDispatchMessage
,
NtUserDrawIconEx
,
NtUserEmptyClipboard
,
NtUserEndMenu
,
NtUserEnumDisplayDevices
,
...
...
@@ -157,6 +160,7 @@ static void * const syscalls[] =
NtUserGetDpiForMonitor
,
NtUserGetForegroundWindow
,
NtUserGetGUIThreadInfo
,
NtUserGetIconInfo
,
NtUserGetIconSize
,
NtUserGetKeyNameText
,
NtUserGetKeyState
,
...
...
@@ -217,6 +221,8 @@ static void * const syscalls[] =
NtUserSendInput
,
NtUserSetClipboardData
,
NtUserSetClipboardViewer
,
NtUserSetCursor
,
NtUserSetCursorIconData
,
NtUserSetCursorPos
,
NtUserSetKeyboardState
,
NtUserSetMenuContextHelpId
,
...
...
@@ -231,6 +237,7 @@ static void * const syscalls[] =
NtUserSetTimer
,
NtUserSetWinEventHook
,
NtUserSetWindowsHookEx
,
NtUserShowCursor
,
NtUserThunkedMenuInfo
,
NtUserThunkedMenuItemInfo
,
NtUserToUnicodeEx
,
...
...
dlls/win32u/win32u.spec
View file @
399dfc25
...
...
@@ -792,7 +792,7 @@
@ stub NtUserCheckWindowThreadDesktop
@ stdcall -syscall NtUserChildWindowFromPointEx(long long long long)
@ stub NtUserClearForeground
@ stdcall NtUserClipCursor(ptr)
@ stdcall
-syscall
NtUserClipCursor(ptr)
@ stdcall -syscall NtUserCloseClipboard()
@ stdcall -syscall NtUserCloseDesktop(long)
@ stdcall -syscall NtUserCloseWindowStation(long)
...
...
@@ -829,7 +829,7 @@
@ stdcall -syscall NtUserDestroyAcceleratorTable(long)
@ stub NtUserDestroyActivationGroup
@ stub NtUserDestroyActivationObject
@ stdcall NtUserDestroyCursor(long long)
@ stdcall
-syscall
NtUserDestroyCursor(long long)
@ stub NtUserDestroyDCompositionHwndTarget
@ stdcall -syscall NtUserDestroyInputContext(long)
@ stdcall NtUserDestroyMenu(long)
...
...
@@ -850,7 +850,7 @@
@ stub NtUserDrawAnimatedRects
@ stub NtUserDrawCaption
@ stdcall NtUserDrawCaptionTemp(long long ptr long long wstr long)
@ stdcall NtUserDrawIconEx(long long long long long long long long long)
@ stdcall
-syscall
NtUserDrawIconEx(long long long long long long long long long)
@ stdcall NtUserDrawMenuBarTemp(long long ptr long long)
@ stub NtUserDwmGetRemoteSessionOcclusionEvent
@ stub NtUserDwmGetRemoteSessionOcclusionState
...
...
@@ -934,7 +934,7 @@
@ stub NtUserGetGuiResources
@ stub NtUserGetHDevName
@ stub NtUserGetHimetricScaleFactorFromPixelLocation
@ stdcall NtUserGetIconInfo(long ptr ptr ptr ptr long)
@ stdcall
-syscall
NtUserGetIconInfo(long ptr ptr ptr ptr long)
@ stdcall -syscall NtUserGetIconSize(long long ptr ptr)
@ stub NtUserGetImeHotKey
@ stub NtUserGetImeInfoEx
...
...
@@ -1178,9 +1178,9 @@
@ stdcall -syscall NtUserSetClipboardViewer(long)
@ stub NtUserSetCoreWindow
@ stub NtUserSetCoreWindowPartner
@ stdcall NtUserSetCursor(long)
@ stdcall
-syscall
NtUserSetCursor(long)
@ stub NtUserSetCursorContents
@ stdcall NtUserSetCursorIconData(long ptr ptr ptr)
@ stdcall
-syscall
NtUserSetCursorIconData(long ptr ptr ptr)
@ stdcall -syscall NtUserSetCursorPos(long long)
@ stub NtUserSetDesktopColorTransform
@ stub NtUserSetDesktopVisualInputSink
...
...
@@ -1258,7 +1258,7 @@
@ stub NtUserSetWindowsHookAW
@ stdcall -syscall NtUserSetWindowsHookEx(ptr ptr long long ptr long)
@ stdcall NtUserShowCaret(long)
@ stdcall NtUserShowCursor(long)
@ stdcall
-syscall
NtUserShowCursor(long)
@ stdcall NtUserShowScrollBar(long long long)
@ stub NtUserShowSystemCursor
@ stdcall NtUserShowWindow(long long)
...
...
dlls/win32u/win32u_private.h
View file @
399dfc25
...
...
@@ -186,7 +186,6 @@ struct unix_funcs
BOOL
(
WINAPI
*
pNtGdiUnrealizeObject
)(
HGDIOBJ
obj
);
BOOL
(
WINAPI
*
pNtGdiUpdateColors
)(
HDC
hdc
);
BOOL
(
WINAPI
*
pNtGdiWidenPath
)(
HDC
hdc
);
BOOL
(
WINAPI
*
pNtUserClipCursor
)(
const
RECT
*
rect
);
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
,
...
...
@@ -196,15 +195,12 @@ struct unix_funcs
HDWP
(
WINAPI
*
pNtUserDeferWindowPosAndBand
)(
HDWP
hdwp
,
HWND
hwnd
,
HWND
after
,
INT
x
,
INT
y
,
INT
cx
,
INT
cy
,
UINT
flags
,
UINT
unk1
,
UINT
unk2
);
BOOL
(
WINAPI
*
pNtUserDestroyCursor
)(
HCURSOR
cursor
,
ULONG
arg
);
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
);
BOOL
(
WINAPI
*
pNtUserDrawIconEx
)(
HDC
hdc
,
INT
x0
,
INT
y0
,
HICON
icon
,
INT
width
,
INT
height
,
UINT
istep
,
HBRUSH
hbr
,
UINT
flags
);
DWORD
(
WINAPI
*
pNtUserDrawMenuBarTemp
)(
HWND
hwnd
,
HDC
hdc
,
RECT
*
rect
,
HMENU
handle
,
HFONT
font
);
BOOL
(
WINAPI
*
pNtUserEnableMenuItem
)(
HMENU
handle
,
UINT
id
,
UINT
flags
);
BOOL
(
WINAPI
*
pNtUserEnableScrollBar
)(
HWND
hwnd
,
UINT
bar
,
UINT
flags
);
...
...
@@ -214,8 +210,6 @@ struct unix_funcs
BOOL
(
WINAPI
*
pNtUserFlashWindowEx
)(
FLASHWINFO
*
info
);
ATOM
(
WINAPI
*
pNtUserGetClassInfoEx
)(
HINSTANCE
instance
,
UNICODE_STRING
*
name
,
WNDCLASSEXW
*
wc
,
struct
client_menu_name
*
menu_name
,
BOOL
ansi
);
BOOL
(
WINAPI
*
pNtUserGetIconInfo
)(
HICON
icon
,
ICONINFO
*
info
,
UNICODE_STRING
*
module
,
UNICODE_STRING
*
res_name
,
DWORD
*
bpp
,
LONG
unk
);
BOOL
(
WINAPI
*
pNtUserGetMenuBarInfo
)(
HWND
hwnd
,
LONG
id
,
LONG
item
,
MENUBARINFO
*
info
);
BOOL
(
WINAPI
*
pNtUserGetScrollBarInfo
)(
HWND
hwnd
,
LONG
id
,
SCROLLBARINFO
*
info
);
HMENU
(
WINAPI
*
pNtUserGetSystemMenu
)(
HWND
hwnd
,
BOOL
revert
);
...
...
@@ -237,9 +231,6 @@ struct unix_funcs
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
);
HCURSOR
(
WINAPI
*
pNtUserSetCursor
)(
HCURSOR
cursor
);
BOOL
(
WINAPI
*
pNtUserSetCursorIconData
)(
HCURSOR
cursor
,
UNICODE_STRING
*
module
,
UNICODE_STRING
*
res_name
,
struct
cursoricon_desc
*
desc
);
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
);
...
...
@@ -254,7 +245,6 @@ struct unix_funcs
int
(
WINAPI
*
pNtUserSetWindowRgn
)(
HWND
hwnd
,
HRGN
hrgn
,
BOOL
redraw
);
WORD
(
WINAPI
*
pNtUserSetWindowWord
)(
HWND
hwnd
,
INT
offset
,
WORD
newval
);
BOOL
(
WINAPI
*
pNtUserShowCaret
)(
HWND
hwnd
);
INT
(
WINAPI
*
pNtUserShowCursor
)(
BOOL
show
);
BOOL
(
WINAPI
*
pNtUserShowScrollBar
)(
HWND
hwnd
,
INT
bar
,
BOOL
show
);
BOOL
(
WINAPI
*
pNtUserShowWindow
)(
HWND
hwnd
,
INT
cmd
);
BOOL
(
WINAPI
*
pNtUserShowWindowAsync
)(
HWND
hwnd
,
INT
cmd
);
...
...
dlls/win32u/wrappers.c
View file @
399dfc25
...
...
@@ -725,12 +725,6 @@ NTSTATUS WINAPI NtGdiDdDDISetVidPnSourceOwner( const D3DKMT_SETVIDPNSOURCEOWNER
return
unix_funcs
->
pNtGdiDdDDISetVidPnSourceOwner
(
desc
);
}
BOOL
WINAPI
NtUserClipCursor
(
const
RECT
*
rect
)
{
if
(
!
unix_funcs
)
return
FALSE
;
return
unix_funcs
->
pNtUserClipCursor
(
rect
);
}
BOOL
WINAPI
NtUserCreateCaret
(
HWND
hwnd
,
HBITMAP
bitmap
,
int
width
,
int
height
)
{
if
(
!
unix_funcs
)
return
0
;
...
...
@@ -758,12 +752,6 @@ HDWP WINAPI NtUserDeferWindowPosAndBand( HDWP hdwp, HWND hwnd, HWND after,
flags
,
unk1
,
unk2
);
}
BOOL
WINAPI
NtUserDestroyCursor
(
HCURSOR
cursor
,
ULONG
arg
)
{
if
(
!
unix_funcs
)
return
FALSE
;
return
unix_funcs
->
pNtUserDestroyCursor
(
cursor
,
arg
);
}
BOOL
WINAPI
NtUserDestroyMenu
(
HMENU
handle
)
{
if
(
!
unix_funcs
)
return
FALSE
;
...
...
@@ -795,13 +783,6 @@ BOOL WINAPI NtUserDrawCaptionTemp( HWND hwnd, HDC hdc, const RECT *rect, HFONT f
return
unix_funcs
->
pNtUserDrawCaptionTemp
(
hwnd
,
hdc
,
rect
,
font
,
icon
,
str
,
flags
);
}
BOOL
WINAPI
NtUserDrawIconEx
(
HDC
hdc
,
INT
x0
,
INT
y0
,
HICON
icon
,
INT
width
,
INT
height
,
UINT
istep
,
HBRUSH
hbr
,
UINT
flags
)
{
if
(
!
unix_funcs
)
return
FALSE
;
return
unix_funcs
->
pNtUserDrawIconEx
(
hdc
,
x0
,
y0
,
icon
,
width
,
height
,
istep
,
hbr
,
flags
);
}
DWORD
WINAPI
NtUserDrawMenuBarTemp
(
HWND
hwnd
,
HDC
hdc
,
RECT
*
rect
,
HMENU
handle
,
HFONT
font
)
{
if
(
!
unix_funcs
)
return
0
;
...
...
@@ -845,13 +826,6 @@ ATOM WINAPI NtUserGetClassInfoEx( HINSTANCE instance, UNICODE_STRING *name, WNDC
return
unix_funcs
->
pNtUserGetClassInfoEx
(
instance
,
name
,
wc
,
menu_name
,
ansi
);
}
BOOL
WINAPI
NtUserGetIconInfo
(
HICON
icon
,
ICONINFO
*
info
,
UNICODE_STRING
*
module
,
UNICODE_STRING
*
res_name
,
DWORD
*
bpp
,
LONG
unk
)
{
if
(
!
unix_funcs
)
return
FALSE
;
return
unix_funcs
->
pNtUserGetIconInfo
(
icon
,
info
,
module
,
res_name
,
bpp
,
unk
);
}
BOOL
WINAPI
NtUserGetMenuBarInfo
(
HWND
hwnd
,
LONG
id
,
LONG
item
,
MENUBARINFO
*
info
)
{
if
(
!
unix_funcs
)
return
0
;
...
...
@@ -939,12 +913,6 @@ HWND WINAPI NtUserSetCapture( HWND hwnd )
return
unix_funcs
->
pNtUserSetCapture
(
hwnd
);
}
HCURSOR
WINAPI
NtUserSetCursor
(
HCURSOR
cursor
)
{
if
(
!
unix_funcs
)
return
0
;
return
unix_funcs
->
pNtUserSetCursor
(
cursor
);
}
DWORD
WINAPI
NtUserSetClassLong
(
HWND
hwnd
,
INT
offset
,
LONG
newval
,
BOOL
ansi
)
{
if
(
!
unix_funcs
)
return
0
;
...
...
@@ -963,13 +931,6 @@ WORD WINAPI NtUserSetClassWord( HWND hwnd, INT offset, WORD newval )
return
unix_funcs
->
pNtUserSetClassWord
(
hwnd
,
offset
,
newval
);
}
BOOL
WINAPI
NtUserSetCursorIconData
(
HCURSOR
cursor
,
UNICODE_STRING
*
module
,
UNICODE_STRING
*
res_name
,
struct
cursoricon_desc
*
desc
)
{
if
(
!
unix_funcs
)
return
FALSE
;
return
unix_funcs
->
pNtUserSetCursorIconData
(
cursor
,
module
,
res_name
,
desc
);
}
HWND
WINAPI
NtUserSetFocus
(
HWND
hwnd
)
{
if
(
!
unix_funcs
)
return
FALSE
;
...
...
@@ -1054,12 +1015,6 @@ BOOL WINAPI NtUserShowCaret( HWND hwnd )
return
unix_funcs
->
pNtUserShowCaret
(
hwnd
);
}
INT
WINAPI
NtUserShowCursor
(
BOOL
show
)
{
if
(
!
unix_funcs
)
return
0
;
return
unix_funcs
->
pNtUserShowCursor
(
show
);
}
BOOL
WINAPI
NtUserShowScrollBar
(
HWND
hwnd
,
INT
bar
,
BOOL
show
)
{
if
(
!
unix_funcs
)
return
FALSE
;
...
...
dlls/wow64win/syscall.h
View file @
399dfc25
...
...
@@ -104,6 +104,7 @@
SYSCALL_ENTRY( NtUserChangeDisplaySettings ) \
SYSCALL_ENTRY( NtUserCheckMenuItem ) \
SYSCALL_ENTRY( NtUserChildWindowFromPointEx ) \
SYSCALL_ENTRY( NtUserClipCursor ) \
SYSCALL_ENTRY( NtUserCloseClipboard ) \
SYSCALL_ENTRY( NtUserCloseDesktop ) \
SYSCALL_ENTRY( NtUserCloseWindowStation ) \
...
...
@@ -115,8 +116,10 @@
SYSCALL_ENTRY( NtUserCreateWindowStation ) \
SYSCALL_ENTRY( NtUserDeleteMenu ) \
SYSCALL_ENTRY( NtUserDestroyAcceleratorTable ) \
SYSCALL_ENTRY( NtUserDestroyCursor ) \
SYSCALL_ENTRY( NtUserDestroyInputContext ) \
SYSCALL_ENTRY( NtUserDispatchMessage ) \
SYSCALL_ENTRY( NtUserDrawIconEx ) \
SYSCALL_ENTRY( NtUserEmptyClipboard ) \
SYSCALL_ENTRY( NtUserEndMenu ) \
SYSCALL_ENTRY( NtUserEnumDisplayDevices ) \
...
...
@@ -144,6 +147,7 @@
SYSCALL_ENTRY( NtUserGetDpiForMonitor ) \
SYSCALL_ENTRY( NtUserGetForegroundWindow ) \
SYSCALL_ENTRY( NtUserGetGUIThreadInfo ) \
SYSCALL_ENTRY( NtUserGetIconInfo ) \
SYSCALL_ENTRY( NtUserGetIconSize ) \
SYSCALL_ENTRY( NtUserGetKeyNameText ) \
SYSCALL_ENTRY( NtUserGetKeyState ) \
...
...
@@ -204,6 +208,8 @@
SYSCALL_ENTRY( NtUserSendInput ) \
SYSCALL_ENTRY( NtUserSetClipboardData ) \
SYSCALL_ENTRY( NtUserSetClipboardViewer ) \
SYSCALL_ENTRY( NtUserSetCursor ) \
SYSCALL_ENTRY( NtUserSetCursorIconData ) \
SYSCALL_ENTRY( NtUserSetCursorPos ) \
SYSCALL_ENTRY( NtUserSetKeyboardState ) \
SYSCALL_ENTRY( NtUserSetMenuContextHelpId ) \
...
...
@@ -218,6 +224,7 @@
SYSCALL_ENTRY( NtUserSetTimer ) \
SYSCALL_ENTRY( NtUserSetWinEventHook ) \
SYSCALL_ENTRY( NtUserSetWindowsHookEx ) \
SYSCALL_ENTRY( NtUserShowCursor ) \
SYSCALL_ENTRY( NtUserThunkedMenuInfo ) \
SYSCALL_ENTRY( NtUserThunkedMenuItemInfo ) \
SYSCALL_ENTRY( NtUserToUnicodeEx ) \
...
...
dlls/wow64win/user.c
View file @
399dfc25
...
...
@@ -327,6 +327,13 @@ NTSTATUS WINAPI wow64_NtUserChildWindowFromPointEx( UINT *args )
return
HandleToUlong
(
NtUserChildWindowFromPointEx
(
parent
,
x
,
y
,
flags
));
}
NTSTATUS
WINAPI
wow64_NtUserClipCursor
(
UINT
*
args
)
{
const
RECT
*
rect
=
get_ptr
(
&
args
);
return
NtUserClipCursor
(
rect
);
}
NTSTATUS
WINAPI
wow64_NtUserCloseClipboard
(
UINT
*
args
)
{
return
NtUserCloseClipboard
();
...
...
@@ -426,6 +433,14 @@ NTSTATUS WINAPI wow64_NtUserDestroyAcceleratorTable( UINT *args )
return
NtUserDestroyAcceleratorTable
(
handle
);
}
NTSTATUS
WINAPI
wow64_NtUserDestroyCursor
(
UINT
*
args
)
{
HCURSOR
cursor
=
get_handle
(
&
args
);
ULONG
arg
=
get_ulong
(
&
args
);
return
NtUserDestroyCursor
(
cursor
,
arg
);
}
NTSTATUS
WINAPI
wow64_NtUserDestroyInputContext
(
UINT
*
args
)
{
HIMC
handle
=
get_handle
(
&
args
);
...
...
@@ -441,6 +456,21 @@ NTSTATUS WINAPI wow64_NtUserDispatchMessage( UINT *args )
return
NtUserDispatchMessage
(
msg_32to64
(
&
msg
,
msg32
));
}
NTSTATUS
WINAPI
wow64_NtUserDrawIconEx
(
UINT
*
args
)
{
HDC
hdc
=
get_handle
(
&
args
);
int
x0
=
get_ulong
(
&
args
);
int
y0
=
get_ulong
(
&
args
);
HICON
icon
=
get_handle
(
&
args
);
int
width
=
get_ulong
(
&
args
);
int
height
=
get_ulong
(
&
args
);
UINT
istep
=
get_ulong
(
&
args
);
HBRUSH
hbr
=
get_handle
(
&
args
);
UINT
flags
=
get_ulong
(
&
args
);
return
NtUserDrawIconEx
(
hdc
,
x0
,
y0
,
icon
,
width
,
height
,
istep
,
hbr
,
flags
);
}
NTSTATUS
WINAPI
wow64_NtUserEmptyClipboard
(
UINT
*
args
)
{
return
NtUserEmptyClipboard
();
...
...
@@ -724,6 +754,39 @@ NTSTATUS WINAPI wow64_NtUserGetGUIThreadInfo( UINT *args )
return
TRUE
;
}
NTSTATUS
WINAPI
wow64_NtUserGetIconInfo
(
UINT
*
args
)
{
HICON
icon
=
get_handle
(
&
args
);
struct
{
BOOL
fIcon
;
DWORD
xHotspot
;
DWORD
yHotspot
;
UINT32
hbmMask
;
UINT32
hbmColor
;
}
*
info32
=
get_ptr
(
&
args
);
UNICODE_STRING32
*
module32
=
get_ptr
(
&
args
);
UNICODE_STRING32
*
res_name32
=
get_ptr
(
&
args
);
DWORD
*
bpp
=
get_ptr
(
&
args
);
LONG
unk
=
get_ulong
(
&
args
);
ICONINFO
info
;
UNICODE_STRING
module
,
res_name
;
if
(
!
NtUserGetIconInfo
(
icon
,
&
info
,
unicode_str_32to64
(
&
module
,
module32
),
unicode_str_32to64
(
&
res_name
,
res_name32
),
bpp
,
unk
))
return
FALSE
;
info32
->
fIcon
=
info
.
fIcon
;
info32
->
xHotspot
=
info
.
xHotspot
;
info32
->
yHotspot
=
info
.
yHotspot
;
info32
->
hbmMask
=
HandleToUlong
(
info
.
hbmMask
);
info32
->
hbmColor
=
HandleToUlong
(
info
.
hbmColor
);
if
(
module32
)
module32
->
Length
=
module
.
Length
;
if
(
res_name32
)
res_name32
->
Length
=
res_name
.
Length
;
return
TRUE
;
}
NTSTATUS
WINAPI
wow64_NtUserGetIconSize
(
UINT
*
args
)
{
HICON
handle
=
get_handle
(
&
args
);
...
...
@@ -1506,6 +1569,24 @@ NTSTATUS WINAPI wow64_NtUserSetClipboardViewer( UINT *args )
return
HandleToUlong
(
NtUserSetClipboardViewer
(
hwnd
));
}
NTSTATUS
WINAPI
wow64_NtUserSetCursor
(
UINT
*
args
)
{
HCURSOR
cursor
=
get_handle
(
&
args
);
return
HandleToUlong
(
NtUserSetCursor
(
cursor
));
}
NTSTATUS
WINAPI
wow64_NtUserSetCursorIconData
(
UINT
*
args
)
{
HCURSOR
cursor
=
get_handle
(
&
args
);
UNICODE_STRING32
*
module32
=
get_ptr
(
&
args
);
UNICODE_STRING32
*
res_name32
=
get_ptr
(
&
args
);
void
*
desc
=
get_ptr
(
&
args
);
FIXME
(
"%p %p %p %p
\n
"
,
cursor
,
module32
,
res_name32
,
desc
);
return
0
;
}
NTSTATUS
WINAPI
wow64_NtUserSetCursorPos
(
UINT
*
args
)
{
INT
x
=
get_ulong
(
&
args
);
...
...
@@ -1643,6 +1724,13 @@ NTSTATUS WINAPI wow64_NtUserSetWindowsHookEx( UINT *args )
return
HandleToUlong
(
ret
);
}
NTSTATUS
WINAPI
wow64_NtUserShowCursor
(
UINT
*
args
)
{
BOOL
show
=
get_ulong
(
&
args
);
return
NtUserShowCursor
(
show
);
}
NTSTATUS
WINAPI
wow64_NtUserThunkedMenuInfo
(
UINT
*
args
)
{
HMENU
menu
=
get_handle
(
&
args
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment