Skip to content

[Feature Request] Disable SPECULATIVE_HOLD during LT #25906

@musjj

Description

@musjj

Feature Request Type

  • Core functionality
  • Add-on hardware support (eg. audio, RGB, OLED screen, etc.)
  • Alteration (enhancement/optimization) of existing feature(s)
  • New behavior

Description

So I have home row mods like this:

LWIN_T(KC_A), LALT_T(KC_S), LSFT_T(KC_D), LCTL_T(KC_F)

On the same keys, but on a different layer I have one shot mods:

OS_LGUI, OS_LALT, OS_LSFT, OS_LCTL

I switch to this layer using my thumb key: LT(1, KC_SPC).

My config.h looks like this:

#define TAPPING_TERM 250
#define FLOW_TAP_TERM 150
#define CHORDAL_HOLD
#define SPECULATIVE_HOLD

Now when I hit LT(1, KC_SPC) quickly followed by, say, the physical key associated with OS_LCTL and another key, the speculative hold behavior for LCTL_T(KC_F) is still somehow triggered.

This can cause the modifier to be released even when you're physically holding down OS_LCTL.

I've tried to mess around with get_speculative_hold, but in the above scenario I'm only receiving LCTL_T(KC_F) as the keycode (even though I'm holding down OS_LCTL), making it impossible to intercept this behavior.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions