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

feat(android): Add device Settings link to KeymanSettingsActivity #12405

Closed
wants to merge 1 commit into from

Conversation

darcywong00
Copy link
Contributor

While configuring test steps for #12381, I noticed the Android "General Management" settings had a link to keyboard settings for the current default keyboard.

This adds a link from the Android settings to the Keyman settings activity

User Testing

Setup - Install the PR build of Keyman for Android on a physical device. Enable Keyman as a system keyboard, but don't set to default yet.

  • TEST_ANDROID_KEYBOARD_SETTINGS- Verifies path from Android settings to Keyman settings
  1. From Android settings, select a non-Keyman keyboard selected as the default system keyboard.
    • On modern devices: Android settings --> General management --> Keyboard list and default
  2. Return to the"General management" settings and observe a link to that keyboard's settings

gboard settings

  1. Select the "keyboard list and default" and set Keyman as the default system keyboard
  2. Return to the "General management" settings and observe a link to Keyman settings

keyman alpha settings

  1. Select "Keyman (alpha) settings"
  2. Verify the Keyman settings screen is launched
  3. From Keyman settings, install another Keyman keyboard
  4. Verify keyboard is installed.

@keymanapp-test-bot
Copy link

keymanapp-test-bot bot commented Sep 12, 2024

@dinakaranr
Copy link

Test Results

I tested this issue with the attached "Keyman 18.0.110-alpha-test-12405" build on the Android 14 mobile(physical device and keyboard connected with USB cable). Here is my observation.

  • TEST_ANDROID_KEYBOARD_SETTINGS (Passed):
  1. Installed the "Keyman-18.0.110.apk" file from the PR build. and gave all permissions to the application.
  2. Checked the "Enable Keyman as system-wide keyboard" on the settings page.
  3. Open the Keyman app.
  4. Navigate to the Android settings page -> General Management -> Keyboard list and default.
  5. Verified that the "Keyman Alpha-test-12405" button appears in the enable state.
  6. Click on the "Keyman Alpha-test-12405".
  7. Verified the navigation moved into Keyman's settings page.
  8. Checked the "Set Keyman as default keyboard" box.
  9. Return back to the "General Management" page under Andorid's settings page.
  10. Verified that the "Keyman Alpha-test-12405 settings" appeared.
  11. Click on the "Keyman Alpha-test-12405 settings"
  12. Verified the navigation moved into Keyman's settings page.
  13. Click the "Install Keyboard or Dictionary" -> install from keyman.com
  14. Installed the other keyboard(e.g Tamil99)
  15. A verified keyboard is installed and appears on the OSK.
    It works well as per the given steps here.

I have observed another behavior with the below steps and screenshot.

  1. Installed the "Keyman-18.0.110.apk" file from the PR build. and gave all permissions to the application.
  2. Checked the "Enable Keyman as system-wide keyboard" on the settings page.
  3. Open the Keyman app.
  4. Close the Keyman app from the cache(background).
  5. Navigate to the Android settings page -> General Management -> Keyboard list and default.
  6. Verified that the "Keyman Alpha-test-12405" button appears in the enable state.
  7. Click on the "Keyman Alpha-test-12405".

Actual Results: Here, the Error appears on the toast message bar. The popup appeared and said as "Keyman keeps stopping"
Please refer to the screenshot below

@keymanapp-test-bot keymanapp-test-bot bot removed the user-test-required User tests have not been completed label Sep 13, 2024
@darcywong00
Copy link
Contributor Author

Back to draft to resolve the scenario @dinakaranr found

@darcywong00 darcywong00 marked this pull request as draft September 13, 2024 07:02
@darcywong00 darcywong00 modified the milestones: A18S10, A18S11 Sep 14, 2024
@darcywong00
Copy link
Contributor Author

I'll abandon this and make an issue. There's some design that will need to happen because the normal Keyman initialization happens in MainActivity or SystemKeyboard.

If Android is uninitialized, going through the Android settings link straight to the KeymanSettingsActivity results in things being uninitialized.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

3 participants