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

Auto shift: support repeats and early registration #9826

Merged
merged 11 commits into from
Nov 27, 2020

Commits on Nov 26, 2020

  1. Auto shift: support repeats and early registration (qmk#7048)

    Instead of waiting for the next record to tap the autoshiftable key,
    expose a matrix_scan function that will check the timeout and register
    the key immediately if the timeout period has elapsed.  This means the
    user gets immediate feedback about their press and doesn't have to
    guess whether it's been long enough.
    
    Additionally, don't unregister the keypress immediately.  This means
    that auto-shifted keys can be held down.
    
    Removes the 'autoshift_on' function (which had external linkage but was
    not exposed in the header).
    
    Fixes qmk#7048
    p00ya committed Nov 26, 2020
    Configuration menu
    Copy the full SHA
    f513cc8 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0b83ff4 View commit details
    Browse the repository at this point in the history
  3. Support tap-then-hold for auto shift

    Make auto-shift keys like dual-function keys insofar as they can be
    repeated by tapping then immediately (within TAPPING_TERM) holding
    again.
    p00ya committed Nov 26, 2020
    Configuration menu
    Copy the full SHA
    65fe438 View commit details
    Browse the repository at this point in the history
  4. Flush auto-shifted key

    When processing a different keypress record, register the outstanding
    key from the auto-shift.
    p00ya committed Nov 26, 2020
    Configuration menu
    Copy the full SHA
    1ab316f View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    b0a3cd4 View commit details
    Browse the repository at this point in the history
  6. Fix flaky unshifting

    p00ya committed Nov 26, 2020
    Configuration menu
    Copy the full SHA
    d2e4383 View commit details
    Browse the repository at this point in the history
  7. Update docs for auto shift

    Update the auto shift docs to reflect that repeats now work.
    p00ya committed Nov 26, 2020
    Configuration menu
    Copy the full SHA
    ac7dfaf View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    e576132 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    451fcc7 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    be23535 View commit details
    Browse the repository at this point in the history
  11. Don't trust record->event.time

    Manual testing has shown event.time is not reliable on some keyboards.
    Perform a timer_read() instead.
    p00ya committed Nov 26, 2020
    Configuration menu
    Copy the full SHA
    4c7f736 View commit details
    Browse the repository at this point in the history