diff --git a/reactos/subsystems/win32/win32k/include/input.h b/reactos/subsystems/win32/win32k/include/input.h index 4619b680c27..bee57e3653e 100644 --- a/reactos/subsystems/win32/win32k/include/input.h +++ b/reactos/subsystems/win32/win32k/include/input.h @@ -3,6 +3,24 @@ #include +typedef struct _KBDRVFILE +{ + PSINGLE_LIST_ENTRY pkbdfChain; + WCHAR wcKBDF[9]; // used w GetKeyboardLayoutName same as wszKLID. + struct _KBDTABLES* KBTables; // KBDTABLES in ntoskrnl/include/internal/kbd.h +} KBDRVFILE, *PKBDRVFILE; + +typedef struct _KBL +{ + PLIST_ENTRY pklChain; + DWORD dwKBLFlags; + HKL hkl; + PKBDRVFILE pkbdf; +} KBL, *PKBL; + +#define KBL_UNLOADED 0x2000000 +#define KBL_RESET 0x4000000 + NTSTATUS FASTCALL InitInputImpl(VOID); NTSTATUS FASTCALL diff --git a/reactos/subsystems/win32/win32k/ntuser/keyboard.c b/reactos/subsystems/win32/win32k/ntuser/keyboard.c index d97660630a6..e8ea2681b48 100644 --- a/reactos/subsystems/win32/win32k/ntuser/keyboard.c +++ b/reactos/subsystems/win32/win32k/ntuser/keyboard.c @@ -53,6 +53,9 @@ BYTE gQueueKeyStateTable[256]; +PKBDRVFILE KBLList = NULL; // Keyboard layout list. + + /* FUNCTIONS *****************************************************************/ /* Initialization -- Right now, just zero the key state and init the lock */