Repository navigation
Conversation
Match Logi Options+ by firing continuous Volume/Brightness actions during gesture motion (thresholded), keeping one-shot bindings on release. Fixes mmaher88#155.
mmaher88
left a comment
There was a problem hiding this comment.
Thanks, this is a clean, focused fix for #155, and the tests read well. One blocker: onGestureRaw resolves PresetRef bindings on every raw XY report. On GNOME, resolveNamedAction starts a synchronous gsettings get process, so any drag on a preset-bound direction (the Navigation bundle) would start many processes per second on the GUI thread. No shipped preset maps to volume or brightness, so please treat PresetRef as non-continuous without resolving it, or decide continuity once when the axis locks and keep it in the per-device state.
Please also rebase onto master. Since #174 the slots take a PhysicalDevice*, so use device->deviceSerial() and pass m_physical in the tests. Finally, could you try the step size on hardware at a couple of DPI settings? 50 raw counts may be very sensitive at high DPI.
Summary
Fixes #155.
Test plan
ButtonActionDispatcherFixturecontinuous + one-shot tests