Jacek Caban : win32u: Move NtUserSetKeyboardState implementation from user32.
Alexandre Julliard
julliard at winehq.org
Tue Nov 16 16:32:27 CST 2021
Module: wine
Branch: master
Commit: 05db9f63e1319c7b35ba2fe997f87c487d75fcc1
URL: https://source.winehq.org/git/wine.git/?a=commit;h=05db9f63e1319c7b35ba2fe997f87c487d75fcc1
Author: Jacek Caban <jacek at codeweavers.com>
Date: Tue Nov 16 12:33:36 2021 +0100
win32u: Move NtUserSetKeyboardState implementation from user32.
Signed-off-by: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Huw Davies <huw at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/user32/input.c | 17 -----------------
dlls/user32/user32.spec | 2 +-
dlls/win32u/input.c | 16 ++++++++++++++++
dlls/win32u/syscall.c | 1 +
dlls/win32u/win32u.spec | 2 +-
dlls/wow64win/syscall.h | 1 +
dlls/wow64win/user.c | 7 +++++++
7 files changed, 27 insertions(+), 19 deletions(-)
diff --git a/dlls/user32/input.c b/dlls/user32/input.c
index 08b5cffaa5f..fc6b6fa5822 100644
--- a/dlls/user32/input.c
+++ b/dlls/user32/input.c
@@ -593,23 +593,6 @@ BOOL WINAPI GetLastInputInfo(PLASTINPUTINFO plii)
}
-/**********************************************************************
- * SetKeyboardState (USER32.@)
- */
-BOOL WINAPI SetKeyboardState( LPBYTE state )
-{
- BOOL ret;
-
- SERVER_START_REQ( set_key_state )
- {
- wine_server_add_data( req, state, 256 );
- ret = !wine_server_call_err( req );
- }
- SERVER_END_REQ;
- return ret;
-}
-
-
/**********************************************************************
* VkKeyScanA (USER32.@)
*
diff --git a/dlls/user32/user32.spec b/dlls/user32/user32.spec
index c4013b3dcfa..e48f30b46ca 100644
--- a/dlls/user32/user32.spec
+++ b/dlls/user32/user32.spec
@@ -673,7 +673,7 @@
@ stdcall SetForegroundWindow(long)
@ stdcall SetGestureConfig(ptr long long ptr long)
@ stdcall SetInternalWindowPos(long long ptr ptr)
-@ stdcall SetKeyboardState(ptr)
+@ stdcall SetKeyboardState(ptr) NtUserSetKeyboardState
@ stdcall SetLastErrorEx(long long)
@ stdcall SetLayeredWindowAttributes(ptr long long long)
@ stdcall SetLogonNotifyWindow(long long)
diff --git a/dlls/win32u/input.c b/dlls/win32u/input.c
index 4e790257ab1..feab4693fad 100644
--- a/dlls/win32u/input.c
+++ b/dlls/win32u/input.c
@@ -93,3 +93,19 @@ BOOL WINAPI NtUserGetKeyboardState( BYTE *state )
SERVER_END_REQ;
return ret;
}
+
+/**********************************************************************
+ * NtUserSetKeyboardState (win32u.@)
+ */
+BOOL WINAPI NtUserSetKeyboardState( BYTE *state )
+{
+ BOOL ret;
+
+ SERVER_START_REQ( set_key_state )
+ {
+ wine_server_add_data( req, state, 256 );
+ ret = !wine_server_call_err( req );
+ }
+ SERVER_END_REQ;
+ return ret;
+}
diff --git a/dlls/win32u/syscall.c b/dlls/win32u/syscall.c
index a7c08c5cef6..d1ddc429061 100644
--- a/dlls/win32u/syscall.c
+++ b/dlls/win32u/syscall.c
@@ -123,6 +123,7 @@ static void * const syscalls[] =
NtUserOpenWindowStation,
NtUserRemoveClipboardFormatListener,
NtUserRemoveProp,
+ NtUserSetKeyboardState,
NtUserSetObjectInformation,
NtUserSetProcessWindowStation,
NtUserSetProp,
diff --git a/dlls/win32u/win32u.spec b/dlls/win32u/win32u.spec
index e4b31efe436..df48dfe9586 100644
--- a/dlls/win32u/win32u.spec
+++ b/dlls/win32u/win32u.spec
@@ -1202,7 +1202,7 @@
@ stub NtUserSetInteractiveControlFocus
@ stub NtUserSetInteractiveCtrlRotationAngle
@ stub NtUserSetInternalWindowPos
-@ stub NtUserSetKeyboardState
+@ stdcall -syscall NtUserSetKeyboardState(ptr)
@ stub NtUserSetLayeredWindowAttributes
@ stub NtUserSetMagnificationDesktopMagnifierOffsetsDWMUpdated
@ stub NtUserSetManipulationInputTarget
diff --git a/dlls/wow64win/syscall.h b/dlls/wow64win/syscall.h
index 7c2ccbe63c7..09a281b5d14 100644
--- a/dlls/wow64win/syscall.h
+++ b/dlls/wow64win/syscall.h
@@ -110,6 +110,7 @@
SYSCALL_ENTRY( NtUserOpenWindowStation ) \
SYSCALL_ENTRY( NtUserRemoveClipboardFormatListener ) \
SYSCALL_ENTRY( NtUserRemoveProp ) \
+ SYSCALL_ENTRY( NtUserSetKeyboardState ) \
SYSCALL_ENTRY( NtUserSetObjectInformation ) \
SYSCALL_ENTRY( NtUserSetProcessWindowStation ) \
SYSCALL_ENTRY( NtUserSetProp ) \
diff --git a/dlls/wow64win/user.c b/dlls/wow64win/user.c
index a563e78a8f5..4c47b8937cf 100644
--- a/dlls/wow64win/user.c
+++ b/dlls/wow64win/user.c
@@ -251,3 +251,10 @@ NTSTATUS WINAPI wow64_NtUserGetKeyboardState( UINT *args )
return NtUserGetKeyboardState( state );
}
+
+NTSTATUS WINAPI wow64_NtUserSetKeyboardState( UINT *args )
+{
+ BYTE *state = get_ptr( &args );
+
+ return NtUserSetKeyboardState( state );
+}
More information about the wine-cvs
mailing list