Skip to content

Conversation

@kareltucek
Copy link
Collaborator

Agent changes needed for user config version 14

Serialization (Agent writes config)

  1. Bump written config version to 14.0.0
  2. Version 7 block changes (same byte positions, same byte count):
    - triggeringEvent: change from Bool (0=Press, 1=Release) to UInt8 (0=Press, 1=Release, 2=None)
    - timeoutAction: UInt8 now accepts value 2 for None (was only 0=Primary, 1=Secondary)
  3. After the version 10 block, serialize 4 new bytes:
    - triggerByMouse: Bool (1 byte)
    - acceptTriggersFromSameHalf: Bool (1 byte)
    - minimumHoldTime: UInt8 (1 byte, 0-255)
    - timeoutType: UInt8 (1 byte, 0=Active, 1=Passive)

Deserialization (Agent reads config)

  • Version 7-13 configs: read TriggeringEvent as Bool (old mapping), skip 4 new fields (use defaults)
  • Version 14+ configs: read TriggeringEvent as UInt8 (new mapping), read 4 new bytes after version 10 block

UI

  • Expose 4 new settings in the secondary role advanced configuration:
    • Trigger by mouse (checkbox/toggle)
    • Accept triggers from same half (checkbox/toggle)
    • Minimum hold time (0-255ms slider/input)
    • Timeout type (Active/Passive dropdown)
  • Update Triggering event to dropdown with values Press,Release,None
  • Update Timeout action to dropdown to include Primary,Secondary,None

kareltucek and others added 2 commits February 9, 2026 14:02
Serialize 4 new secondary role advanced strategy fields that were
previously only settable via macro set commands: TriggerByMouse,
AcceptTriggersFromSameHalf, MinimumHoldTime, and TimeoutType.

Also reinterpret TriggeringEvent as UInt8 (was Bool) to support
the None value, and add NoOp to the TimeoutAction enum.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant