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

Improved user experience when using menu items in the form hierarchy view #5472

Merged
merged 2 commits into from
Mar 13, 2023

Conversation

grzesiek2010
Copy link
Member

@grzesiek2010 grzesiek2010 commented Mar 3, 2023

Closes #4457
Closes #5362

Working on #5264 I also investigated #4457 and #5362 and thought it would be good to fix them because the user experience is pretty bad because of how we protect users from multi clicking.

What has been done to verify that this works as intended?

I've tested the changes manually.

Why is this the best possible solution? Were any other approaches considered?

I've implemented two improvements:

  • the first commit treats particular menu items in the form hierarchy as individual ones. That means we only protect users from multi clicking if they click multiple times on the same item. If a user click for example on the up icon and then on the add repeat one then they are not blocked.
  • the second commit decreases the debounce time (from 1s to 0.5s) so that navigating through the hierarchy of questions (especially going up) is smoother. I think 0.5s might be a good balance between protecting users from multi clicking and providing good user experience.

How does this change affect users? Describe intentional changes to behavior and behavior that could have accidentally been affected by code changes. In other words, what are the regression risks?

It should make using menu items in the form hierarchy smoother. Before we would block users for 1s after clicking one item what made the user experience pretty bad. I hope 0.5s that we use now is better and still protects from weird bugs that can be caused by multi clicking. Please test the forms attached to the issues to make sure it works better now.

Do we need any specific form for testing your changes? If so, please attach one.

Forms are attached to the issues.

Does this change require updates to documentation? If so, please file an issue here and include the link below.

No.

Before submitting this PR, please make sure you have:

  • run ./gradlew checkAll and confirmed all checks still pass OR confirm CircleCI build passes and run ./gradlew connectedDebugAndroidTest locally.
  • verified that any code or assets from external sources are properly credited in comments and/or in the about file.
  • verified that any new UI elements use theme colors. UI Components Style guidelines

@grzesiek2010 grzesiek2010 marked this pull request as ready for review March 3, 2023 13:01
Copy link
Member

@lognaturel lognaturel left a comment

Choose a reason for hiding this comment

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

Agreed the first commit is critical. The second seems like a good addition to me too.

@dbemke
Copy link

dbemke commented Mar 13, 2023

Tested with Success!

Verified on Android 10

Verified Cases:

@srujner
Copy link

srujner commented Mar 13, 2023

Tested with Success!

Verified on Android 13

@seadowg seadowg merged commit e0a6639 into getodk:master Mar 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
5 participants