Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Core] Refactor keyevent_t for 1ms timing resolution #15847

Merged
merged 3 commits into from
Apr 3, 2023

Commits on Mar 3, 2023

  1. Introduce event type tag for keyevent_t

    The current keyevent_t time resolution was limited to an 2ms interval,
    this is due to the fact that "tick" events that should only drive the
    internal state machine have been generated by setting the time field to
    0 and/or the row, col position to 255 before. So real key events that
    should generate a reaction have been generated by using the .time =
    (timer_read() | 1) pattern before. This commit introduces a proper type
    tag for the keyevent_t that is evaluated instead.
    KarlK90 committed Mar 3, 2023
    Configuration menu
    Copy the full SHA
    dcab33f View commit details
    Browse the repository at this point in the history
  2. Replace timer_read() | 1 pattern with event type

    this covers all user keymaps that previously relied on the timestamp
    mechanism to indicate a valid event.
    KarlK90 committed Mar 3, 2023
    Configuration menu
    Copy the full SHA
    c5d0918 View commit details
    Browse the repository at this point in the history
  3. Simplify action_tapping logic

    This commit simplifies the logic around the tapping state machine in
    action_tapping by reordering the checks and taking invariants in the
    state into account.
    KarlK90 committed Mar 3, 2023
    Configuration menu
    Copy the full SHA
    bcccd21 View commit details
    Browse the repository at this point in the history