1 #ifndef _WIN32K_INPUT_H
2 #define _WIN32K_INPUT_H
4 #include <internal/kbd.h>
10 WCHAR Name
[KL_NAMELENGTH
]; // used w GetKeyboardLayoutName same as wszKLID.
11 struct _KBDTABLES
* KBTables
; // KBDTABLES in ntoskrnl/include/internal/kbd.h
15 DWORD klid
; // Low word - language id. High word - device id.
18 typedef struct _ATTACHINFO
20 struct _ATTACHINFO
* paiNext
;
23 } ATTACHINFO
, *PATTACHINFO
;
25 extern PATTACHINFO gpai
;
34 InitKeyboardImpl(VOID
);
35 PUSER_MESSAGE_QUEUE
W32kGetPrimitiveMessageQueue(VOID
);
36 VOID
W32kUnregisterPrimitiveMessageQueue(VOID
);
37 PKBL
W32kGetDefaultKeyLayout(VOID
);
38 VOID FASTCALL
W32kKeyProcessMessage(LPMSG Msg
, PKBDTABLES KeyLayout
, BYTE Prefix
);
39 BOOL FASTCALL
IntBlockInput(PTHREADINFO W32Thread
, BOOL BlockIt
);
40 BOOL FASTCALL
IntMouseInput(MOUSEINPUT
*mi
);
41 BOOL FASTCALL
IntKeyboardInput(KEYBDINPUT
*ki
);
43 BOOL
UserInitDefaultKeyboardLayout();
44 PKBL
UserHklToKbl(HKL hKl
);
45 BOOL FASTCALL
UserAttachThreadInput(PTHREADINFO
,PTHREADINFO
,BOOL
);
46 BOOL FASTCALL
IntConnectThreadInput(PTHREADINFO
,PTHREADINFO
*,PUSER_MESSAGE_QUEUE
*);
48 #define ThreadHasInputAccess(W32Thread) \
51 extern PTHREADINFO ptiRawInput
;
53 #endif /* _WIN32K_INPUT_H */