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
c77261dd
Commit
c77261dd
authored
Jan 20, 2024
by
Rémi Bernon
Committed by
Alexandre Julliard
Feb 28, 2024
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
win32u: Introduce new NtUserSwitchDesktop syscall stub.
parent
d287548c
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
71 additions
and
62 deletions
+71
-62
user32.spec
dlls/user32/user32.spec
+1
-1
win.c
dlls/user32/win.c
+0
-12
main.c
dlls/win32u/main.c
+5
-0
win32syscalls.h
dlls/win32u/win32syscalls.h
+50
-48
win32u.spec
dlls/win32u/win32u.spec
+1
-1
winstation.c
dlls/win32u/winstation.c
+6
-0
user.c
dlls/wow64win/user.c
+7
-0
ntuser.h
include/ntuser.h
+1
-0
No files found.
dlls/user32/user32.spec
View file @
c77261dd
...
...
@@ -758,7 +758,7 @@
# @ stub SoftModalMessageBox
@ stdcall SubtractRect(ptr ptr ptr)
@ stdcall SwapMouseButton(long)
@ stdcall SwitchDesktop(long)
@ stdcall SwitchDesktop(long)
NtUserSwitchDesktop
@ stdcall SwitchToThisWindow(long long)
# @ stub SysErrorBox
@ stdcall SystemParametersInfoA(long long ptr long)
...
...
dlls/user32/win.c
View file @
c77261dd
...
...
@@ -1571,18 +1571,6 @@ BOOL WINAPI DECLSPEC_HOTPATCH GetWindowInfo( HWND hwnd, WINDOWINFO *info )
return
NtUserGetWindowInfo
(
hwnd
,
info
);
}
/******************************************************************************
* SwitchDesktop (USER32.@)
*
* NOTES: Sets the current input or interactive desktop.
*/
BOOL
WINAPI
SwitchDesktop
(
HDESK
hDesktop
)
{
FIXME
(
"(hwnd %p) stub!
\n
"
,
hDesktop
);
return
TRUE
;
}
/*****************************************************************************
* UpdateLayeredWindowIndirect (USER32.@)
*/
...
...
dlls/win32u/main.c
View file @
c77261dd
...
...
@@ -2035,6 +2035,11 @@ BOOL SYSCALL_API NtUserShowWindowAsync( HWND hwnd, INT cmd )
SYSCALL_FUNC
(
NtUserShowWindowAsync
);
}
BOOL
SYSCALL_API
NtUserSwitchDesktop
(
HDESK
handle
)
{
SYSCALL_FUNC
(
NtUserSwitchDesktop
);
}
BOOL
SYSCALL_API
NtUserSystemParametersInfo
(
UINT
action
,
UINT
val
,
void
*
ptr
,
UINT
winini
)
{
SYSCALL_FUNC
(
NtUserSystemParametersInfo
);
...
...
dlls/win32u/win32syscalls.h
View file @
c77261dd
...
...
@@ -379,30 +379,31 @@
SYSCALL_ENTRY( 0x0177, NtUserShowScrollBar, 12 ) \
SYSCALL_ENTRY( 0x0178, NtUserShowWindow, 8 ) \
SYSCALL_ENTRY( 0x0179, NtUserShowWindowAsync, 8 ) \
SYSCALL_ENTRY( 0x017a, NtUserSystemParametersInfo, 16 ) \
SYSCALL_ENTRY( 0x017b, NtUserSystemParametersInfoForDpi, 20 ) \
SYSCALL_ENTRY( 0x017c, NtUserThunkedMenuInfo, 8 ) \
SYSCALL_ENTRY( 0x017d, NtUserThunkedMenuItemInfo, 24 ) \
SYSCALL_ENTRY( 0x017e, NtUserToUnicodeEx, 28 ) \
SYSCALL_ENTRY( 0x017f, NtUserTrackMouseEvent, 4 ) \
SYSCALL_ENTRY( 0x0180, NtUserTrackPopupMenuEx, 24 ) \
SYSCALL_ENTRY( 0x0181, NtUserTranslateAccelerator, 12 ) \
SYSCALL_ENTRY( 0x0182, NtUserTranslateMessage, 8 ) \
SYSCALL_ENTRY( 0x0183, NtUserUnhookWinEvent, 4 ) \
SYSCALL_ENTRY( 0x0184, NtUserUnhookWindowsHookEx, 4 ) \
SYSCALL_ENTRY( 0x0185, NtUserUnregisterClass, 12 ) \
SYSCALL_ENTRY( 0x0186, NtUserUnregisterHotKey, 8 ) \
SYSCALL_ENTRY( 0x0187, NtUserUpdateInputContext, 12 ) \
SYSCALL_ENTRY( 0x0188, NtUserUpdateLayeredWindow, 40 ) \
SYSCALL_ENTRY( 0x0189, NtUserValidateRect, 8 ) \
SYSCALL_ENTRY( 0x018a, NtUserVkKeyScanEx, 8 ) \
SYSCALL_ENTRY( 0x018b, NtUserWaitForInputIdle, 12 ) \
SYSCALL_ENTRY( 0x018c, NtUserWaitMessage, 0 ) \
SYSCALL_ENTRY( 0x018d, NtUserWindowFromDC, 4 ) \
SYSCALL_ENTRY( 0x018e, NtUserWindowFromPoint, 8 ) \
SYSCALL_ENTRY( 0x018f, __wine_get_file_outline_text_metric, 16 ) \
SYSCALL_ENTRY( 0x0190, __wine_get_icm_profile, 16 ) \
SYSCALL_ENTRY( 0x0191, __wine_send_input, 12 )
SYSCALL_ENTRY( 0x017a, NtUserSwitchDesktop, 4 ) \
SYSCALL_ENTRY( 0x017b, NtUserSystemParametersInfo, 16 ) \
SYSCALL_ENTRY( 0x017c, NtUserSystemParametersInfoForDpi, 20 ) \
SYSCALL_ENTRY( 0x017d, NtUserThunkedMenuInfo, 8 ) \
SYSCALL_ENTRY( 0x017e, NtUserThunkedMenuItemInfo, 24 ) \
SYSCALL_ENTRY( 0x017f, NtUserToUnicodeEx, 28 ) \
SYSCALL_ENTRY( 0x0180, NtUserTrackMouseEvent, 4 ) \
SYSCALL_ENTRY( 0x0181, NtUserTrackPopupMenuEx, 24 ) \
SYSCALL_ENTRY( 0x0182, NtUserTranslateAccelerator, 12 ) \
SYSCALL_ENTRY( 0x0183, NtUserTranslateMessage, 8 ) \
SYSCALL_ENTRY( 0x0184, NtUserUnhookWinEvent, 4 ) \
SYSCALL_ENTRY( 0x0185, NtUserUnhookWindowsHookEx, 4 ) \
SYSCALL_ENTRY( 0x0186, NtUserUnregisterClass, 12 ) \
SYSCALL_ENTRY( 0x0187, NtUserUnregisterHotKey, 8 ) \
SYSCALL_ENTRY( 0x0188, NtUserUpdateInputContext, 12 ) \
SYSCALL_ENTRY( 0x0189, NtUserUpdateLayeredWindow, 40 ) \
SYSCALL_ENTRY( 0x018a, NtUserValidateRect, 8 ) \
SYSCALL_ENTRY( 0x018b, NtUserVkKeyScanEx, 8 ) \
SYSCALL_ENTRY( 0x018c, NtUserWaitForInputIdle, 12 ) \
SYSCALL_ENTRY( 0x018d, NtUserWaitMessage, 0 ) \
SYSCALL_ENTRY( 0x018e, NtUserWindowFromDC, 4 ) \
SYSCALL_ENTRY( 0x018f, NtUserWindowFromPoint, 8 ) \
SYSCALL_ENTRY( 0x0190, __wine_get_file_outline_text_metric, 16 ) \
SYSCALL_ENTRY( 0x0191, __wine_get_icm_profile, 16 ) \
SYSCALL_ENTRY( 0x0192, __wine_send_input, 12 )
#define ALL_SYSCALLS64 \
SYSCALL_ENTRY( 0x0000, NtGdiAbortDoc, 8 ) \
...
...
@@ -783,27 +784,28 @@
SYSCALL_ENTRY( 0x0177, NtUserShowScrollBar, 24 ) \
SYSCALL_ENTRY( 0x0178, NtUserShowWindow, 16 ) \
SYSCALL_ENTRY( 0x0179, NtUserShowWindowAsync, 16 ) \
SYSCALL_ENTRY( 0x017a, NtUserSystemParametersInfo, 32 ) \
SYSCALL_ENTRY( 0x017b, NtUserSystemParametersInfoForDpi, 40 ) \
SYSCALL_ENTRY( 0x017c, NtUserThunkedMenuInfo, 16 ) \
SYSCALL_ENTRY( 0x017d, NtUserThunkedMenuItemInfo, 48 ) \
SYSCALL_ENTRY( 0x017e, NtUserToUnicodeEx, 56 ) \
SYSCALL_ENTRY( 0x017f, NtUserTrackMouseEvent, 8 ) \
SYSCALL_ENTRY( 0x0180, NtUserTrackPopupMenuEx, 48 ) \
SYSCALL_ENTRY( 0x0181, NtUserTranslateAccelerator, 24 ) \
SYSCALL_ENTRY( 0x0182, NtUserTranslateMessage, 16 ) \
SYSCALL_ENTRY( 0x0183, NtUserUnhookWinEvent, 8 ) \
SYSCALL_ENTRY( 0x0184, NtUserUnhookWindowsHookEx, 8 ) \
SYSCALL_ENTRY( 0x0185, NtUserUnregisterClass, 24 ) \
SYSCALL_ENTRY( 0x0186, NtUserUnregisterHotKey, 16 ) \
SYSCALL_ENTRY( 0x0187, NtUserUpdateInputContext, 24 ) \
SYSCALL_ENTRY( 0x0188, NtUserUpdateLayeredWindow, 80 ) \
SYSCALL_ENTRY( 0x0189, NtUserValidateRect, 16 ) \
SYSCALL_ENTRY( 0x018a, NtUserVkKeyScanEx, 16 ) \
SYSCALL_ENTRY( 0x018b, NtUserWaitForInputIdle, 24 ) \
SYSCALL_ENTRY( 0x018c, NtUserWaitMessage, 0 ) \
SYSCALL_ENTRY( 0x018d, NtUserWindowFromDC, 8 ) \
SYSCALL_ENTRY( 0x018e, NtUserWindowFromPoint, 16 ) \
SYSCALL_ENTRY( 0x018f, __wine_get_file_outline_text_metric, 32 ) \
SYSCALL_ENTRY( 0x0190, __wine_get_icm_profile, 32 ) \
SYSCALL_ENTRY( 0x0191, __wine_send_input, 24 )
SYSCALL_ENTRY( 0x017a, NtUserSwitchDesktop, 8 ) \
SYSCALL_ENTRY( 0x017b, NtUserSystemParametersInfo, 32 ) \
SYSCALL_ENTRY( 0x017c, NtUserSystemParametersInfoForDpi, 40 ) \
SYSCALL_ENTRY( 0x017d, NtUserThunkedMenuInfo, 16 ) \
SYSCALL_ENTRY( 0x017e, NtUserThunkedMenuItemInfo, 48 ) \
SYSCALL_ENTRY( 0x017f, NtUserToUnicodeEx, 56 ) \
SYSCALL_ENTRY( 0x0180, NtUserTrackMouseEvent, 8 ) \
SYSCALL_ENTRY( 0x0181, NtUserTrackPopupMenuEx, 48 ) \
SYSCALL_ENTRY( 0x0182, NtUserTranslateAccelerator, 24 ) \
SYSCALL_ENTRY( 0x0183, NtUserTranslateMessage, 16 ) \
SYSCALL_ENTRY( 0x0184, NtUserUnhookWinEvent, 8 ) \
SYSCALL_ENTRY( 0x0185, NtUserUnhookWindowsHookEx, 8 ) \
SYSCALL_ENTRY( 0x0186, NtUserUnregisterClass, 24 ) \
SYSCALL_ENTRY( 0x0187, NtUserUnregisterHotKey, 16 ) \
SYSCALL_ENTRY( 0x0188, NtUserUpdateInputContext, 24 ) \
SYSCALL_ENTRY( 0x0189, NtUserUpdateLayeredWindow, 80 ) \
SYSCALL_ENTRY( 0x018a, NtUserValidateRect, 16 ) \
SYSCALL_ENTRY( 0x018b, NtUserVkKeyScanEx, 16 ) \
SYSCALL_ENTRY( 0x018c, NtUserWaitForInputIdle, 24 ) \
SYSCALL_ENTRY( 0x018d, NtUserWaitMessage, 0 ) \
SYSCALL_ENTRY( 0x018e, NtUserWindowFromDC, 8 ) \
SYSCALL_ENTRY( 0x018f, NtUserWindowFromPoint, 16 ) \
SYSCALL_ENTRY( 0x0190, __wine_get_file_outline_text_metric, 32 ) \
SYSCALL_ENTRY( 0x0191, __wine_get_icm_profile, 32 ) \
SYSCALL_ENTRY( 0x0192, __wine_send_input, 24 )
dlls/win32u/win32u.spec
View file @
c77261dd
...
...
@@ -1270,7 +1270,7 @@
@ stub NtUserSlicerControl
@ stub NtUserSoundSentry
@ stub NtUserStopAndEndInertia
@ st
ub NtUserSwitchDesktop
@ st
dcall -syscall NtUserSwitchDesktop(long)
@ stdcall -syscall NtUserSystemParametersInfo(long long ptr long)
@ stdcall -syscall NtUserSystemParametersInfoForDpi(long long ptr long long)
@ stub NtUserTestForInteractiveUser
...
...
dlls/win32u/winstation.c
View file @
c77261dd
...
...
@@ -293,6 +293,12 @@ HDESK WINAPI NtUserOpenInputDesktop( DWORD flags, BOOL inherit, ACCESS_MASK acce
return
ret
;
}
BOOL
WINAPI
NtUserSwitchDesktop
(
HDESK
desktop
)
{
FIXME
(
"desktop %p stub!
\n
"
,
desktop
);
return
TRUE
;
}
/***********************************************************************
* NtUserGetObjectInformation (win32u.@)
*/
...
...
dlls/wow64win/user.c
View file @
c77261dd
...
...
@@ -4472,6 +4472,13 @@ NTSTATUS WINAPI wow64_NtUserShowWindowAsync( UINT *args )
return
NtUserShowWindowAsync
(
hwnd
,
cmd
);
}
NTSTATUS
WINAPI
wow64_NtUserSwitchDesktop
(
UINT
*
args
)
{
HDESK
handle
=
get_handle
(
&
args
);
return
NtUserSwitchDesktop
(
handle
);
}
NTSTATUS
WINAPI
wow64_NtUserSystemParametersInfo
(
UINT
*
args
)
{
UINT
action
=
get_ulong
(
&
args
);
...
...
include/ntuser.h
View file @
c77261dd
...
...
@@ -784,6 +784,7 @@ W32KAPI BOOL WINAPI NtUserShowWindow( HWND hwnd, INT cmd );
W32KAPI
BOOL
WINAPI
NtUserShowWindowAsync
(
HWND
hwnd
,
INT
cmd
);
W32KAPI
BOOL
WINAPI
NtUserSystemParametersInfo
(
UINT
action
,
UINT
val
,
void
*
ptr
,
UINT
winini
);
W32KAPI
BOOL
WINAPI
NtUserSystemParametersInfoForDpi
(
UINT
action
,
UINT
val
,
PVOID
ptr
,
UINT
winini
,
UINT
dpi
);
W32KAPI
BOOL
WINAPI
NtUserSwitchDesktop
(
HDESK
desktop
);
W32KAPI
BOOL
WINAPI
NtUserThunkedMenuInfo
(
HMENU
menu
,
const
MENUINFO
*
info
);
W32KAPI
UINT
WINAPI
NtUserThunkedMenuItemInfo
(
HMENU
menu
,
UINT
pos
,
UINT
flags
,
UINT
method
,
MENUITEMINFOW
*
info
,
UNICODE_STRING
*
str
);
...
...
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