From b82ce81957a44ac7b80778b5fbe57d3da2c00535 Mon Sep 17 00:00:00 2001 From: Aric Stewart Date: Mon, 19 Sep 2016 08:45:34 -0500 Subject: [PATCH] hid: Stub HidP_TranslateUsagesToI8042ScanCodes. Signed-off-by: Aric Stewart Signed-off-by: Sebastian Lackner Signed-off-by: Alexandre Julliard --- dlls/hid/hid.spec | 2 +- dlls/hid/hidp.c | 12 ++++++++++++ include/ddk/hidpi.h | 29 +++++++++++++++++++++++++++++ 3 files changed, 42 insertions(+), 1 deletion(-) diff --git a/dlls/hid/hid.spec b/dlls/hid/hid.spec index 4c5e505e7de..2131af27928 100644 --- a/dlls/hid/hid.spec +++ b/dlls/hid/hid.spec @@ -39,6 +39,6 @@ @ stub HidP_SetUsageValue @ stub HidP_SetUsageValueArray @ stub HidP_SetUsages -@ stub HidP_TranslateUsagesToI8042ScanCodes +@ stdcall HidP_TranslateUsagesToI8042ScanCodes(ptr long long ptr ptr ptr) @ stub HidP_UnsetUsages @ stub HidP_UsageListDifference diff --git a/dlls/hid/hidp.c b/dlls/hid/hidp.c index 3d7a12eae47..4a0fa64df1a 100644 --- a/dlls/hid/hidp.c +++ b/dlls/hid/hidp.c @@ -23,6 +23,7 @@ #include #define NONAMELESSUNION +#include "ntstatus.h" #define WIN32_NO_STATUS #include "windef.h" #include "winbase.h" @@ -519,3 +520,14 @@ ULONG WINAPI HidP_MaxUsageListLength(HIDP_REPORT_TYPE ReportType, USAGE UsagePag } return count; } + +NTSTATUS WINAPI HidP_TranslateUsagesToI8042ScanCodes(USAGE *ChangedUsageList, + ULONG UsageListLength, HIDP_KEYBOARD_DIRECTION KeyAction, + HIDP_KEYBOARD_MODIFIER_STATE *ModifierState, + PHIDP_INSERT_SCANCODES InsertCodesProcedure, VOID *InsertCodesContext) +{ + FIXME("stub: %p, %i, %i, %p, %p, %p\n", ChangedUsageList, UsageListLength, + KeyAction, ModifierState, InsertCodesProcedure, InsertCodesContext); + + return STATUS_NOT_IMPLEMENTED; +} diff --git a/include/ddk/hidpi.h b/include/ddk/hidpi.h index 4cfac613b36..eadc44d8065 100644 --- a/include/ddk/hidpi.h +++ b/include/ddk/hidpi.h @@ -136,6 +136,34 @@ typedef struct _HIDP_CAPS USHORT NumberFeatureDataIndices; } HIDP_CAPS, *PHIDP_CAPS; +typedef enum _HIDP_KEYBOARD_DIRECTION { + HidP_Keyboard_Break, + HidP_Keyboard_Make +} HIDP_KEYBOARD_DIRECTION; + +typedef struct _HIDP_KEYBOARD_MODIFIER_STATE { + union { + struct { + ULONG LeftControl: 1; + ULONG LeftShift: 1; + ULONG LeftAlt: 1; + ULONG LeftGUI: 1; + ULONG RightControl: 1; + ULONG RightShift: 1; + ULONG RightAlt: 1; + ULONG RigthGUI: 1; + ULONG CapsLock: 1; + ULONG ScollLock: 1; + ULONG NumLock: 1; + ULONG Reserved: 21; + } DUMMYSTRUCTNAME; + ULONG ul; + } DUMMYUNIONNAME; +} HIDP_KEYBOARD_MODIFIER_STATE, *PHIDP_KEYBOARD_MODIFIER_STATE; + +typedef BOOLEAN (NTAPI *PHIDP_INSERT_SCANCODES) (VOID *Context, CHAR *NewScanCodes, ULONG Length); + + NTSTATUS WINAPI HidP_GetButtonCaps(HIDP_REPORT_TYPE ReportType, PHIDP_BUTTON_CAPS ButtonCaps, PUSHORT ButtonCapsLength, PHIDP_PREPARSED_DATA PreparsedData); NTSTATUS WINAPI HidP_GetCaps(PHIDP_PREPARSED_DATA PreparsedData, PHIDP_CAPS Capabilities); NTSTATUS WINAPI HidP_GetUsages(HIDP_REPORT_TYPE ReportType, USAGE UsagePage, USHORT LinkCollection, PUSAGE UsageList, PULONG UsageLength, PHIDP_PREPARSED_DATA PreparsedData, PCHAR Report, ULONG ReportLength); @@ -144,6 +172,7 @@ NTSTATUS WINAPI HidP_GetValueCaps(HIDP_REPORT_TYPE ReportType, PHIDP_VALUE_CAPS NTSTATUS WINAPI HidP_InitializeReportForID(HIDP_REPORT_TYPE ReportType, UCHAR ReportID, PHIDP_PREPARSED_DATA PreparsedData, PCHAR Report, ULONG ReportLength); ULONG WINAPI HidP_MaxUsageListLength(HIDP_REPORT_TYPE ReportType, USAGE UsagePage, PHIDP_PREPARSED_DATA PreparsedData); NTSTATUS WINAPI HidP_GetScaledUsageValue(HIDP_REPORT_TYPE ReportType, USAGE UsagePage, USHORT LinkCollection, USAGE Usage, PLONG UsageValue, PHIDP_PREPARSED_DATA PreparsedData, PCHAR Report, ULONG ReportLength); +NTSTATUS WINAPI HidP_TranslateUsagesToI8042ScanCodes(USAGE *ChangedUsageList, ULONG UsageListLength, HIDP_KEYBOARD_DIRECTION KeyAction, HIDP_KEYBOARD_MODIFIER_STATE *ModifierState, PHIDP_INSERT_SCANCODES InsertCodesProcedure, VOID *InsertCodesContext); #ifndef FACILITY_HID_ERROR_CODE #define FACILITY_HID_ERROR_CODE 0x11