Skip to content

Shift modifier sometimes missing when layer is activated via secondary action in macro #1445

@mhantsch

Description

@mhantsch

layer fn4 key i mapped to Keypress 8 * with modifier LShift.
layer base key rightSpace mapped to Keypress space with secondary action layer fn.

When pressing rightSpace+i quickly (and releasing quickly), the resulting keystroke is *. This is correct and expected behaviour. ✔️

Typing behaviour settings:

Image

And in init macros:

set secondaryRole.advanced.acceptTriggersFromSameHalf false
set secondaryRole.advanced.minimumHoldTime 50

When the base key rightSpace is changed to run this macro:

numspace-micro:

ifPrimary acceptTriggersFromSameHalf final holdKey space
holdLayer fn4

Then pressing rightSpace+i quickly (and releasing quickly), the resulting keystroke is sometimes * and sometimes 8. This is wrong. ❌

The keystroke order is rightSpace press, i press, i release, rightSpace release, in quite quick timing. About half the time, the LShift modifier is lost.

The secondary layer activation from macro should not behave differently than when activated directly without macro.

Changing any of these timings does not change the behaviour:

In macro code:

  • minimumHoldTime

In Agent:

  • Timeout
  • Double tap timeout
  • Double tap to lock layer timeout

Changing init macros to set secondaryRole.advanced.acceptTriggersFromSameHalf true does not change the behaviour.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions