Reset keyboard reports just before changing them by UpdateActiveUsbReports(). This seems to completely solve the repeated media key issue.
This commit is contained in:
@@ -43,13 +43,14 @@ void UpdateUsbReports(void)
|
||||
return;
|
||||
}
|
||||
|
||||
KeyMatrix_Scan(&KeyMatrix);
|
||||
|
||||
memcpy(CurrentKeyStates[SlotId_RightKeyboardHalf], KeyMatrix.keyStates, MAX_KEY_COUNT_PER_MODULE);
|
||||
|
||||
ResetActiveUsbBasicKeyboardReport();
|
||||
ResetActiveUsbMediaKeyboardReport();
|
||||
ResetActiveUsbSystemKeyboardReport();
|
||||
|
||||
KeyMatrix_Scan(&KeyMatrix);
|
||||
|
||||
memcpy(CurrentKeyStates[SlotId_RightKeyboardHalf], KeyMatrix.keyStates, MAX_KEY_COUNT_PER_MODULE);
|
||||
UpdateActiveUsbReports();
|
||||
|
||||
SwitchActiveUsbBasicKeyboardReport();
|
||||
|
||||
Reference in New Issue
Block a user