Closed darcywong00 closed 1 year ago
Test specification and instructions
β GROUP_IOS: - any iOS device should suffice
β GROUP_ANDROID: - any Android device should suffice
β GROUP_IOS_PHONE: - any modern iOS phone should suffice
β GROUP_IOS_TABLET: - any modern iOS tablet should suffice
π₯ GROUP_OLD_IOS: - try to find an iOS 12 or iOS 13 device to test with
β GROUP_ANDROID_PHONE: - any modern Android phone should suffice
β GROUP_ANDROID_TABLET: - any modern Android tablet should suffice
β GROUP_ANDROID_7: - run tests against early Android if possible (Android 7.0)
- TEST_BROWSER_ROTATE_L-TO-P (FAILED): Tested this with the attach PR build (15.0.270-test-7188) in iOS 15.5 / iPhone 13 Pro max simulator and the OSK appears partially on the Screen.
@jahorton and @darcywong00 can you review this issue?
- TEST_BROWSER_ROTATE_L-TO-P (FAILED): Tested this with the attach PR build (15.0.270-test-7188) in iOS 15.5 / iPhone 13 Pro max simulator and the OSK appears partially on the Screen.
@jahorton and @darcywong00 can you review this issue?
I am able to reproduce the test failure on my personal iPhone, though not in Chrome emulation.
For comparison, and to ensure that it isn't broken on master
, I double-checked on the same device using the test build product from #7142, which includes the already-merged 16.0-alpha version of these changes. (I double-checked that aspect - that the changes are there - as well.)
This test result does not reproduce on 16.0-alpha; somehow, there's... something different that's specific to 15.0-stable. What "something"? Good question! That'll take time to investigate.
The most obvious thing to note for investigation: the 16.0-alpha version landed in 16.0.43. Since the tests were passed then, chances are that the divergence is due to a change on 16.0-alpha before that point. Such a change would (naturally) have been missed by this cherrypick since we didn't know it to be related.
Well, that's probably related: we should probably cherry-pick the "patch PR" followup as part of this, too. See #6979.
The original version had similarly-noted test issues, but since it'd already undergone significant review at the time, I made a "patch PR" that could be reviewed separately, in case reviewers didn't like the "patch" changes. It was fine and got included, but there's something noteworthy about how it got merged:
With the changes from #6979 now :cherries:-picked,
@keymanapp-test-bot retest GROUP_IOS TEST_BROWSER_ROTATE_L-TO-P
TEST_OSK_PORTRAIT_LOAD (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in iOS 16.0 / iPhone 14 Pro max simulator and verified the appearance of the OSK and it seems to be reasonably positioned and sized. No cropping issues.
TEST_OSK_LANDSCAPE_LOAD (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in iOS 16.0 / iPhone 14 Pro max simulator and verified the appearance of the OSK and it seems to be reasonably positioned and sized. No cropping issues.
TEST_BROWSER_ROTATE_P-TO-L (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in iOS 16.0 / iPhone 14 Pro max simulator and the OSK rotates properly.
TEST_BROWSER_ROTATE_L-TO-P (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in iOS 16.0 / iPhone 14 Pro max simulator and the OSK rotates properly.
TEST_OSK_PORTRAIT_LOAD (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in iOS 16.0 / iPad Pro 3 generation simulator and verified the appearance of the OSK and it seems to be reasonably positioned and sized. No cropping issues.
TEST_OSK_LANDSCAPE_LOAD (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in iOS 16.0 / iPad Pro 3 generation simulator and verified the appearance of the OSK and it seems to be reasonably positioned and sized. No cropping issues.
TEST_BROWSER_ROTATE_P-TO-L (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in iOS 16.0 / iPad Pro 3 generation simulator and the OSK rotates properly.
TEST_BROWSER_ROTATE_L-TO-P (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in iOS 16.0 / iPad Pro 3 generation simulator and the OSK rotates properly.
TEST_BROWSER_ROTATE_L-TO-P (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in iOS 15.0 / iPhone 13 Pro Simulator and verified the appearance of the OSK and it seems to be reasonably positioned and sized. No cropping issues.
TEST_OSK_PORTRAIT_LOAD (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in iOS 12.4 / iPhone 7 Simulator and verified the appearance of the OSK and it seems to be reasonably positioned and sized. No cropping issues.
TEST_OSK_LANDSCAPE_LOAD (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in iOS 12.4 / iPhone 7 Simulator and verified the appearance of the OSK and it seems to be reasonably positioned and sized. No cropping issues.
TEST_BROWSER_ROTATE_P-TO-L (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in iOS 12.4 / iPhone 7 Simulator and the OSK rotates properly.
TEST_BROWSER_ROTATE_L-TO-P (FAILED): Tested this with the attach PR build (15.0.271-test-7188) in iOS 12.4 / iPhone 7 Simulator and I noticed that the OSK flashes on the screen and it does not appear on the View.
@bharanidharanj TEST_BROWSER_ROTATE_L-TO-P should have rotated from landscape to portrait orientation, and the screenshot looks like it's still landscape. Are you saying the OSK failed to display in the original landscape orientation?
See the screenshot from the original PR
TEST_OSK_PORTRAIT_LOAD (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in my Android Mobile device Version 11.0 and verified the appearance of the OSK and it seems to be reasonably positioned and sized. No cropping issues.
TEST_OSK_LANDSCAPE_LOAD (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in my Android Mobile device Version 11.0 and verified the appearance of the OSK and it seems to be reasonably positioned and sized. No cropping issues.
TEST_BROWSER_ROTATE_P-TO-L (FAILED): Tested this with the attach PR build (15.0.271-test-7188) in my Android Mobile device Version 11.0 and I noticed that the Inconsistent behavior of the OSK. ie., the OSK sometimes appear on the screen and sometimes it does not appear after rotating it from Portrait to Landscape. Seems to be an issue.
TEST_BROWSER_ROTATE_L-TO-P (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in my Android Mobile device Version 11.0 and the OSK rotates properly.
TEST_OSK_PORTRAIT_LOAD (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in Pixel C API 31 / Android 12.0 and verified the appearance of the OSK and it seems to be reasonably positioned and sized. No cropping issues.
TEST_OSK_LANDSCAPE_LOAD (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in Pixel C API 31 / Android 12.0 and verified the appearance of the OSK and it seems to be reasonably positioned and sized. No cropping issues.
TEST_BROWSER_ROTATE_P-TO-L (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in Pixel C API 31 / Android 12.0 and verified the appearance of the OSK and it rotates properly.
TEST_BROWSER_ROTATE_L-TO-P (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in Pixel C API 31 / Android 12.0 and verified the appearance of the OSK and it rotates properly.
TEST_OSK_LANDSCAPE_LOAD (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in API 24 / Android 7.0 emulator and verified the appearance of the OSK and it seems to be reasonably positioned and sized. No cropping issues.
TEST_BROWSER_ROTATE_P-TO-L (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in API 24 / Android 7.0 emulator and verified the appearance of the OSK and it rotates properly.
TEST_BROWSER_ROTATE_L-TO-P (PASSED): Tested this with the attach PR build (15.0.271-test-7188) in API 24 / Android 7.0 emulator and verified the appearance of the OSK and it rotates properly.
@bharanidharanj TEST_BROWSER_ROTATE_L-TO-P should have rotated from landscape to portrait orientation, and the screenshot looks like it's still landscape. Are you saying the OSK failed to display in the original landscape orientation?
See the screenshot from the original PR
@darcywong00 The attached Screenshot looks like it's in Portrait orientation. (from Landscape). Actually, I am confused which emulator you are asking about.
When I tested 15.0.270-test-7188 in iOS 15.5 / iPhone 13 Pro Max Simulator, after rotating the device from Landscape to Portrait, the OSK appears partially on the Screen. (Please, see my attached Screenshot) screenshot
When I tested the same (TEST_BROWSER_ROTATE_P-TO-L) in iOS 12.4 / iPhone 7 Simulator, the OSK is failed to display in the original landscape orientation. (Please, see the attached Screenshot) screenshot
Please, let me know if further clarification is needed. Thanks.
@bharanidharanj I was asking about your test result from here:
TEST_BROWSER_ROTATE_L-TO-P (FAILED): Tested this with the attach PR build (15.0.271-test-7188) in iOS 12.4 / iPhone 7 Simulator and I noticed that the OSK flashes on the screen and it does not appear on the View.
Are you saying the OSK flashed and disappeared before rotating from landscape to portrait orientation?
@jahorton - is the browser OSK expected to intermittently disappear?
@bharanidharanj I was asking about your test result from here:
- TEST_BROWSER_ROTATE_L-TO-P (FAILED): Tested this with the attach PR build (15.0.271-test-7188) in iOS 12.4 / iPhone 7 Simulator and I noticed that the OSK flashes on the screen and it does not appear on the View.
Are you saying the OSK flashed and disappeared before rotating from landscape to portrait orientation?
@jahorton - is the browser OSK expected to intermittently disappear?
@darcywong00 Yes, That's right.
From Friday standup, @mcdurdin said we'll hold off on this PR till @jahorton can investigate the browser OSK rotation issues.
@jahorton - is the browser OSK expected to intermittently disappear?
I'll need to revisit it to be sure, but my memory is that KMW will usually hide the OSK pre-rotation and re-display it afterward. So, this suggests that the 'redisplay' part isn't happening for whatever reason.
While certainly not an answer to the lingering issues from user testing mentioned above, there were a few oddities noted here on one of the original PRs: https://github.com/keymanapp/keyman/pull/6979#issuecomment-1203688781
It does make me wonder if there may be a bit more to address there as well.
Unlike before, I'm having trouble attempting to repro the user test failures. That's going to make investigation at least a bit tricky.
@keymanapp-test-bot retest SUITE_ROTATION GROUP_OLD_IOS TEST_BROWSER_ROTATE_L-TO-P GROUP_ANDROID_PHONE TEST_BROWSER_ROTATE_P-TO-L
Self assigned to retest and double check the failed cases
TEST_BROWSER_ROTATE_L-TO-P (FAILED): Tested with the build off of this PR:
Here is how it looks after rotate to portrait:
If this is out of the scope of this test case, please ignore the this result.
The behavior above doesn't occur in iOS 13.7 simulator though.
In iOS 16.0 simular, it doesn't occur either.
TEST_BROWSER_ROTATE_P-TO-L (PASSED): Tested with Android 12 (API 31), the keyboard is shown OK after rotating to landscape.
Test Results
SUITE_ROTATION:
GROUP_OLD_IOS: - try to find an iOS 12 or iOS 13 device to test with
* **TEST_BROWSER_ROTATE_L-TO-P (FAILED):** Tested with the [build off of this PR](https://build.palaso.org/repository/download/Keymanweb_TestPullRequests/339125:id/index.html): * on iOS 12.4 iPhone Xs Max simulator. There is no way to open the language menu as the globe key is nowhere to be found. <img alt="image" width="500" src="https://user-images.githubusercontent.com/28331388/192683244-910cbb16-41b6-40f6-9eab-26734beb8cfe.png">
I may need to double-check, but I think this is the same Safari issue as noted on one of the other tests previously. Older iOS devices put the nav bar at the top rather than the bottom, but the in-page side effects were the same. If the nav bar hadn't appeared, the globe key would likely be in view.
Come to think on it... if the 'worst' user test failure we're getting is that the OSK isn't showing after a rotation... as long as it shows again when the element is reselected, that doesn't seem too bad of an issue. Also, even that is only happening intermittently at that, so far as we've seen, right?
As per Makara's suggestion I have retested this (GROUP_OLD_IOS: - try to find an iOS 12 or iOS 13 device to test with- TEST_BROWSER_ROTATE_L-TO-P )in iOS 12.4 and here is my observation:
Tested the Landscape to Portrait mode in iPhone 7 Plus Simulator and I was able to see the OSK on the Screen in the landscape mode. However, the bottom of the OSK has been cropped.
In iPhone X Simulator after clicking the text area, the globe key is not visible on the Screen.
In iPhone xs Max Simulator, after scrolling down the page I could able to see the globe key. However, scrolling up the page will hide the globe key on the screen.
Tested the same in iOS 16.0, the OSK is fully visible on the Screen. Seems to be working fine in the latest iOS verion.
My feeling on this, is if the issue is less severe than previously, we should merge this. In particular, if this rotation issue only impacts Keyman Web on mobile, and only impacts rotation, and is easily resolved by the user by refocusing the edit control, that's a much smaller user base, with a much less severe impact, so we should merge.
Then we should open a new issue to correct the remaining rotation issues!
One fail on the old version of iOS, modern iOS versions seem to work fine.
Changes in this pull request will be available for download in Keyman version 15.0.271
:cherries: pick of #6787 and #6979 and fixes #7169 to stable-15.0 (16.0 master already contains the fix)
User Testing
Test environments
Tests
TEST_INAPP_ROTATE_P-TO-L:
TEST_INAPP_ROTATE_L-TO-P:
TEST_BROWSER_ROTATE_P-TO-L:
TEST_BROWSER_ROTATE_L-TO-P:
TEST_ANDROID_SHIFT_AFTER_GLOBE: Verifies fix to #7169
(edit) Additional user tests from #6979
SUITE_ROTATION
Test environments
Tests
TEST_OSK_PORTRAIT_LOAD:
TEST_OSK_LANDSCAPE_LOAD:
TEST_BROWSER_ROTATE_P-TO-L:
TEST_BROWSER_ROTATE_L-TO-P: