[PR #934] [CLOSED] Migrating ListView to CollectionView #2671

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

📋 Pull Request Information

Original PR: https://github.com/bitwarden/android/pull/934
Author: @cscharf
Created: 5/29/2020
Status: Closed

Base: masterHead: collectionview


📝 Commits (8)

  • ce1b9ba Migrating ListView to CollectionView
  • 5377066 Update to Droid render for CipherViewCell
  • 4a75f3e Fixed app crash for CollectionView
  • be6034b Fix click events for items and groups
  • ffcbd6f Android view cell renderer
  • 6cb6613 Small tweak to renderer, still no joy
  • 5d4f0d8 Incorporate feedback from Xamarin team
  • 9aae75e Attempt at re-extending Android controls

📊 Changes

28 files changed (+511 additions, -916 deletions)

View changed files

📝 src/Android/Android.csproj (+2 -9)
📝 src/Android/Properties/AndroidManifest.xml (+34 -65)
src/Android/Renderers/CipherViewCellRenderer.cs (+0 -238)
src/Android/Renderers/ExtendedCollectionViewRenderer.cs (+31 -0)
src/Android/Renderers/ExtendedListViewRenderer.cs (+0 -29)
src/Android/Resources/layout/CipherViewCell.axml (+0 -86)
📝 src/App/App.csproj (+1 -1)
📝 src/App/Controls/CipherViewCell/CipherViewCell.xaml (+85 -97)
📝 src/App/Controls/CipherViewCell/CipherViewCell.xaml.cs (+6 -137)
📝 src/App/Controls/CipherViewCell/CipherViewCellViewModel.cs (+6 -0)
src/App/Controls/ExtendedCollectionView.cs (+8 -0)
src/App/Controls/ExtendedListView.cs (+0 -12)
📝 src/App/Pages/Generator/GeneratorHistoryPage.xaml (+39 -43)
📝 src/App/Pages/Settings/FoldersPage.xaml (+15 -15)
📝 src/App/Pages/Settings/FoldersPage.xaml.cs (+4 -3)
📝 src/App/Pages/Settings/SettingsPage/SettingsPage.xaml (+18 -22)
📝 src/App/Pages/Settings/SettingsPage/SettingsPage.xaml.cs (+4 -3)
📝 src/App/Pages/Vault/AutofillCiphersPage.xaml (+19 -25)
📝 src/App/Pages/Vault/AutofillCiphersPage.xaml.cs (+4 -3)
📝 src/App/Pages/Vault/CiphersPage.xaml (+5 -7)

...and 8 more files

📄 Description

Builds but crashes when displaying the ciphers page.

  • Refactored all ListView to CollectionView, including AutofillCiphers, Ciphers and Groupings pages that used that type, as well as Folders, Settings and Password History
  • Refactored CipherViewCell to no longer be a ViewCell but instead a Grid (based on feedback); removed "CellView" from everywhere
  • Removed Android renderers for the CipherViewCell and Extended list views
  • Updated style definitions to point to CollectionView
  • Added separator style as BoxView on necessary collections since CollectionView doesn't support the ListView concept of Separator
  • Added Icon Renderer to utilities instead of coding that directly into cipher view control

Open Issues

  • iOS rendering of Grouped list items is wonky at best, sometimes accordion style collapse of white-space and sometimes not, sometimes different throughout the list, etc.
  • Android - Context menu doesn't work, null reference exception
  • iOS + Android - Padding of items in CollectionView when viewing vault is non-existent and squishes them all together (Grouped view appears slightly differently when there are groups)

🔄 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/934 **Author:** [@cscharf](https://github.com/cscharf) **Created:** 5/29/2020 **Status:** ❌ Closed **Base:** `master` ← **Head:** `collectionview` --- ### 📝 Commits (8) - [`ce1b9ba`](https://github.com/bitwarden/android/commit/ce1b9ba75141a981a6c9abc7bc444186677ab4ee) Migrating ListView to CollectionView - [`5377066`](https://github.com/bitwarden/android/commit/53770665661b3d2e1d37ff3fc129ed9539f53288) Update to Droid render for CipherViewCell - [`4a75f3e`](https://github.com/bitwarden/android/commit/4a75f3ec6e9d1b344765656726ae237df48f6148) Fixed app crash for CollectionView - [`be6034b`](https://github.com/bitwarden/android/commit/be6034b75616bca60aa25a86fb41eb2c47ac174d) Fix click events for items and groups - [`ffcbd6f`](https://github.com/bitwarden/android/commit/ffcbd6f7e036dc38cb6c956cd9a7effb5fd7d0c6) Android view cell renderer - [`6cb6613`](https://github.com/bitwarden/android/commit/6cb6613d0599306f420c5914e0e013e73d96415a) Small tweak to renderer, still no joy - [`5d4f0d8`](https://github.com/bitwarden/android/commit/5d4f0d85d3281cf9503d7eb7683c897e3793a625) Incorporate feedback from Xamarin team - [`9aae75e`](https://github.com/bitwarden/android/commit/9aae75e8a7f172278c12ed7bade18b9b5a34d2b0) Attempt at re-extending Android controls ### 📊 Changes **28 files changed** (+511 additions, -916 deletions) <details> <summary>View changed files</summary> 📝 `src/Android/Android.csproj` (+2 -9) 📝 `src/Android/Properties/AndroidManifest.xml` (+34 -65) ➖ `src/Android/Renderers/CipherViewCellRenderer.cs` (+0 -238) ➕ `src/Android/Renderers/ExtendedCollectionViewRenderer.cs` (+31 -0) ➖ `src/Android/Renderers/ExtendedListViewRenderer.cs` (+0 -29) ➖ `src/Android/Resources/layout/CipherViewCell.axml` (+0 -86) 📝 `src/App/App.csproj` (+1 -1) 📝 `src/App/Controls/CipherViewCell/CipherViewCell.xaml` (+85 -97) 📝 `src/App/Controls/CipherViewCell/CipherViewCell.xaml.cs` (+6 -137) 📝 `src/App/Controls/CipherViewCell/CipherViewCellViewModel.cs` (+6 -0) ➕ `src/App/Controls/ExtendedCollectionView.cs` (+8 -0) ➖ `src/App/Controls/ExtendedListView.cs` (+0 -12) 📝 `src/App/Pages/Generator/GeneratorHistoryPage.xaml` (+39 -43) 📝 `src/App/Pages/Settings/FoldersPage.xaml` (+15 -15) 📝 `src/App/Pages/Settings/FoldersPage.xaml.cs` (+4 -3) 📝 `src/App/Pages/Settings/SettingsPage/SettingsPage.xaml` (+18 -22) 📝 `src/App/Pages/Settings/SettingsPage/SettingsPage.xaml.cs` (+4 -3) 📝 `src/App/Pages/Vault/AutofillCiphersPage.xaml` (+19 -25) 📝 `src/App/Pages/Vault/AutofillCiphersPage.xaml.cs` (+4 -3) 📝 `src/App/Pages/Vault/CiphersPage.xaml` (+5 -7) _...and 8 more files_ </details> ### 📄 Description Builds but crashes when displaying the ciphers page. * Refactored all ListView to CollectionView, including AutofillCiphers, Ciphers and Groupings pages that used that type, as well as Folders, Settings and Password History * Refactored CipherViewCell to no longer be a ViewCell but instead a Grid (based on feedback); removed "CellView" from everywhere * Removed Android renderers for the CipherViewCell and Extended list views * Updated style definitions to point to CollectionView * Added separator style as BoxView on necessary collections since CollectionView doesn't support the ListView concept of Separator * Added Icon Renderer to utilities instead of coding that directly into cipher view control Open Issues * iOS rendering of Grouped list items is wonky at best, sometimes accordion style collapse of white-space and sometimes not, sometimes different throughout the list, etc. * Android - Context menu doesn't work, null reference exception * iOS + Android - Padding of items in CollectionView when viewing vault is non-existent and squishes them all together (Grouped view appears slightly differently when there are groups) --- <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:22:28 -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#2671