From a9048c6393dc82bcba5290874145590268956cf3 Mon Sep 17 00:00:00 2001 From: Patrick Honkonen <1883101+SaintPatrck@users.noreply.github.com> Date: Wed, 20 May 2026 15:03:13 -0400 Subject: [PATCH] [PM-37810] fix: Update cancel premium confirmation dialog (#6953) --- .../ui/platform/feature/premium/plan/PlanScreen.kt | 9 +++++---- .../ui/platform/feature/premium/plan/PlanScreenTest.kt | 8 ++++---- ui/src/main/res/values/strings.xml | 4 ++-- 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/premium/plan/PlanScreen.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/premium/plan/PlanScreen.kt index ac0951c180..20946f07d6 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/premium/plan/PlanScreen.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/platform/feature/premium/plan/PlanScreen.kt @@ -211,13 +211,14 @@ private fun PlanDialogs( is PlanState.DialogState.CancelConfirmation -> { BitwardenTwoButtonDialog( - title = stringResource(id = BitwardenString.cancel_premium), + title = stringResource(id = BitwardenString.continue_to_stripe), message = stringResource( - id = BitwardenString.cancel_premium_confirmation, + id = BitwardenString + .youll_be_taken_to_stripe_to_manage_your_subscription_cancellation, dialogState.nextRenewalDate, ), - confirmButtonText = stringResource(id = BitwardenString.cancel_now), - dismissButtonText = stringResource(id = BitwardenString.close), + confirmButtonText = stringResource(id = BitwardenString.continue_text), + dismissButtonText = stringResource(id = BitwardenString.cancel), onConfirmClick = handlers.onConfirmCancelClick, onDismissClick = handlers.onDismissCancelConfirmation, onDismissRequest = handlers.onDismissCancelConfirmation, diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/premium/plan/PlanScreenTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/premium/plan/PlanScreenTest.kt index 5ea6e6e569..7bf9127644 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/premium/plan/PlanScreenTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/premium/plan/PlanScreenTest.kt @@ -1043,12 +1043,12 @@ class PlanScreenTest : BitwardenComposeTest() { } composeTestRule - .onAllNodesWithText("Cancel Premium") + .onAllNodesWithText("Continue to Stripe?") .filterToOne(hasAnyAncestor(isDialog())) .assertExists() composeTestRule .onAllNodesWithText( - "You’ll continue to have Premium access until April 2, 2026.", + "You’ll be taken to Stripe to manage your subscription cancellation.", ) .filterToOne(hasAnyAncestor(isDialog())) .assertExists() @@ -1065,7 +1065,7 @@ class PlanScreenTest : BitwardenComposeTest() { ) } composeTestRule - .onAllNodesWithText("Cancel now") + .onAllNodesWithText("Continue") .filterToOne(hasAnyAncestor(isDialog())) .performClick() verify { viewModel.trySendAction(PlanAction.ConfirmCancelClick) } @@ -1082,7 +1082,7 @@ class PlanScreenTest : BitwardenComposeTest() { ) } composeTestRule - .onAllNodesWithText("Close") + .onAllNodesWithText("Cancel") .filterToOne(hasAnyAncestor(isDialog())) .performClick() verify { viewModel.trySendAction(PlanAction.DismissCancelConfirmation) } diff --git a/ui/src/main/res/values/strings.xml b/ui/src/main/res/values/strings.xml index 21df3e1544..3baca079ce 100644 --- a/ui/src/main/res/values/strings.xml +++ b/ui/src/main/res/values/strings.xml @@ -1304,8 +1304,6 @@ Do you want to switch to this account? Manage plan Manage your subscription plan in the Bitwarden web app. Cancel Premium - Cancel now - You’ll continue to have Premium access until %1$s. Active Canceled Past due @@ -1393,4 +1391,6 @@ Do you want to switch to this account? Bitwarden needs local network access to sync with your server. Without this permission, the app won’t be able to connect. Without this permission, Bitwarden won’t be able to connect and sync with your server. You can enable this in your device settings. Your request was interrupted because the app needs local network access. You can enable this in your device settings. + Continue to Stripe? + You’ll be taken to Stripe to manage your subscription cancellation.