~ruther/qmk_firmware

3e0ee6fb74e125d14ac22c922d80def4649f6784 — Ryan 3 years ago 6cc4e32
Fix joystick button off-by-one error (#16037)

1 files changed, 3 insertions(+), 2 deletions(-)

M quantum/process_keycode/process_joystick.c
M quantum/process_keycode/process_joystick.c => quantum/process_keycode/process_joystick.c +3 -2
@@ 28,10 28,11 @@ bool process_joystick_buttons(uint16_t keycode, keyrecord_t *record) {
    if (keycode < JS_BUTTON0 || keycode > JS_BUTTON_MAX) {
        return true;
    } else {
        uint8_t button_idx = (keycode - JS_BUTTON0);
        if (record->event.pressed) {
            joystick_status.buttons[(keycode - JS_BUTTON0) / 8] |= 1 << (keycode % 8);
            joystick_status.buttons[button_idx / 8] |= 1 << (button_idx % 8);
        } else {
            joystick_status.buttons[(keycode - JS_BUTTON0) / 8] &= ~(1 << (keycode % 8));
            joystick_status.buttons[button_idx / 8] &= ~(1 << (button_idx % 8));
        }

        joystick_status.status |= JS_UPDATED;