material-components / material-components/material-components-android
[TimePicker] Digital: always open keyboard, select all, OK on Enter
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 17.4k
- Forks
- 3.2k
- PR merge metrics
- No merged PRs in 30d
Description
**Is your feature request related to a problem? Please describe.**
The digital time picker is far from intuitive in its current state. I propose three simple usability improvements.
**Describe the solution you'd like**
1. **Always open the on-screen keyboard upon being triggered**
The keyboard is always necessary to make use of the picker, so it doesn't make sense to have it closed at first. It doesn't always open automatically, though.
_Duplicate of #1511 which is **not fixed**._
2. **When clicking either field, always select all its contents**
This way, the user can start entering a value right away. Additionally, it would solve the strange behavior of ignoring user input and switching to the minutes input (placing the cursor at the _end_ of the value) when entering a number while the cursor is at the end of the hours input (and hours value >9 is already present). This really complicates reliable input.
3. **Enter button should act as OK**
When in the minutes field, the keyboard's Enter key should confirm the input (i.e. act as the OK button), instead of just closing the keyboard.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the Digital time picker implementation and its existing tests. Reproduce the three requested interactions—keyboard opening on trigger, selecting all field contents, and Enter confirming from the minutes field—and consider the work done when each behavior is covered and verified.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, java
- Domain
- mobile
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100