Guards sendReport the way it is guarded elsewhere too.
Adds isModifierActive and wasModifierActive.
Remove the (unused) consumer reports from the HID descriptor.
Add a way to set a default protocol (USB spec says we should default to report, which is what BootKeyboard did, but some situations prefer defaulting to boot - this allows us to do that).
Add a way to forcibly set the protocol.
These are changes lifted out of #20, without the fallback parts, as that will be implemented elsewhere.
This does a couple of things:
sendReport
the way it is guarded elsewhere too.isModifierActive
andwasModifierActive
.These are changes lifted out of #20, without the fallback parts, as that will be implemented elsewhere.