[PR #1785] [MERGED] Fix Large Font Accessibility issues on icons on Vault and Send #44727

Closed
opened 2026-04-26 11:57:31 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/bitwarden/android/pull/1785
Author: @fedemkr
Created: 2/17/2022
Status: Merged
Merged: 2/17/2022
Merged by: @fedemkr

Base: masterHead: fix-large-font-accessibility-list-with-icon


📝 Commits (1)

  • a03f79b Fixed some Large Font Accessibility issues on Vault and Send screens for Icons Display #1774

📊 Changes

14 files changed (+81 additions, -17 deletions)

View changed files

📝 src/Android/Services/DeviceActionService.cs (+6 -0)
📝 src/App/Abstractions/IDeviceActionService.cs (+1 -0)
📝 src/App/Controls/CipherViewCell/CipherViewCell.xaml (+13 -10)
📝 src/App/Controls/CipherViewCell/CipherViewCell.xaml.cs (+5 -0)
📝 src/App/Controls/IconLabel.cs (+2 -0)
📝 src/App/Controls/SendViewCell/SendViewCell.xaml (+2 -1)
📝 src/App/Controls/SendViewCell/SendViewCell.xaml.cs (+5 -0)
📝 src/App/Pages/Send/SendGroupingsPage/SendGroupingsPage.xaml (+2 -1)
📝 src/App/Pages/Vault/GroupingsPage/GroupingsPage.xaml (+2 -1)
📝 src/App/Styles/Base.xaml (+2 -2)
📝 src/iOS.Core/Renderers/CustomLabelRenderer.cs (+12 -2)
📝 src/iOS.Core/Services/DeviceActionService.cs (+7 -0)
src/iOS.Core/Utilities/FontElementExtensions.cs (+21 -0)
📝 src/iOS.Core/iOS.Core.csproj (+1 -0)

📄 Description

Type of change

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

Objective

This PR fixes the Large Font Accessibility issues on the Vault and Send views, that were displaying the icons partially when the system font was too big.

Code changes

  • DeviceActionService.cs: Added GetSystemFontSizeScale() to calculate sizes that are not directly related to fonts like grid columns.
  • CypherViewCell / SendViewCell: Changed so that icons are columns are adapted to Accessibility Large Fonts
  • IconLabel: Added ShouldUpdateFontSizeDynamicallyForAccesibility to be specific on when we want to update the font size for accesibility. This was added just in case to not affect the whole app thus introducing this change little by little. Then when we address the Accessibillity Large Font issues across the whole app we can make the logic more generic and remove this property.
  • (iOS) CustomLabelRenderer: Added logic to adapt non-NamedSizes font sizes to dynamic font sizes for accessibility but only for IconLabel with ShouldUpdateFontSizeDynamicallyForAccesibility set to true
  • FontElementExtetnsions.cs: Added helper method to get UIFont from a IFontElement

Screenshots

Simulator Screen Shot - iPhone 11 Pro Max - 2022-02-17 at 17 42 30
Simulator Screen Shot - iPhone 11 Pro Max - 2022-02-17 at 17 42 15

Testing requirements

On the Vault and Send tabs, the rows should be shown correctly without clipping the icons when changing the Accessibility Large Fonts from the system settings.

Known issue: On iOS, for web icons you may not see the update on size if you don't close the app and open it again after changing the Large Font settings. This will be addressed in a different PR

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/1785 **Author:** [@fedemkr](https://github.com/fedemkr) **Created:** 2/17/2022 **Status:** ✅ Merged **Merged:** 2/17/2022 **Merged by:** [@fedemkr](https://github.com/fedemkr) **Base:** `master` ← **Head:** `fix-large-font-accessibility-list-with-icon` --- ### 📝 Commits (1) - [`a03f79b`](https://github.com/bitwarden/android/commit/a03f79b38c9e5b4e003fc18e01e8f5abb5dc2e59) Fixed some Large Font Accessibility issues on Vault and Send screens for Icons Display #1774 ### 📊 Changes **14 files changed** (+81 additions, -17 deletions) <details> <summary>View changed files</summary> 📝 `src/Android/Services/DeviceActionService.cs` (+6 -0) 📝 `src/App/Abstractions/IDeviceActionService.cs` (+1 -0) 📝 `src/App/Controls/CipherViewCell/CipherViewCell.xaml` (+13 -10) 📝 `src/App/Controls/CipherViewCell/CipherViewCell.xaml.cs` (+5 -0) 📝 `src/App/Controls/IconLabel.cs` (+2 -0) 📝 `src/App/Controls/SendViewCell/SendViewCell.xaml` (+2 -1) 📝 `src/App/Controls/SendViewCell/SendViewCell.xaml.cs` (+5 -0) 📝 `src/App/Pages/Send/SendGroupingsPage/SendGroupingsPage.xaml` (+2 -1) 📝 `src/App/Pages/Vault/GroupingsPage/GroupingsPage.xaml` (+2 -1) 📝 `src/App/Styles/Base.xaml` (+2 -2) 📝 `src/iOS.Core/Renderers/CustomLabelRenderer.cs` (+12 -2) 📝 `src/iOS.Core/Services/DeviceActionService.cs` (+7 -0) ➕ `src/iOS.Core/Utilities/FontElementExtensions.cs` (+21 -0) 📝 `src/iOS.Core/iOS.Core.csproj` (+1 -0) </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--> This PR fixes the Large Font Accessibility issues on the Vault and Send views, that were displaying the icons partially when the system font was too big. ## 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--> * **DeviceActionService.cs:** Added `GetSystemFontSizeScale()` to calculate sizes that are not directly related to fonts like grid columns. * **CypherViewCell / SendViewCell:** Changed so that icons are columns are adapted to Accessibility Large Fonts * **IconLabel:** Added `ShouldUpdateFontSizeDynamicallyForAccesibility` to be specific on when we want to update the font size for accesibility. This was added just in case to not affect the whole app thus introducing this change little by little. Then when we address the Accessibillity Large Font issues across the whole app we can make the logic more generic and remove this property. * **(iOS) CustomLabelRenderer:** Added logic to adapt non-NamedSizes font sizes to dynamic font sizes for accessibility but only for `IconLabel` with `ShouldUpdateFontSizeDynamicallyForAccesibility` set to `true` * **FontElementExtetnsions.cs:** Added helper method to get `UIFont` from a `IFontElement` ## Screenshots <!--Required for any UI changes. Delete if not applicable--> ![Simulator Screen Shot - iPhone 11 Pro Max - 2022-02-17 at 17 42 30](https://user-images.githubusercontent.com/15682323/154569955-3a9abc46-f865-46fe-b7b2-386e0fec6868.png) ![Simulator Screen Shot - iPhone 11 Pro Max - 2022-02-17 at 17 42 15](https://user-images.githubusercontent.com/15682323/154569966-57026520-39f1-4478-b043-5e7b9d0d321e.png) ## Testing requirements <!--What functionality requires testing by QA? This includes testing new behavior and regression testing--> On the Vault and Send tabs, the rows should be shown correctly without clipping the icons when changing the Accessibility Large Fonts from the system settings. Known issue: On iOS, for web icons you may not see the update on size if you don't close the app and open it again after changing the Large Font settings. This will be addressed in a different PR ## 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 2026-04-26 11:57:31 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/android#44727