-
-
Notifications
You must be signed in to change notification settings - Fork 103
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
feat(web): &newLayer
and &oldLayer
#6366
feat(web): &newLayer
and &oldLayer
#6366
Conversation
User Test ResultsTest specification and instructions
🟥 SUITE_SOS_IOS: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.
lgtm
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.
It's a shame that we have to re-define TSS_NEWLAYER
and TSS_OLDLAYER
over and over again...
Definitely. I think in the future the list in Compiler.h should be able to instead use kmx_file.h, and the KMBinaryFileFormat.h header should disappear completely. |
@mcdurdin Okay, Thanks. |
GROUP_IOS: Run the Keyman app, either in iPhone simulator or real device. Version of iOS is not important. Test the System keyboard and In-App keyboard.
|
GROUP_WEB: Run testing/unminified, either in Chrome desktop, with mobile emulation, or mobile device/emulator.
|
Sorry, my mistake. The instructions should have been clearer on this -- the keyboard to test is already available under English.../obolo_chwerty_6351 in the globe menu for KeymanWeb. I have updated the instructions! @keymanapp-test-bot retest GROUP_WEB TEST_STARTS_WITH_SHIFT TEST_CAPS |
I think this is intended behaviour? When deleting text to return to an empty text area, the keyboard should return to Shift state. You can tell it is Shift rather than Caps because the top left key is Sh, not SH! GROUP_IOS |
Okay, I believe I've fixed this now -- I've retested locally and it appears to be correct. @keymanapp-test-bot retest SUITE_SOS_IOS TEST_6112 |
I haven't been able to reproduce this. The dark blue colour normally appears as the 'down' touch action and then is replaced with a lighter blue to indicate that Shift is selected (or grey to indicate that Shift is not selected) once the user releases the touch. Can you try this again? If this continues to go wrong, we might list it as a separate issue to resolve. @keymanapp-test-bot retest GROUP_IOS TEST_CAPS |
Test ResultsGROUP_IOS: Run the Keyman app, either in iPhone simulator or real device. Version of iOS is not important. Test the System keyboard and In-App keyboard.
not.shown.Shift.right.off.unless.touch.text.field.mov
|
Test ResultsGROUP_WEB: Run testing/unminified, either in Chrome desktop, with mobile emulation, or mobile device/emulator. The obolo_chwerty_6351 keyboard for this test is available under English.../obolo_chwerty_6351 in the globe menu.
Link used: id: 312043 Chrome desktop with mobile emulation: With Darcy's help, the keyboard, however, is found under Can you please clarify which link to go to to test this PR? My go to is (1) when not specified. This test is still considered blocked until clarification needed is made. Thanks. |
Test ResultsSUITE_SOS_IOS:
One main problem is that if adding more than two spaces after any of the three punctuations above, the keyboard shows the lower case layer instead. In-app: in-app.more.than.two.space.after.the.3.puncts.movSystem: system.-.more.than.two.spaces.after.the.3.puncts.movNote: A good to have feature - the keyboard should stay on Shift layer when pressing the in-app (same for system): return.after.+space.mov |
Test ResultsGROUP_WEB: Run testing/unminified, either in Chrome desktop, with mobile emulation, or mobile device/emulator. The obolo_chwerty_6351 keyboard for this test is available under English.../obolo_chwerty_6351 in the globe menu.
|
The iOS code was making a direct call to `keyman.core.resetContext()` rather than to `keyman.resetContext()`. This meant that the `OutputTarget` was not set and the `newContext` event would never be called (as well as triggering a background warning in the language processor "OutputTarget missing during an invalidateContext call"). Refactored to include a wrapper for `resetContext()` in ios-host.js, as I think it's better to proxy all calls to KMW consistently through the host javascript. (There are a couple of other direct calls which could be cleaned up; search for "evaluateJavaScript" to find all calls; I think we could consider build a wrapper for all these calls?)
I've revisited the context reset code and found a couple of inconsistencies. I think this addresses the starting shift state in iOS more cleanly. @MakaraSok can you retest with the new build? @keymanapp-test-bot retest GROUP_IOS TEST_STARTS_WITH_SHIFT |
@keymanapp-test-bot retest SUITE_SOS_IOS TEST_6112 |
Test ResultsGROUP_IOS: Run the Keyman app, either in iPhone simulator or real device. Version of iOS is not important. Test the System keyboard and In-App keyboard.
in-app: 👎 The keyboard still doesn't show the Shift layer right off. Plus the predictive banner in particular is pushed up and cropped off. The keyboard itself seems to be pushed up leaving a huge empty gab at the bottom of the keyboard. system: 👍 The keyboard shows Shift layer right off after switching to the keyboard. The banner looks good, no cropped off like that of the in-app. Clicking in the text area doesn't enable the Shift layer either. Note also no.Shift.right.off.movSUITE_SOS_IOS:
in-app: 👎 The keyboard doesn't switch to the Shift layer at the start of a text field; however, it does after full stop (.), exclamation (!) or question mark (?) and one or two spaces (e.g. . ). Three spaces and a return key after one of the three punctuations doesn't keep the keyboard on the Shifter layer either, it actually is expected though to have the keyboard stay on the Shift layer. system: 👍 |
I have isolated the primary remaining issue (which is minor) into #6416 as we want to get this in front of beta users. Merging. |
Fixes #6364.
Fixes #6112. (I think).
Removes
&layerChanged
and adds&newLayer
and&oldLayer
system stores with the additional nuances around values as described in #6364.User Testing
Setup
Android/IOS: Run these tests with the obolo_chwerty_6351 keyboard available in the Test-14.0 (Keyman - Windows (Desktop/Developer)) artifacts.
Web: The obolo_chwerty_6351 keyboard for these tests is available under English.../obolo_chwerty_6351 in the globe menu.
touch English... first:
Then obolo_chwerty_6351 should be available in the submenu that appears:
Base Configurations
These tests should be run on Android, iOS and Web.
GROUP_ANDROID: Run the Keyman app, either in Android emulator or real device. Version of Android is not important. Test the System keyboard and In-App keyboard.
GROUP_IOS: Run the Keyman app, either in iPhone simulator or real device. Version of iOS is not important. Test the System keyboard and In-App keyboard.
GROUP_WEB: Run testing/unminified, either in Chrome desktop, with mobile emulation, or mobile device/emulator. The obolo_chwerty_6351 keyboard for this test is available under English.../obolo_chwerty_6351 in the globe menu.
Tests
TEST_STARTS_WITH_SHIFT: Make sure that the initial shift layer is working correctly.
TEST_CAPS: Verify behaviour of Caps Lock
SUITE_SOS_IOS