[PR #1714] [MERGED] Expand Settings TimePicker tap recognition to entire row #3068

Closed
opened 2025-11-26 23:27:53 -06:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/bitwarden/android/pull/1714
Author: @jlf0dev
Created: 1/10/2022
Status: Merged
Merged: 1/24/2022
Merged by: @jlf0dev

Base: masterHead: bug/cutom-field-tap-radius


📝 Commits (2)

  • 8fd2446 move timepicker to separate DataTemplate
  • f180a90 null check on TimePicker

📊 Changes

3 files changed (+54 additions, -7 deletions)

View changed files

📝 src/App/Pages/Settings/SettingsPage/SettingsPage.xaml (+32 -5)
📝 src/App/Pages/Settings/SettingsPage/SettingsPage.xaml.cs (+13 -1)
📝 src/App/Pages/Settings/SettingsPage/SettingsPageListItemSelector.cs (+9 -1)

📄 Description

Type of change

  • Bug fix
  • New feature development
  • Tech debt (refactoring, code cleanup, dependency upgrades, etc)
  • Build/deploy pipeline (DevOps)
  • Other

Objective

Every option in settings allows you to tap anywhere within the row to enable the action. Every option except "Custom" timeouts. This fix pulls the option into its own data template and adds a tap recognizer on the entire row for the TimePicker.

Asana: https://app.asana.com/0/1169444489336079/1201172188894451/f

Code changes

  • file.ext: Description of what was changed and why
  • src/App/Pages/Settings/SettingsPage/SettingsPage.xaml: Create new DataTemplate for Custom option in Settings. Include DataTemplate in the DataTemplateSelector
  • src/App/Pages/Settings/SettingsPage/SettingsPage.xaml.cs: If TapGestureRecognizer is triggered, find the TimePicker from the StackLayout and trigger.
  • src/App/Pages/Settings/SettingsPage/SettingsPageListItemSelector.cs: Return new DataTemplate for Custom option

Screenshots

https://user-images.githubusercontent.com/24985544/148834516-153919be-d983-43e6-b247-2a8352507515.mov

Testing requirements

  • Test functionality of Settings options

Before you submit

  • I have added unit tests where it makes sense to do so (encouraged but not required)
  • This change requires a documentation update (notify the documentation team)
  • This change has particular deployment requirements (notify the DevOps team)

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/bitwarden/android/pull/1714 **Author:** [@jlf0dev](https://github.com/jlf0dev) **Created:** 1/10/2022 **Status:** ✅ Merged **Merged:** 1/24/2022 **Merged by:** [@jlf0dev](https://github.com/jlf0dev) **Base:** `master` ← **Head:** `bug/cutom-field-tap-radius` --- ### 📝 Commits (2) - [`8fd2446`](https://github.com/bitwarden/android/commit/8fd2446fc7eae819df8181726e4de76e59f2de61) move timepicker to separate DataTemplate - [`f180a90`](https://github.com/bitwarden/android/commit/f180a90f81535d76eef9421b1ef13c01fa184129) null check on TimePicker ### 📊 Changes **3 files changed** (+54 additions, -7 deletions) <details> <summary>View changed files</summary> 📝 `src/App/Pages/Settings/SettingsPage/SettingsPage.xaml` (+32 -5) 📝 `src/App/Pages/Settings/SettingsPage/SettingsPage.xaml.cs` (+13 -1) 📝 `src/App/Pages/Settings/SettingsPage/SettingsPageListItemSelector.cs` (+9 -1) </details> ### 📄 Description ## Type of change - [x] Bug fix - [ ] New feature development - [ ] Tech debt (refactoring, code cleanup, dependency upgrades, etc) - [ ] Build/deploy pipeline (DevOps) - [ ] Other ## Objective <!--Describe what the purpose of this PR is. For example: what bug you're fixing or what new feature you're adding--> Every option in settings allows you to tap anywhere within the row to enable the action. Every option except "Custom" timeouts. This fix pulls the option into its own data template and adds a tap recognizer on the entire row for the TimePicker. Asana: https://app.asana.com/0/1169444489336079/1201172188894451/f ## Code changes <!--Explain the changes you've made to each file or major component. This should help the reviewer understand your changes--> <!--Also refer to any related changes or PRs in other repositories--> * **file.ext:** Description of what was changed and why * **src/App/Pages/Settings/SettingsPage/SettingsPage.xaml:** Create new DataTemplate for Custom option in Settings. Include DataTemplate in the DataTemplateSelector * **src/App/Pages/Settings/SettingsPage/SettingsPage.xaml.cs:** If TapGestureRecognizer is triggered, find the TimePicker from the StackLayout and trigger. * **src/App/Pages/Settings/SettingsPage/SettingsPageListItemSelector.cs:** Return new DataTemplate for Custom option ## Screenshots <!--Required for any UI changes. Delete if not applicable--> https://user-images.githubusercontent.com/24985544/148834516-153919be-d983-43e6-b247-2a8352507515.mov ## Testing requirements <!--What functionality requires testing by QA? This includes testing new behavior and regression testing--> - Test functionality of Settings options ## Before you submit - [ ] I have added **unit tests** where it makes sense to do so (encouraged but not required) - [ ] This change requires a **documentation update** (notify the documentation team) - [ ] This change has particular **deployment requirements** (notify the DevOps team) --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2025-11-26 23:27:53 -06:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/android#3068