[PR #5372] [MERGED] [PM-19108] Add Privileged Apps List Screen #5710

Closed
opened 2025-11-27 00:13:01 -06:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/bitwarden/android/pull/5372
Author: @SaintPatrck
Created: 6/16/2025
Status: Merged
Merged: 6/25/2025
Merged by: @SaintPatrck

Base: mainHead: PM-19108/privileged-app-mgmt-screen


📝 Commits (1)

  • 63735cf [PM-19108] Add Privileged Apps List Screen

📊 Changes

24 files changed (+1951 additions, -40 deletions)

View changed files

📝 app/src/main/AndroidManifest.xml (+5 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/data/credentials/di/CredentialProviderModule.kt (+4 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/data/credentials/repository/PrivilegedAppRepository.kt (+30 -3)
📝 app/src/main/kotlin/com/x8bit/bitwarden/data/credentials/repository/PrivilegedAppRepositoryImpl.kt (+114 -6)
app/src/main/kotlin/com/x8bit/bitwarden/data/credentials/repository/model/PrivilegedAppData.kt (+12 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/SettingsNavigation.kt (+4 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/AutoFillNavigation.kt (+2 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/AutoFillScreen.kt (+5 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/AutoFillViewModel.kt (+15 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/handlers/AutoFillHandlers.kt (+1 -1)
app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/privilegedapps/list/PrivilegedAppListNavigation.kt (+34 -0)
app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/privilegedapps/list/PrivilegedAppsListScreen.kt (+406 -0)
app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/privilegedapps/list/PrivilegedAppsListViewModel.kt (+342 -0)
app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/privilegedapps/list/model/PrivilegedAppListItem.kt (+53 -0)
📝 app/src/main/res/values/strings.xml (+9 -0)
📝 app/src/test/kotlin/com/x8bit/bitwarden/data/credentials/repository/PrivilegedAppRepositoryTest.kt (+108 -27)
app/src/test/kotlin/com/x8bit/bitwarden/data/credentials/util/PrivilegedAppListJsonUtils.kt (+24 -0)
📝 app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/AutoFillScreenTest.kt (+22 -0)
📝 app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/AutoFillViewModelTest.kt (+14 -0)
📝 app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/privilegedapps/about/AboutPrivilegedAppsScreenTest.kt (+1 -2)

...and 4 more files

📄 Description

🎟️ Tracking

PM-19108

📔 Objective

This commit introduces a new screen that displays lists of privileged applications.

The screen categorizes apps into "Installed apps" and "All trusted apps". "All trusted apps" further breaks down by trust authority: "Trusted by YOU", "Trusted by the Community", and "Trusted by Google". Users can revoke trust for apps they have personally trusted.

Key changes:

  • Added PrivilegedAppsListScreen.kt for the UI of the new screen.
  • Added PrivilegedAppsListViewModel.kt to manage the state and logic for the privileged apps list.
  • Updated PrivilegedAppRepository and PrivilegedAppRepositoryImpl to fetch and expose privileged app lists from Google, the community, and the user's local trust store. This includes reading allow lists from app assets.
  • Added PrivilegedAppData.kt model to represent the combined privileged app data.
  • Added PrivilegedAppListItem.kt model for items in the privileged apps list.
  • Integrated navigation to the new screen from the AutoFill settings.
  • Added <queries> intent to AndroidManifest.xml to allow checking which privileged apps are installed.
  • Added new string resources for the privileged apps list screen.
  • Added a delete icon drawable.

📸 Screenshots

Coming soon!

Reminders before review

  • Contributor guidelines followed
  • All formatters and local linters executed and passed
  • Written new unit and / or integration tests where applicable
  • Protected functional changes with optionality (feature flags)
  • Used internationalization (i18n) for all UI strings
  • CI builds passed
  • Communicated to DevOps any deployment requirements
  • Updated any necessary documentation (Confluence, contributing docs) or informed the documentation team

🦮 Reviewer guidelines

  • 👍 (:+1:) or similar for great changes
  • 📝 (:memo:) or ℹ️ (:information_source:) for notes or general info
  • (:question:) for questions
  • 🤔 (:thinking:) or 💭 (:thought_balloon:) for more open inquiry that's not quite a confirmed issue and could potentially benefit from discussion
  • 🎨 (:art:) for suggestions / improvements
  • (:x:) or ⚠️ (:warning:) for more significant problems or concerns needing attention
  • 🌱 (:seedling:) or ♻️ (:recycle:) for future improvements or indications of technical debt
  • ⛏ (:pick:) for minor or nitpick changes

🔄 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/5372 **Author:** [@SaintPatrck](https://github.com/SaintPatrck) **Created:** 6/16/2025 **Status:** ✅ Merged **Merged:** 6/25/2025 **Merged by:** [@SaintPatrck](https://github.com/SaintPatrck) **Base:** `main` ← **Head:** `PM-19108/privileged-app-mgmt-screen` --- ### 📝 Commits (1) - [`63735cf`](https://github.com/bitwarden/android/commit/63735cf6e290fbad82d61985577c3bd5fbba3e11) [PM-19108] Add Privileged Apps List Screen ### 📊 Changes **24 files changed** (+1951 additions, -40 deletions) <details> <summary>View changed files</summary> 📝 `app/src/main/AndroidManifest.xml` (+5 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/data/credentials/di/CredentialProviderModule.kt` (+4 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/data/credentials/repository/PrivilegedAppRepository.kt` (+30 -3) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/data/credentials/repository/PrivilegedAppRepositoryImpl.kt` (+114 -6) ➕ `app/src/main/kotlin/com/x8bit/bitwarden/data/credentials/repository/model/PrivilegedAppData.kt` (+12 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/SettingsNavigation.kt` (+4 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/AutoFillNavigation.kt` (+2 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/AutoFillScreen.kt` (+5 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/AutoFillViewModel.kt` (+15 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/handlers/AutoFillHandlers.kt` (+1 -1) ➕ `app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/privilegedapps/list/PrivilegedAppListNavigation.kt` (+34 -0) ➕ `app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/privilegedapps/list/PrivilegedAppsListScreen.kt` (+406 -0) ➕ `app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/privilegedapps/list/PrivilegedAppsListViewModel.kt` (+342 -0) ➕ `app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/privilegedapps/list/model/PrivilegedAppListItem.kt` (+53 -0) 📝 `app/src/main/res/values/strings.xml` (+9 -0) 📝 `app/src/test/kotlin/com/x8bit/bitwarden/data/credentials/repository/PrivilegedAppRepositoryTest.kt` (+108 -27) ➕ `app/src/test/kotlin/com/x8bit/bitwarden/data/credentials/util/PrivilegedAppListJsonUtils.kt` (+24 -0) 📝 `app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/AutoFillScreenTest.kt` (+22 -0) 📝 `app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/AutoFillViewModelTest.kt` (+14 -0) 📝 `app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/autofill/privilegedapps/about/AboutPrivilegedAppsScreenTest.kt` (+1 -2) _...and 4 more files_ </details> ### 📄 Description ## 🎟️ Tracking PM-19108 ## 📔 Objective This commit introduces a new screen that displays lists of privileged applications. The screen categorizes apps into "Installed apps" and "All trusted apps". "All trusted apps" further breaks down by trust authority: "Trusted by YOU", "Trusted by the Community", and "Trusted by Google". Users can revoke trust for apps they have personally trusted. Key changes: - Added `PrivilegedAppsListScreen.kt` for the UI of the new screen. - Added `PrivilegedAppsListViewModel.kt` to manage the state and logic for the privileged apps list. - Updated `PrivilegedAppRepository` and `PrivilegedAppRepositoryImpl` to fetch and expose privileged app lists from Google, the community, and the user's local trust store. This includes reading allow lists from app assets. - Added `PrivilegedAppData.kt` model to represent the combined privileged app data. - Added `PrivilegedAppListItem.kt` model for items in the privileged apps list. - Integrated navigation to the new screen from the AutoFill settings. - Added `<queries>` intent to `AndroidManifest.xml` to allow checking which privileged apps are installed. - Added new string resources for the privileged apps list screen. - Added a delete icon drawable. ## 📸 Screenshots Coming soon! ## ⏰ Reminders before review - Contributor guidelines followed - All formatters and local linters executed and passed - Written new unit and / or integration tests where applicable - Protected functional changes with optionality (feature flags) - Used internationalization (i18n) for all UI strings - CI builds passed - Communicated to DevOps any deployment requirements - Updated any necessary documentation (Confluence, contributing docs) or informed the documentation team ## 🦮 Reviewer guidelines <!-- Suggested interactions but feel free to use (or not) as you desire! --> - 👍 (`:+1:`) or similar for great changes - 📝 (`:memo:`) or ℹ️ (`:information_source:`) for notes or general info - ❓ (`:question:`) for questions - 🤔 (`:thinking:`) or 💭 (`:thought_balloon:`) for more open inquiry that's not quite a confirmed issue and could potentially benefit from discussion - 🎨 (`:art:`) for suggestions / improvements - ❌ (`:x:`) or ⚠️ (`:warning:`) for more significant problems or concerns needing attention - 🌱 (`:seedling:`) or ♻️ (`:recycle:`) for future improvements or indications of technical debt - ⛏ (`:pick:`) for minor or nitpick changes --- <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-27 00:13:01 -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#5710