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 menu to specify long-press delay #12170

Merged
merged 8 commits into from
Aug 20, 2024

Conversation

darcywong00
Copy link
Contributor

Addresses the UI portion of #877.

A separate PR will integrate passing the custom long-press duration into KeymanWeb.

The slider in the menu has discrete positions from [0,7] and correspond to long-press durations 0.3s to 1.5s.
Internally, they code keeps track of the current long-press delay as milliseconds, and the default KeymanWeb duration is 500ms.

Screenshots

delay-settings
The menu to adjust the long-press delay is accessed in Keyman Settings


default 0-5ms
Position at default 0.5s


delay-1-3ms
Position at 1.3s

User Testing

Setup - Install the PR build of Keyman for Android

  • TEST_MENU - Verifies the value of the longpress delay can be adjusted from 0.3s to 1.5s
  1. Launch Keyman and dismiss the "Get Started" menu
  2. In Keyman, go to Settings --> Adjust longpress delay
  3. In the "Adjust longpress delay" menu, verify the default is 0.5 seconds
  4. Click the left arrow (by the slider) until the minimum delay is reached
  5. Verify the delay time says 0.3 seconds
  6. Click the back arrow and exit back to the Keyman app
  7. In Keyman, go to Settings --> Adjust longpress delay
  8. Verify the delay time says 0.3 seconds
  9. Click the right arrow (by the slider) until the maximum delay is reached
  10. Verify the delay time says 1.5 seconds
  11. Click the back arrow and exit back to the Keyman app
  12. In Keyman, go to Settings --> Adjust longpress delay
  13. Verify the delay time says 1.5 seconds

@keymanapp-test-bot
Copy link

keymanapp-test-bot bot commented Aug 13, 2024

User Test Results

Test specification and instructions

@dinakaranr
Copy link

Test Results

I tested this issue with the attached "Keyman 18.0.88-alpha-test-12170" build on the Android 14 physical device and Android 9(emulator) Here is my observation.

  • TEST_MENU (Passed):
  1. Installed the "Keyman-18.0.88.apk" file and gave all permissions to the application.
  2. Checked the "Enable Keyman as system-wide keyboard" and set the keyboard as the default keyboard box on the settings page.
  3. Open the Keyman app. Enable the "Predictions" to install the "Dictionary."
  4. Added a sentence to the notepad and Chrome (search).
  5. "Adjust long-press delay" appears under the settings.

0.5s is the minimum time and 1.5s maximum time. I can alter the timing and make it available when I reopen the app.
I have followed the steps and works as expected. It works great for me. Thank you.

@keymanapp-test-bot keymanapp-test-bot bot removed the user-test-required User tests have not been completed label Aug 13, 2024
Copy link
Member

@mcdurdin mcdurdin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, nits only

@darcywong00 darcywong00 merged commit a31aded into master Aug 20, 2024
3 checks passed
@darcywong00 darcywong00 deleted the feat/android/longpress-delay-menu branch August 20, 2024 14:02
@keyman-server
Copy link
Collaborator

Changes in this pull request will be available for download in Keyman version 18.0.93-alpha

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

Successfully merging this pull request may close these issues.

feat(android/app): Feature Request: customize long-press delay time
4 participants