#[non_exhaustive]pub enum Quirk {
ForcedUpOnRelease {
min: Duration,
max: Duration,
},
PhysicalOverride,
WholeAxisOnly,
NotchesPerCommand(u16),
FixedClickTiming,
MaxHold(Duration),
BoxClickTiming {
min: Duration,
max: Duration,
},
HostClickTiming(ClickTiming),
KeepsHeld,
MaxKeysHeld(u8),
KeepsLocked,
}Expand description
a way this box behaves differently that anybox can’t hide, so it tells you instead of smoothing it over
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
ForcedUpOnRelease
after a release the box keeps the button up for a random while, and only then does the physical button count again. that’s the box’s default, a setting on the box that anybox can’t read may turn it off
PhysicalOverride
pressing and letting go of the physical button or key ends a press the box holds for you, the physical one wins
WholeAxisOnly
the box only locks a whole axis, so locking or unlocking one way of it alone gets refused
NotchesPerCommand(u16)
the most wheel notches the box takes in one command
FixedClickTiming
the box’s click has its own timing and can’t take a hold, so a click with one is timed from the PC with a press and a release
MaxHold(Duration)
the longest hold the box’s click takes
BoxClickTiming
how long the box holds a click you don’t give a hold to
HostClickTiming(ClickTiming)
the box can’t time a click or tap itself, so this is what anybox does on the PC instead
KeepsHeld
the box presses held buttons and keys again by itself after a reconnect or a session reset, so they stay held through it instead of being let go
MaxKeysHeld(u8)
the most keys the box holds down at once, not counting modifiers. it can’t report any past that
KeepsLocked
the box puts locks back by itself after a reconnect or a session reset