[PR #1845] [MERGED] Fix Settings crash by removing grouped items #3174

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

📋 Pull Request Information

Original PR: https://github.com/bitwarden/android/pull/1845
Author: @fedemkr
Created: 3/15/2022
Status: Merged
Merged: 3/15/2022
Merged by: @fedemkr

Base: masterHead: settings-ios-crash-fix


📝 Commits (1)

  • 8737c30 Removed grouping from Settings to fix a crash on iOS 15.4

📊 Changes

6 files changed (+57 additions, -36 deletions)

View changed files

src/App/Pages/Settings/SettingsPage/ISettingsPageListItem.cs (+6 -0)
📝 src/App/Pages/Settings/SettingsPage/SettingsPage.xaml (+19 -20)
src/App/Pages/Settings/SettingsPage/SettingsPageHeaderListItem.cs (+12 -0)
📝 src/App/Pages/Settings/SettingsPage/SettingsPageListItem.cs (+1 -2)
📝 src/App/Pages/Settings/SettingsPage/SettingsPageListItemSelector.cs (+6 -8)
📝 src/App/Pages/Settings/SettingsPage/SettingsPageViewModel.cs (+13 -6)

📄 Description

Type of change

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

Objective

Fix Settings crash on iOS 15.4

Code changes

  • ISettingsPageListItem: Interface that all items share
  • ISettingsPageHeaderListItem: Item for the header
  • SettingsPageViewModel Changed the approach so that group is not used and there is a plain list of items
  • SettingsPageView Removed the GroupHeaderTemplate and added a new template for the header list item
  • SettingsPageListItemSelector Added the HeaderTemplate

Testing requirements

Settings page should behave as expected without crashing even if you change tabs rapidly

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/1845 **Author:** [@fedemkr](https://github.com/fedemkr) **Created:** 3/15/2022 **Status:** ✅ Merged **Merged:** 3/15/2022 **Merged by:** [@fedemkr](https://github.com/fedemkr) **Base:** `master` ← **Head:** `settings-ios-crash-fix` --- ### 📝 Commits (1) - [`8737c30`](https://github.com/bitwarden/android/commit/8737c30d5b095632afa9948d0ed88b2bc43d672b) Removed grouping from Settings to fix a crash on iOS 15.4 ### 📊 Changes **6 files changed** (+57 additions, -36 deletions) <details> <summary>View changed files</summary> ➕ `src/App/Pages/Settings/SettingsPage/ISettingsPageListItem.cs` (+6 -0) 📝 `src/App/Pages/Settings/SettingsPage/SettingsPage.xaml` (+19 -20) ➕ `src/App/Pages/Settings/SettingsPage/SettingsPageHeaderListItem.cs` (+12 -0) 📝 `src/App/Pages/Settings/SettingsPage/SettingsPageListItem.cs` (+1 -2) 📝 `src/App/Pages/Settings/SettingsPage/SettingsPageListItemSelector.cs` (+6 -8) 📝 `src/App/Pages/Settings/SettingsPage/SettingsPageViewModel.cs` (+13 -6) </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--> Fix Settings crash on iOS 15.4 ## 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--> * **ISettingsPageListItem:** Interface that all items share * **ISettingsPageHeaderListItem:** Item for the header * **SettingsPageViewModel** Changed the approach so that group is not used and there is a plain list of items * **SettingsPageView** Removed the `GroupHeaderTemplate` and added a new template for the header list item * **SettingsPageListItemSelector** Added the `HeaderTemplate` ## Testing requirements <!--What functionality requires testing by QA? This includes testing new behavior and regression testing--> Settings page should behave as expected without crashing even if you change tabs rapidly ## 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:29:15 -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#3174