[PR #5636] [MERGED] [PM-24411] Extract pending intent management for Credential Manager requests #5929

Closed
opened 2025-11-27 00:17:14 -06:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/bitwarden/android/pull/5636
Author: @SaintPatrck
Created: 8/1/2025
Status: Merged
Merged: 8/5/2025
Merged by: @SaintPatrck

Base: mainHead: extract-credman-intent-management


📝 Commits (1)

  • 795ec55 Extract pending intent management for Credential Manager requests

📊 Changes

12 files changed (+229 additions, -245 deletions)

View changed files

📝 app/src/main/kotlin/com/x8bit/bitwarden/data/credentials/builder/CredentialEntryBuilderImpl.kt (+13 -22)
📝 app/src/main/kotlin/com/x8bit/bitwarden/data/credentials/di/CredentialProviderModule.kt (+15 -5)
app/src/main/kotlin/com/x8bit/bitwarden/data/credentials/manager/CredentialManagerPendingIntentManager.kt (+69 -0)
app/src/main/kotlin/com/x8bit/bitwarden/data/credentials/manager/CredentialManagerPendingIntentManagerImpl.kt (+104 -0)
📝 app/src/main/kotlin/com/x8bit/bitwarden/data/credentials/processor/CredentialProviderProcessorImpl.kt (+4 -15)
📝 app/src/main/kotlin/com/x8bit/bitwarden/data/credentials/util/CredentialProviderIntentUtils.kt (+4 -4)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/manager/intent/IntentManager.kt (+0 -50)
📝 app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/manager/intent/IntentManagerImpl.kt (+0 -107)
📝 app/src/test/kotlin/com/x8bit/bitwarden/data/credentials/builder/CredentialEntryBuilderTest.kt (+5 -13)
📝 app/src/test/kotlin/com/x8bit/bitwarden/data/credentials/processor/CredentialProviderProcessorTest.kt (+7 -15)
📝 app/src/test/kotlin/com/x8bit/bitwarden/data/credentials/util/CredentialManagerIntentUtilsTest.kt (+4 -4)
📝 app/src/test/kotlin/com/x8bit/bitwarden/ui/credentials/manager/CredentialProviderCompletionManagerTest.kt (+4 -10)

📄 Description

🎟️ Tracking

PM-24411

📔 Objective

This commit introduces CredentialManagerPendingIntentManager to handle the creation of PendingIntents used by the CredentialManager.

Key changes:

  • Created CredentialManagerPendingIntentManager interface and its implementation CredentialManagerPendingIntentManagerImpl.
  • CredentialProviderProcessorImpl and CredentialEntryBuilderImpl now use CredentialManagerPendingIntentManager for creating PendingIntents.
  • Removed PendingIntent creation methods from IntentManager and IntentManagerImpl.
  • Updated constants for Intent actions and extra keys to reside in CredentialManagerPendingIntentManager.kt.
  • Adjusted tests in CredentialProviderProcessorTest, CredentialProviderCompletionManagerTest, CredentialManagerIntentUtilsTest, and CredentialEntryBuilderTest to use or mock the new CredentialManagerPendingIntentManager.
  • Updated CredentialProviderModule to provide CredentialManagerPendingIntentManager.

📸 Screenshots

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/5636 **Author:** [@SaintPatrck](https://github.com/SaintPatrck) **Created:** 8/1/2025 **Status:** ✅ Merged **Merged:** 8/5/2025 **Merged by:** [@SaintPatrck](https://github.com/SaintPatrck) **Base:** `main` ← **Head:** `extract-credman-intent-management` --- ### 📝 Commits (1) - [`795ec55`](https://github.com/bitwarden/android/commit/795ec5530db2cfb5bf7300c6b4187c91bbce7f38) Extract pending intent management for Credential Manager requests ### 📊 Changes **12 files changed** (+229 additions, -245 deletions) <details> <summary>View changed files</summary> 📝 `app/src/main/kotlin/com/x8bit/bitwarden/data/credentials/builder/CredentialEntryBuilderImpl.kt` (+13 -22) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/data/credentials/di/CredentialProviderModule.kt` (+15 -5) ➕ `app/src/main/kotlin/com/x8bit/bitwarden/data/credentials/manager/CredentialManagerPendingIntentManager.kt` (+69 -0) ➕ `app/src/main/kotlin/com/x8bit/bitwarden/data/credentials/manager/CredentialManagerPendingIntentManagerImpl.kt` (+104 -0) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/data/credentials/processor/CredentialProviderProcessorImpl.kt` (+4 -15) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/data/credentials/util/CredentialProviderIntentUtils.kt` (+4 -4) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/manager/intent/IntentManager.kt` (+0 -50) 📝 `app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/manager/intent/IntentManagerImpl.kt` (+0 -107) 📝 `app/src/test/kotlin/com/x8bit/bitwarden/data/credentials/builder/CredentialEntryBuilderTest.kt` (+5 -13) 📝 `app/src/test/kotlin/com/x8bit/bitwarden/data/credentials/processor/CredentialProviderProcessorTest.kt` (+7 -15) 📝 `app/src/test/kotlin/com/x8bit/bitwarden/data/credentials/util/CredentialManagerIntentUtilsTest.kt` (+4 -4) 📝 `app/src/test/kotlin/com/x8bit/bitwarden/ui/credentials/manager/CredentialProviderCompletionManagerTest.kt` (+4 -10) </details> ### 📄 Description ## 🎟️ Tracking PM-24411 ## 📔 Objective This commit introduces `CredentialManagerPendingIntentManager` to handle the creation of `PendingIntent`s used by the CredentialManager. Key changes: - Created `CredentialManagerPendingIntentManager` interface and its implementation `CredentialManagerPendingIntentManagerImpl`. - `CredentialProviderProcessorImpl` and `CredentialEntryBuilderImpl` now use `CredentialManagerPendingIntentManager` for creating `PendingIntent`s. - Removed `PendingIntent` creation methods from `IntentManager` and `IntentManagerImpl`. - Updated constants for Intent actions and extra keys to reside in `CredentialManagerPendingIntentManager.kt`. - Adjusted tests in `CredentialProviderProcessorTest`, `CredentialProviderCompletionManagerTest`, `CredentialManagerIntentUtilsTest`, and `CredentialEntryBuilderTest` to use or mock the new `CredentialManagerPendingIntentManager`. - Updated `CredentialProviderModule` to provide `CredentialManagerPendingIntentManager`. ## 📸 Screenshots <!-- Required for any UI changes; delete if not applicable. Use fixed width images for better display. --> ## ⏰ 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:17:14 -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#5929