Tidy up encoder in matrix references (#21718)
Remove more legacy config.h options (#21709)
doio/kb38: fix layout (#21704)
Merge remote-tracking branch 'origin/master' into develop
Fix `binepad/bn009` and `durgod/dgk6x/hades_ansi` keymaps (#21701)
Merge remote-tracking branch 'origin/master' into develop
Contributing docs: add note to make sure repo is up to date (#21694)
haptic: further naming cleanups (#21682)
Merge remote-tracking branch 'origin/master' into develop
Merge remote-tracking branch 'origin/master' into develop
Clarify custom keycode enum requirement for PRs (#21648)
[Keyboard] Add PW88 keyboard (#21482)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Merge remote-tracking branch 'origin/master' into develop
moondrop/dash75: fix keymap (#21680)
[Bug] Restore usb suspend wakeup delay (#21676)
* Respect USB_SUSPEND_WAKEUP_DELAY on wakeup
This delay wasn't honored after removing `restart_usb_driver` from the
suspend and wakeup handling. It is now re-introduced in the appropriate
spot, namely after issuing a remote wakeup to a sleeping host.
* Remove old, unused and commented testing code
Merge remote-tracking branch 'origin/master' into develop
[Keyboard] Add Bento Box macropad (#20521)
audio: Don't play the first note of zero-note melodies (#21661)
Fix mouse-key spamming empty reports (#21663)
Problem:
`mousekey_task` spams empty hid reports with when a mouse key is
pressed, causing resource exhaustion in the USB mouse endpoint.
Cause:
The check whether or not to send a new mouse report would always
evaluate to true if a mouse key is pressed:
1. `mouse_report` has non-zero fields and `tmpmr` is a copy of this
fields.
2. `mouse_report` is set to zero, `tmpmr` has now non-zero fields.
3. `has_mouse_report_changed` compares the two and evaluates to true
4. a mouse report is sent.
Fix:
The check condition of `has_mouse_report_changed` will evaluate any
empty record as unchanged, as mouse report data is relative and doesn't
need to return to zero. An empty report will still be send by
`register_mouse` on release of all mouse buttons.