-
-
Notifications
You must be signed in to change notification settings - Fork 108
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
fix(ios): selection range sync for long contexts #10956
Conversation
User Test ResultsTest specification and instructions
Test Artifacts
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think LGTM
@keymanapp-test-bot retest TEST_PREDICTION_AFTER_MOVE Glad I spec'd that user test. I believe I've identified and fixed the issues causing the problem now; "hard context resets" were also using the codepaths meant for non-reset cases by mistake. |
The build has failed a few times now with this error set during the "Upload to TestFlight" step:
This is constantly repeated in the TC build logs. |
Hmm, altool was deprecated wasn't it? Or was it only specific tasks for altool. Can you break that into a separate issue? |
I've upgraded fastlane and retried another build, which worked, so retrying this ios build now. |
Changes in this pull request will be available for download in Keyman version 17.0.290-beta |
Fixes corrections and predictions after recently-typed paragraph breaks.
So... I forgot to properly remap the selection-range coordinates when updating the internal web-engine's context across paragraph boundaries in #10728. Fortunately, the mapping calculations are pretty simple - we only avoid resetting context if there's a very specific relation between the old and new left-hand contexts, after all.
User Testing
To easily navigate to this page from a mobile device:
Sample text:
TEST_NEW_PARAGRAPH_PREDICTIONS: Using the sample text specified above as existing context, verify that predictive text operates as expected.
Using Keyman as a system keyboard on an iOS device, paste the "sample text" above into an iOS app.
After pasting, the text insertion point should be at the end of the pasted text. If not, make it so.
Hit ENTER twice.
If no predictions are shown at this specific moment, this is fine - it's a separate issue.
Type
p
, then hit backspace to delete it.Verify that the usual default suggestions are displayed: "the", "to", "and", etc.
Type
ot
and verify that suggestions mostly starting witho
andt
are displayed.Select
others
and verify that the expected results occur.Once applied, directly apply suggestions that pop up at least ten times. Verify that each is applied as expected.
TEST_PREDICTION_AFTER_DELETIONS: Using the same sample text as specified above, verify that predictive text operates as expected after deleting lots of text.
others
.about
and are now atabo
, the following make sense as the first suggestions: "about", "above", "abortion". Other suggestions should include at least two of the three letters as well.TEST_PREDICTION_AFTER_MOVE:
Using the same sample text as specified above, verify that predictive text operates as expected after deleting lots of text.
peo
ple
, which is in the middle of the first paragraph.peo
: you might expect to see "people", "people's", "peoples", "person", etc.