feat(web): integration for detecting, managing key-specific gestures 🐵#9690
Merged
jahorton merged 15 commits intofeature-gesturesfrom Oct 20, 2023
Merged
Conversation
User Test ResultsTest specification and instructions User tests are not required |
107a6dc to
7c81fc6
Compare
…feat/web/key-specific-gesture-integration
…feat/web/key-specific-gesture-integration
mcdurdin
approved these changes
Oct 16, 2023
Co-authored-by: Marc Durdin <marc@durdin.net>
Base automatically changed from
feat/web/base-recognizer-integration
to
feature-gestures
October 20, 2023 09:14
…c-gesture-integration
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The primary focus of this PR is to enable the Web OSK to ensure that gestures are only considered for selection (by the gesture-recognizer engine) if their corresponding key supports that gesture. The abstractions previously put in place toward this end seem sufficient for the task, which is always nice to see. Part of this includes restoring the standard, repeating held-backspace behavior - as that is (1) key-specific and (2) backspace uses special-key characteristics. (It should trigger immediately, not after the key is 'released'.)
The secondary focus is to fix some of the notable bugs that arose as integration's been improving; at this stage, simple-taps and roaming touch appear to have fully stabilized. Roaming touch, in particular, gets most of the love in this regard; the most notable bugs being fixed herein are due to previously-incomplete handling of its supporting aspects within the gesture engine. (The gaps caused some... very interesting side-effects to debug.) Also, the "off-the-top padding" permitted by the OSK in the past gets re-established through use of the corresponding part of the gesture-engine's config abstraction.
Automated tests are still broken at this point. I considered including their fixes in this PR, but the changeset is pretty orthogonal and would add complexity for the review, so I spun it off as #9719. Web's CI build check should pass there, though probably not the filesize check.
@keymanapp-test-bot skip