Removed two-step endpoint/pipe bank clear and switch sequence for smaller, faster...
[pub/lufa.git] / Demos / Device / ClassDriver / Keyboard / Keyboard.c
index 26636bf..db30ac5 100644 (file)
@@ -146,9 +146,7 @@ bool CALLBACK_HID_Device_CreateHIDReport(USB_ClassInfo_HID_Device_t* const HIDIn
        uint8_t ButtonStatus_LCL = Buttons_GetStatus();\r
 \r
        uint8_t UsedKeyCodes = 0;\r
-       \r
-       KeyboardReport->Modifier = HID_KEYBOARD_MODIFER_LEFTSHIFT;\r
-       \r
+               \r
        if (JoyStatus_LCL & JOY_UP)\r
          KeyboardReport->KeyCode[UsedKeyCodes++] = 0x04; // A\r
        else if (JoyStatus_LCL & JOY_DOWN)\r
@@ -165,6 +163,9 @@ bool CALLBACK_HID_Device_CreateHIDReport(USB_ClassInfo_HID_Device_t* const HIDIn
        if (ButtonStatus_LCL & BUTTONS_BUTTON1)\r
          KeyboardReport->KeyCode[UsedKeyCodes++] = 0x09; // F\r
 \r
+       if (UsedKeyCodes)\r
+         KeyboardReport->Modifier = HID_KEYBOARD_MODIFER_LEFTSHIFT;\r
+\r
        *ReportSize = sizeof(USB_KeyboardReport_Data_t);\r
        return false;\r
 }\r