From b51ba9ca9ce08127dacb04ff98f1b5d9c75d5952 Mon Sep 17 00:00:00 2001 From: catalinradoiu Date: Wed, 26 Aug 2026 16:36:24 +0300 Subject: [PATCH 01/10] Add the password import step UI to the new-user onboarding Adds the onboarding cards for the password import experiment: the prompt card, and the outcome card with its parsing, finished and failed states. The step indicator gains a CONTINUES_PREVIOUS mode so the prompt and outcome cards read as one product step. The import flow itself is not wired up yet: the launch step is a no-op with a TODO, and the outcome card stays on its parsing state until the follow-up lands. Task: https://app.asana.com/1/137249556945/project/72649045549333/task/1216462243759588 Co-Authored-By: Claude Opus 5 (1M context) # Conflicts: # app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingEvent.kt # app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingPlanProvider.kt # app/src/main/java/com/duckduckgo/app/onboarding/ui/page/BrandDesignUpdatePageViewModel.kt # app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ContentConfig.kt # app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolver.kt # app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/OnboardingDialogShownPixels.kt # app/src/main/res/layout/pre_onboarding_dax_dialog_cta_brand_design_update.xml # app/src/test/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingPlanProviderTest.kt --- .../pixels/definitions/onboarding.json5 | 30 ++++ .../shape/DaxBubbleBottomEdgeTreatment.kt | 136 +++++++---------- ...boardingBubbleBrandDesignUpdateCardView.kt | 11 ++ ...sign-system-rebrand-onboarding-theming.xml | 3 + .../shape/DaxBubbleBottomEdgeTreatmentTest.kt | 52 +++++++ app/build.gradle | 1 + .../NewUserOnboardingActivityDialog.kt | 8 + .../NewUserOnboardingActivityStep.kt | 38 +++-- .../orchestrator/NewUserOnboardingEvent.kt | 18 +++ .../NewUserOnboardingPlanContext.kt | 12 ++ .../NewUserOnboardingPlanProvider.kt | 142 ++++++++++++++++-- .../orchestrator/NewUserOnboardingStepIds.kt | 3 + .../ui/page/BrandDesignUpdatePageViewModel.kt | 7 + .../ui/page/OnboardingBackgroundAnimator.kt | 4 + .../ui/page/OnboardingPixelSender.kt | 6 + .../ConfigDrivenOnboardingPageViewModel.kt | 8 + .../ConfigDrivenWelcomePageFragment.kt | 4 + .../ui/page/configdriven/ContentConfig.kt | 28 ++++ .../ui/page/configdriven/ContentValueStore.kt | 13 +- .../ui/page/configdriven/DialogConfig.kt | 16 +- .../page/configdriven/DialogConfigResolver.kt | 36 +++++ .../OnboardingDialogShownPixels.kt | 3 + .../binders/ImportCompleteBinder.kt | 129 ++++++++++++++++ .../binders/ImportPasswordsBinder.kt | 43 ++++++ .../engine/CardArrowController.kt | 8 +- .../configdriven/engine/ContentController.kt | 12 ++ .../engine/EmbellishmentController.kt | 55 ++++++- .../engine/EmbellishmentPlacement.kt | 4 +- .../engine/StepIndicatorController.kt | 2 +- .../app/pixels/OnboardingPixelName.kt | 1 + .../OnboardingPixelParamRemovalPlugin.kt | 1 + ...nboarding_import_passwords_background.webp | Bin 0 -> 26694 bytes ...nboarding_import_passwords_background.webp | Bin 0 -> 14820 bytes ...nboarding_import_passwords_background.webp | Bin 0 -> 23412 bytes ...nboarding_import_passwords_background.webp | Bin 0 -> 13792 bytes ...nboarding_import_passwords_background.webp | Bin 0 -> 39378 bytes ...nboarding_import_passwords_background.webp | Bin 0 -> 57452 bytes ...nboarding_import_passwords_background.webp | Bin 0 -> 70370 bytes ...nboarding_import_passwords_background.webp | Bin 0 -> 48232 bytes ...nboarding_import_passwords_background.webp | Bin 0 -> 71460 bytes ...nboarding_import_passwords_background.webp | Bin 0 -> 90826 bytes .../ic_check_onboarding_success_24.xml | 29 ++++ .../res/drawable/ic_passwords_import_96.xml | 54 +++++++ app/src/main/res/drawable/ic_success_96.xml | 58 +++++++ ...content_onboarding_welcome_page_update.xml | 15 ++ ...content_onboarding_welcome_page_update.xml | 15 ++ ...content_onboarding_welcome_page_update.xml | 16 ++ .../include_brand_design_import_complete.xml | 112 ++++++++++++++ .../include_brand_design_import_passwords.xml | 54 +++++++ ...ing_dax_dialog_cta_brand_design_update.xml | 18 +++ .../main/res/raw/onboarding_wing_right.lottie | Bin 0 -> 2364 bytes app/src/main/res/values/donottranslate.xml | 18 +++ .../NewUserOnboardingPlanProviderTest.kt | 9 +- .../BrandDesignUpdatePageViewModelTest.kt | 9 +- .../configdriven/DialogConfigResolverTest.kt | 16 ++ .../engine/EmbellishmentPlacementTest.kt | 9 ++ 56 files changed, 1149 insertions(+), 117 deletions(-) create mode 100644 app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt create mode 100644 app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportPasswordsBinder.kt create mode 100644 app/src/main/res/drawable-hdpi/onboarding_import_passwords_background.webp create mode 100644 app/src/main/res/drawable-mdpi/onboarding_import_passwords_background.webp create mode 100644 app/src/main/res/drawable-night-hdpi/onboarding_import_passwords_background.webp create mode 100644 app/src/main/res/drawable-night-mdpi/onboarding_import_passwords_background.webp create mode 100644 app/src/main/res/drawable-night-xhdpi/onboarding_import_passwords_background.webp create mode 100644 app/src/main/res/drawable-night-xxhdpi/onboarding_import_passwords_background.webp create mode 100644 app/src/main/res/drawable-night-xxxhdpi/onboarding_import_passwords_background.webp create mode 100644 app/src/main/res/drawable-xhdpi/onboarding_import_passwords_background.webp create mode 100644 app/src/main/res/drawable-xxhdpi/onboarding_import_passwords_background.webp create mode 100644 app/src/main/res/drawable-xxxhdpi/onboarding_import_passwords_background.webp create mode 100644 app/src/main/res/drawable/ic_check_onboarding_success_24.xml create mode 100644 app/src/main/res/drawable/ic_passwords_import_96.xml create mode 100644 app/src/main/res/drawable/ic_success_96.xml create mode 100644 app/src/main/res/layout/include_brand_design_import_complete.xml create mode 100644 app/src/main/res/layout/include_brand_design_import_passwords.xml create mode 100644 app/src/main/res/raw/onboarding_wing_right.lottie diff --git a/PixelDefinitions/pixels/definitions/onboarding.json5 b/PixelDefinitions/pixels/definitions/onboarding.json5 index 8ba6eba06ccd..b273ed410acb 100644 --- a/PixelDefinitions/pixels/definitions/onboarding.json5 +++ b/PixelDefinitions/pixels/definitions/onboarding.json5 @@ -596,6 +596,36 @@ { "key": "value", "type": "string", "description": "Only set when event=clicked.", "enum": ["engage", "dismiss"] } ] }, + "onboarding_password-import": { + "description": "Password-import-from-Google onboarding step. shown when the page is displayed; clicked engage/dismiss on the Import / Skip CTAs; confirmed carries the import outcome. Unique once per user per (event, value).", + "owners": ["catalinradoiu"], + "triggers": ["other"], + "suffixes": ["form_factor"], + "parameters": [ + "appVersion", + { + "key": "event", + "type": "string", + "description": "Event type for the onboarding instrumentation standard", + "enum": ["shown", "clicked", "confirmed"] + }, + { "key": "installType", "type": "string", "description": "Install type", "enum": ["new", "reinstall"] }, + { + "key": "daysSinceInstall", + "type": "string", + "description": "Days since install, bucketed.", + "enum": ["0", "1-3", "4-10", "11-28", "28+"] + }, + { "key": "flow", "type": "string", "description": "Onboarding flow type", "enum": ["default", "duckai"] }, + { "key": "pixelSource", "type": "string", "description": "Device form factor", "enum": ["phone", "tablet"] }, + { + "key": "value", + "type": "string", + "description": "For event=clicked: engage|dismiss. For event=confirmed: the import outcome. No count is sent.", + "enum": ["engage", "dismiss", "success", "cancelled", "error"] + } + ] + }, "onboarding_subscription-promo": { "description": "Contextual onboarding subscription-promo step. shown when the Privacy Pro DAX bubble is displayed; clicked engage when the user taps the primary CTA, dismiss when the user closes. Unique once per user per (event, value).", "owners": ["catalinradoiu"], diff --git a/android-design-system/design-system/src/main/java/com/duckduckgo/common/ui/view/shape/DaxBubbleBottomEdgeTreatment.kt b/android-design-system/design-system/src/main/java/com/duckduckgo/common/ui/view/shape/DaxBubbleBottomEdgeTreatment.kt index 941c68c31a49..e8a6b350b382 100644 --- a/android-design-system/design-system/src/main/java/com/duckduckgo/common/ui/view/shape/DaxBubbleBottomEdgeTreatment.kt +++ b/android-design-system/design-system/src/main/java/com/duckduckgo/common/ui/view/shape/DaxBubbleBottomEdgeTreatment.kt @@ -34,6 +34,12 @@ open class DaxBubbleBottomEdgeTreatment( var depthFraction: Float = 1f + /** + * The tail is asymmetric — it hooks towards one side — so a card whose artwork sits on the opposite side + * needs the shape reflected rather than just repositioned. + */ + var mirrored: Boolean = false + override fun getEdgePath( length: Float, center: Float, @@ -46,92 +52,62 @@ open class DaxBubbleBottomEdgeTreatment( shapePath.lineTo(arrowStart, 0f) - shapePath.cubicToPoint( - arrowStart + 2.8355f * scaleFactor, - 0f, - arrowStart + 4.9409f * scaleFactor, - -1.32054f * scaleFactor, - arrowStart + 6.8544f * scaleFactor, - -3.33789f * scaleFactor, - ) - - shapePath.cubicToPoint( - arrowStart + 8.7314f * scaleFactor, - -5.31666f * scaleFactor, - arrowStart + 10.5271f * scaleFactor, - -8.08434f * scaleFactor, - arrowStart + 12.6835f * scaleFactor, - -11.06444f * scaleFactor, - ) - - shapePath.cubicToPoint( - arrowStart + 17.0304f * scaleFactor, - -17.07144f * scaleFactor, - arrowStart + 23.1365f * scaleFactor, - -24.39164f * scaleFactor, - arrowStart + 35.3339f * scaleFactor, - -29.80464f * scaleFactor, - ) - - shapePath.cubicToPoint( - arrowStart + 36.846f * scaleFactor, - -30.47574f * scaleFactor, - arrowStart + 38.3232f * scaleFactor, - -30.09324f * scaleFactor, - arrowStart + 39.3369f * scaleFactor, - -29.13864f * scaleFactor, - ) - - shapePath.cubicToPoint( - arrowStart + 40.3586f * scaleFactor, - -28.17644f * scaleFactor, - arrowStart + 40.9016f * scaleFactor, - -26.63464f * scaleFactor, - arrowStart + 40.4628f * scaleFactor, - -24.99804f * scaleFactor, - ) - - shapePath.cubicToPoint( - arrowStart + 39.6477f * scaleFactor, - -21.95764f * scaleFactor, - arrowStart + 38.7778f * scaleFactor, - -18.57714f * scaleFactor, - arrowStart + 38.1083f * scaleFactor, - -15.63474f * scaleFactor, - ) - - shapePath.cubicToPoint( - arrowStart + 37.4462f * scaleFactor, - -12.72454f * scaleFactor, - arrowStart + 36.9582f * scaleFactor, - -10.15444f * scaleFactor, - arrowStart + 36.9453f * scaleFactor, - -8.78514f * scaleFactor, - ) - - shapePath.cubicToPoint( - arrowStart + 36.9208f * scaleFactor, - -6.20757f * scaleFactor, - arrowStart + 38.2915f * scaleFactor, - -3.99944f * scaleFactor, - arrowStart + 40.2158f * scaleFactor, - -2.46093f * scaleFactor, - ) - - shapePath.cubicToPoint( - arrowStart + 42.1375f * scaleFactor, - -0.92451f * scaleFactor, - arrowStart + 44.6734f * scaleFactor, - 0f, - arrowStart + arrowWidth, - 0f, - ) + (if (mirrored) MIRRORED_TAIL else TAIL).forEach { curve -> + shapePath.cubicToPoint( + arrowStart + curve.control1X * scaleFactor, + curve.control1Y * scaleFactor, + arrowStart + curve.control2X * scaleFactor, + curve.control2Y * scaleFactor, + arrowStart + curve.endX * scaleFactor, + curve.endY * scaleFactor, + ) + } shapePath.lineTo(arrowStart + arrowWidth, 0f) } + /** One cubic of the tail outline, in unscaled dp relative to the tail's leading edge. */ + private class Curve( + val control1X: Float, + val control1Y: Float, + val control2X: Float, + val control2Y: Float, + val endX: Float, + val endY: Float, + ) + companion object { const val ORIGINAL_BOTTOM_ARROW_HEIGHT_DP = 30 const val ORIGINAL_BOTTOM_ARROW_WIDTH_DP = 47.14058f + + private val TAIL = listOf( + Curve(2.8355f, 0f, 4.9409f, -1.32054f, 6.8544f, -3.33789f), + Curve(8.7314f, -5.31666f, 10.5271f, -8.08434f, 12.6835f, -11.06444f), + Curve(17.0304f, -17.07144f, 23.1365f, -24.39164f, 35.3339f, -29.80464f), + Curve(36.846f, -30.47574f, 38.3232f, -30.09324f, 39.3369f, -29.13864f), + Curve(40.3586f, -28.17644f, 40.9016f, -26.63464f, 40.4628f, -24.99804f), + Curve(39.6477f, -21.95764f, 38.7778f, -18.57714f, 38.1083f, -15.63474f), + Curve(37.4462f, -12.72454f, 36.9582f, -10.15444f, 36.9453f, -8.78514f), + Curve(36.9208f, -6.20757f, 38.2915f, -3.99944f, 40.2158f, -2.46093f), + Curve(42.1375f, -0.92451f, 44.6734f, 0f, ORIGINAL_BOTTOM_ARROW_WIDTH_DP, 0f), + ) + + /** + * Reflected about the tail's vertical centre. The edge path has to stay left-to-right, so the curves + * are walked backwards: each one runs from its own end point to its predecessor's, which swaps its + * control points too. + */ + private val MIRRORED_TAIL = TAIL.indices.reversed().map { index -> + val curve = TAIL[index] + val start = if (index == 0) null else TAIL[index - 1] + Curve( + control1X = ORIGINAL_BOTTOM_ARROW_WIDTH_DP - curve.control2X, + control1Y = curve.control2Y, + control2X = ORIGINAL_BOTTOM_ARROW_WIDTH_DP - curve.control1X, + control2Y = curve.control1Y, + endX = ORIGINAL_BOTTOM_ARROW_WIDTH_DP - (start?.endX ?: 0f), + endY = start?.endY ?: 0f, + ) + } } } diff --git a/android-design-system/design-system/src/main/java/com/duckduckgo/common/ui/view/shape/DaxOnboardingBubbleBrandDesignUpdateCardView.kt b/android-design-system/design-system/src/main/java/com/duckduckgo/common/ui/view/shape/DaxOnboardingBubbleBrandDesignUpdateCardView.kt index 43b82bc947ca..922ed6962306 100644 --- a/android-design-system/design-system/src/main/java/com/duckduckgo/common/ui/view/shape/DaxOnboardingBubbleBrandDesignUpdateCardView.kt +++ b/android-design-system/design-system/src/main/java/com/duckduckgo/common/ui/view/shape/DaxOnboardingBubbleBrandDesignUpdateCardView.kt @@ -176,6 +176,17 @@ constructor( shapeAppearanceModel = shapeAppearanceModel } + /** + * Reflects the arrow's shape horizontally, for a card whose artwork sits on the side the tail + * would otherwise hook away from. Independent of where along the edge the arrow sits. + */ + fun setArrowMirrored(mirrored: Boolean) { + if (!showArrow) return + if (baseBottomEdgeTreatment.mirrored == mirrored) return + baseBottomEdgeTreatment.mirrored = mirrored + shapeAppearanceModel = shapeAppearanceModel + } + /** * Set the target position for the arrow animation. * diff --git a/android-design-system/design-system/src/main/res/values/design-system-rebrand-onboarding-theming.xml b/android-design-system/design-system/src/main/res/values/design-system-rebrand-onboarding-theming.xml index 827f258b9aa4..40635dc8b92b 100644 --- a/android-design-system/design-system/src/main/res/values/design-system-rebrand-onboarding-theming.xml +++ b/android-design-system/design-system/src/main/res/values/design-system-rebrand-onboarding-theming.xml @@ -35,6 +35,7 @@ + @@ -75,6 +76,7 @@ #D6242323 #99383838 #66242323 + @color/lilypad60 ?attr/onboardingSurfaceBackdrop @@ -137,6 +139,7 @@ #D6FBFAF9 #7AFBFAF9 #7AFBFAF9 + @color/lilypad30 ?attr/onboardingSurfaceBackdrop diff --git a/android-design-system/design-system/src/test/java/com/duckduckgo/common/ui/view/shape/DaxBubbleBottomEdgeTreatmentTest.kt b/android-design-system/design-system/src/test/java/com/duckduckgo/common/ui/view/shape/DaxBubbleBottomEdgeTreatmentTest.kt index 902405cf2c4e..e79193ce8053 100644 --- a/android-design-system/design-system/src/test/java/com/duckduckgo/common/ui/view/shape/DaxBubbleBottomEdgeTreatmentTest.kt +++ b/android-design-system/design-system/src/test/java/com/duckduckgo/common/ui/view/shape/DaxBubbleBottomEdgeTreatmentTest.kt @@ -18,6 +18,7 @@ package com.duckduckgo.common.ui.view.shape import com.google.android.material.shape.ShapePath import org.junit.Assert.assertEquals +import org.junit.Assert.assertFalse import org.junit.Assert.assertTrue import org.junit.Test import kotlin.math.abs @@ -39,6 +40,16 @@ class DaxBubbleBottomEdgeTreatmentTest { val y3: Float, ) val cubics = mutableListOf() + val lines = mutableListOf>() + + override fun lineTo( + x: Float, + y: Float, + ) { + lines.add(x to y) + super.lineTo(x, y) + } + override fun cubicToPoint( x1: Float, y1: Float, @@ -85,6 +96,34 @@ class DaxBubbleBottomEdgeTreatmentTest { assertTrue("Expected non-zero tail Y values at full depth, got max|Y|=$maxAbsY", maxAbsY > 1f) } + @Test + fun `mirroring is off by default`() { + val treatment = DaxBubbleBottomEdgeTreatment(heightPx = 100) + assertFalse(treatment.mirrored) + } + + @Test + fun `mirroring reflects every tail coordinate about the centre`() { + val plain = tailOf(mirrored = false) + val mirrored = tailOf(mirrored = true) + + assertEquals(plain.size, mirrored.size) + val reflected = plain.map { (x, y) -> (2 * CENTER - x) to y }.sortedBy { it.first } + mirrored.sortedBy { it.first }.zip(reflected).forEach { (actual, expected) -> + assertEquals(expected.first, actual.first, 0.01f) + assertEquals(expected.second, actual.second, 0.01f) + } + } + + @Test + fun `mirroring moves the tail hook to the other side of the centre`() { + val plainHook = tailOf(mirrored = false).minByOrNull { it.second }!!.first + val mirroredHook = tailOf(mirrored = true).minByOrNull { it.second }!!.first + + assertTrue("Expected the plain hook past the centre, got $plainHook", plainHook > CENTER) + assertTrue("Expected the mirrored hook before the centre, got $mirroredHook", mirroredHook < CENTER) + } + @Test fun `depth fraction 0_5 scales y coordinates linearly`() { val fullPath = RecordingShapePath() @@ -102,4 +141,17 @@ class DaxBubbleBottomEdgeTreatmentTest { assertEquals(full * 0.5f, half, 0.01f) } } + + private fun tailOf(mirrored: Boolean): List> { + val path = RecordingShapePath() + DaxBubbleBottomEdgeTreatment(heightPx = 100).apply { this.mirrored = mirrored } + .getEdgePath(length = 400f, center = CENTER, interpolation = 1f, shapePath = path) + // Distinct because the closing lineTo repeats the last curve's end point, and mirroring moves that + // duplicate to the opposite end of the tail. + return (path.lines + path.cubics.flatMap { listOf(it.x1 to it.y1, it.x2 to it.y2, it.x3 to it.y3) }).distinct() + } + + private companion object { + const val CENTER = 200f + } } diff --git a/app/build.gradle b/app/build.gradle index 9ab0cb1860aa..91dbe16b7e55 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -569,6 +569,7 @@ dependencies { implementation "io.reactivex.rxjava2:rxjava:_" implementation "io.reactivex.rxjava2:rxandroid:_" implementation "com.squareup.logcat:logcat:_" + implementation "com.facebook.shimmer:shimmer:_" implementation 'nl.dionsegijn:konfetti:1.2.5' implementation("io.github.pcmind:leveldb:_") { exclude group: 'com.google.guava', module: 'guava' diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingActivityDialog.kt b/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingActivityDialog.kt index 0158d04a3a6b..75af6badabeb 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingActivityDialog.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingActivityDialog.kt @@ -38,6 +38,14 @@ sealed interface NewUserOnboardingActivityDialog { data object WidgetPrompt : NewUserOnboardingActivityDialog data object AddWidget : NewUserOnboardingActivityDialog + + data object ImportPasswords : NewUserOnboardingActivityDialog + + /** Command-only: draws no card, the view model launches the Google web flow when this step is applied. */ + data object ImportPasswordsLaunch : NewUserOnboardingActivityDialog + + /** Outcome of a successful import. Entered while the counts are still being parsed, so it carries none. */ + data object ImportComplete : NewUserOnboardingActivityDialog data class AddressBarPosition(val showSplitOption: Boolean) : NewUserOnboardingActivityDialog data object InputScreen : NewUserOnboardingActivityDialog diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingActivityStep.kt b/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingActivityStep.kt index 634b7d1f7dd6..62a9db69e38b 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingActivityStep.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingActivityStep.kt @@ -28,8 +28,8 @@ import com.duckduckgo.onboarding.api.LinearOnboardingTransition * An [com.duckduckgo.app.onboarding.ui.OnboardingActivity]-hosted step. Adds a [resolveDialog] rendering hook to the generic * [LinearOnboardingStep]; the VM reads it to know what to present for the current step. * - * [showsStepIndicator] marks the step as part of the onboarding progress indicator. The "step N of M" the - * renderer shows is derived from the position of these steps in the plan (see [stepIndicatorProgress]), so + * [indicator] places the step in the onboarding progress indicator. The "step N of M" the renderer shows is + * derived from the position of [StepIndicatorMode.COUNTED] steps in the plan (see [stepIndicatorProgress]), so * numbering follows plan order with no hardcoded page numbers. */ data class NewUserOnboardingActivityStep( @@ -38,22 +38,42 @@ data class NewUserOnboardingActivityStep( override val host: LinearOnboardingHost = LinearOnboardingHost.OnboardingActivity, override val precondition: suspend () -> Boolean = { true }, override val transition: suspend (LinearOnboardingEvent) -> LinearOnboardingTransition, - val showsStepIndicator: Boolean = false, + val indicator: StepIndicatorMode = StepIndicatorMode.NONE, val resolveDialog: suspend () -> NewUserOnboardingActivityDialog, ) : LinearOnboardingStep +/** How a step appears in the progress indicator. */ +enum class StepIndicatorMode { + /** No indicator at all. */ + NONE, + + /** Takes the next position in the sequence, and counts towards the total. */ + COUNTED, + + /** + * Shows the number of the [COUNTED] step before it, and adds nothing to the total. For a step that continues + * an interaction the user already started — the outcome of the step they are on, not a step of its own. + */ + CONTINUES_PREVIOUS, +} + /** 1-based [current] position of a step within its plan's step-indicator sequence, and the sequence length [total]. */ data class StepProgress(val current: Int, val total: Int) /** * Progress to show in the onboarding step indicator for the current step, or null when the current step shows - * none. Derived from the position of [NewUserOnboardingActivityStep.showsStepIndicator] steps in the current - * plan, so adding/reordering steps keeps the numbering correct without touching hardcoded page numbers. + * none. Derived from the position of [StepIndicatorMode.COUNTED] steps in the current plan, so adding or + * reordering steps keeps the numbering correct without touching hardcoded page numbers. + * + * Counting up to and including the current index gives a [StepIndicatorMode.COUNTED] step its own position and + * a [StepIndicatorMode.CONTINUES_PREVIOUS] step the position of the counted step before it. A plan that opens + * with a continuing step has nothing to continue, and reports position 0. */ fun LinearOnboardingState.InProgress.stepIndicatorProgress(): StepProgress? { - if ((currentStep as? NewUserOnboardingActivityStep)?.showsStepIndicator != true) return null - val indicatorIndices = currentPlan.steps.indices.filter { - (currentPlan.steps[it] as? NewUserOnboardingActivityStep)?.showsStepIndicator == true + val step = currentStep as? NewUserOnboardingActivityStep ?: return null + if (step.indicator == StepIndicatorMode.NONE) return null + val countedIndices = currentPlan.steps.indices.filter { + (currentPlan.steps[it] as? NewUserOnboardingActivityStep)?.indicator == StepIndicatorMode.COUNTED } - return StepProgress(current = indicatorIndices.indexOf(currentStepIndex) + 1, total = indicatorIndices.size) + return StepProgress(current = countedIndices.count { it <= currentStepIndex }, total = countedIndices.size) } diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingEvent.kt b/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingEvent.kt index 6e2c0649ca5e..d9a294ef3227 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingEvent.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingEvent.kt @@ -56,4 +56,22 @@ sealed interface NewUserOnboardingEvent : LinearOnboardingEvent { data class AddWidgetFinished(val widgetAdded: Boolean) : NewUserOnboardingEvent data class PreferenceSelectorConfirmed(val selections: Map) : NewUserOnboardingEvent + + data object PasswordImportRequested : NewUserOnboardingEvent + + data object PasswordImportSkipped : NewUserOnboardingEvent + + /** + * The import web flow returned. [PasswordImportOutcome.SUCCESS] only means the credentials are being + * written; the counts arrive later as [PasswordImportParsed]. + */ + data class PasswordImportWebFlowFinished(val outcome: PasswordImportOutcome) : NewUserOnboardingEvent + + /** + * Parsing of a successfully returned import finished. Raised on the outcome card, which is already on + * screen showing its parsing state, so it reports the result rather than moving the user anywhere. + */ + data class PasswordImportParsed(val outcome: PasswordImportOutcome) : NewUserOnboardingEvent } + +enum class PasswordImportOutcome { SUCCESS, CANCELLED, ERROR } diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingPlanContext.kt b/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingPlanContext.kt index e87fd4c9a134..5479f96ca49f 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingPlanContext.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingPlanContext.kt @@ -41,6 +41,18 @@ class NewUserOnboardingPlanContext { @Volatile var completionResult: LinearOnboardingResult? = null + /** + * Set by the [NewUserOnboardingStepIds.PASSWORD_IMPORT_LAUNCH] step once the import web flow returns + * successfully. Gates [NewUserOnboardingStepIds.PASSWORD_IMPORT_COMPLETE], and keeps the launch step + * eligible until then. The counts are not held here: they arrive after the outcome card is already on + * screen, so they live in that card's content state instead. + */ + @Volatile + var passwordImportSucceeded: Boolean = false + + @Volatile + var skipPasswordsImport: Boolean = false + /** * Chat prompt captured by the custom-AI [NewUserOnboardingStepIds.INPUT_SCREEN_PREVIEW] step, * read by the [NewUserOnboardingStepIds.DUCK_AI_DEMO] step. diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingPlanProvider.kt b/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingPlanProvider.kt index 52140bd6ffaa..b44e3c16bad0 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingPlanProvider.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingPlanProvider.kt @@ -28,6 +28,8 @@ import com.duckduckgo.app.onboarding.CustomAiOnboardingResolver import com.duckduckgo.app.onboarding.CustomAiOnboardingStore import com.duckduckgo.app.onboarding.DuckAiOnboardingAvailability import com.duckduckgo.app.onboarding.DuckAiOnboardingDemo +import com.duckduckgo.app.onboarding.OnboardingPasswordImportExperimentManager +import com.duckduckgo.app.onboarding.OnboardingPasswordImportExperimentManager.OnboardingPasswordImportVariant import com.duckduckgo.app.onboarding.OnboardingPreference import com.duckduckgo.app.onboarding.OnboardingPreferenceApplier import com.duckduckgo.app.onboarding.OnboardingPromptsExperimentManager @@ -65,6 +67,7 @@ import com.duckduckgo.onboarding.api.LinearOnboardingStep import com.duckduckgo.onboarding.api.LinearOnboardingTransition import com.duckduckgo.onboarding.api.LinearOnboardingTransition.AbortPlan import com.duckduckgo.onboarding.api.LinearOnboardingTransition.Advance +import com.duckduckgo.onboarding.api.LinearOnboardingTransition.GoBack import com.duckduckgo.onboarding.api.LinearOnboardingTransition.Stay import com.duckduckgo.onboarding.api.LinearOnboardingTransition.SwitchTo import com.duckduckgo.sync.api.SyncAutoRestore @@ -104,6 +107,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( private val duckAiOnboardingDemo: DuckAiOnboardingDemo, private val onboardingPromptsExperimentManager: OnboardingPromptsExperimentManager, private val segmentedOnboardingExperimentManager: SegmentedOnboardingExperimentManager, + private val onboardingPasswordImportExperimentManager: OnboardingPasswordImportExperimentManager, private val onboardingPreferenceApplier: OnboardingPreferenceApplier, ) { @@ -136,6 +140,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( onboardingPromptExperimentVariant != null -> buildDefaultPlan(ctx, onCompleted, onSkipped, onboardingPromptExperimentVariant) segmentedOnboardingExperimentManager.enroll() == SegmentedOnboardingExperimentVariant.TREATMENT -> buildSegmentedPlan(ctx, onCompleted, onSkipped) + else -> buildDefaultPlan(ctx, onCompleted, onSkipped) } } @@ -161,6 +166,8 @@ class NewUserOnboardingPlanProvider @Inject constructor( onboardingPromptExperimentVariant == OnboardingPromptsExperimentManager.OnboardingPromptExperimentVariant.TREATMENT_DOCK_AND_WIDGET val showWidget = variantAllowsWidget && withContext(dispatchers.io()) { !widgetCapabilities.hasInstalledWidgets } + val showPasswordImport = onboardingPasswordImportExperimentManager.enroll() == OnboardingPasswordImportVariant.TREATMENT + return rootPlan( ctx = ctx, onCompleted = onCompleted, @@ -180,6 +187,11 @@ class NewUserOnboardingPlanProvider @Inject constructor( add(widgetPromptStep(ctx)) add(addWidgetStep(ctx)) } + if (showPasswordImport) { + add(passwordImportStep(ctx)) + add(passwordImportLaunchStep(ctx)) + add(passwordImportCompleteStep(ctx)) + } add(addressBarPositionStep()) add(inputScreenStep(ctx)) add(inputScreenPreviewStep(ctx, duckAiEnabled, allowSearchPreviewOnly = false)) @@ -274,7 +286,10 @@ class NewUserOnboardingPlanProvider @Inject constructor( private fun sidePlan(id: LinearOnboardingPlanId, steps: List): LinearOnboardingPlan = LinearOnboardingPlan(id = id, steps = steps.firingShownPixels().abortingOnDevSkip()) - private fun quickSetupPlan(ctx: NewUserOnboardingPlanContext, forceWithAiInput: Boolean = false): LinearOnboardingPlan = + private fun quickSetupPlan( + ctx: NewUserOnboardingPlanContext, + forceWithAiInput: Boolean = false, + ): LinearOnboardingPlan = sidePlan(QUICK_SETUP_PLAN_ID, listOf(quickSetupStep(ctx, forceWithAiInput))) /** @@ -368,6 +383,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( } Advance } + else -> Stay } }, @@ -424,6 +440,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( false } } + FirstDialog.REINSTALL -> true FirstDialog.INITIAL -> false } @@ -435,6 +452,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( onboardingPixelSender.fire(pixelName, OnboardingPixelAction.Clicked(engaged = true)) Advance } + is NewUserOnboardingEvent.SkipRequested -> { pixel.fire(PREONBOARDING_SKIP_ONBOARDING_PRESSED) onboardingPixelSender.fire(pixelName, OnboardingPixelAction.Clicked(engaged = false)) @@ -462,6 +480,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( onboardingPixelSender.fire(pixelName, OnboardingPixelAction.Clicked(engaged = true)) Advance } + else -> Stay } }, @@ -536,7 +555,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( return NewUserOnboardingActivityStep( id = NewUserOnboardingStepIds.PREFERENCE_SELECTOR, pixelName = null, - showsStepIndicator = true, + indicator = StepIndicatorMode.COUNTED, precondition = { preferenceSelections().isNotEmpty() }, resolveDialog = { NewUserOnboardingActivityDialog.PreferenceSelector(preferenceSelections()) }, transition = { event -> @@ -561,7 +580,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( return NewUserOnboardingActivityStep( id = NewUserOnboardingStepIds.COMPARISON_CHART, pixelName = pixelName, - showsStepIndicator = true, + indicator = StepIndicatorMode.COUNTED, resolveDialog = { dialog }, transition = { event -> when { @@ -574,6 +593,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( onboardingPixelSender.fire(pixelName, OnboardingPixelAction.Clicked(engaged = true)) Advance } + else -> Stay } }, @@ -595,6 +615,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( ) Advance } + else -> Stay } }, @@ -605,7 +626,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( return NewUserOnboardingActivityStep( id = NewUserOnboardingStepIds.ADD_TO_DOCK, pixelName = pixelName, - showsStepIndicator = true, + indicator = StepIndicatorMode.COUNTED, resolveDialog = { NewUserOnboardingActivityDialog.AddToDock }, transition = { event -> when { @@ -613,6 +634,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( onboardingPixelSender.fire(pixelName, OnboardingPixelAction.Clicked(engaged = true)) Advance } + else -> Stay } }, @@ -624,7 +646,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( return NewUserOnboardingActivityStep( id = NewUserOnboardingStepIds.WIDGET_PROMPT, pixelName = pixelName, - showsStepIndicator = true, + indicator = StepIndicatorMode.COUNTED, resolveDialog = { NewUserOnboardingActivityDialog.WidgetPrompt }, transition = { event -> when (event) { @@ -632,15 +654,18 @@ class NewUserOnboardingPlanProvider @Inject constructor( onboardingStore.linearPlanWidgetPromptShown = true Stay } + is NewUserOnboardingEvent.AddWidgetRequested -> { onboardingPixelSender.fire(pixelName, OnboardingPixelAction.Clicked(engaged = true)) Advance } + is NewUserOnboardingEvent.WidgetPromptSkipped -> { onboardingPixelSender.fire(pixelName, OnboardingPixelAction.Clicked(engaged = false)) ctx.skipAddWidget = true Advance } + else -> Stay } }, @@ -666,6 +691,88 @@ class NewUserOnboardingPlanProvider @Inject constructor( ) Advance } + + else -> Stay + } + }, + ) + } + + private fun passwordImportStep(ctx: NewUserOnboardingPlanContext): NewUserOnboardingActivityStep { + val pixelName = OnboardingPixelName.ONBOARDING_PASSWORD_IMPORT + return NewUserOnboardingActivityStep( + id = NewUserOnboardingStepIds.PASSWORD_IMPORT, + pixelName = pixelName, + indicator = StepIndicatorMode.COUNTED, + resolveDialog = { NewUserOnboardingActivityDialog.ImportPasswords }, + transition = { event -> + when (event) { + is NewUserOnboardingEvent.PasswordImportRequested -> { + onboardingPixelSender.fire(pixelName, OnboardingPixelAction.Clicked(engaged = true)) + Advance + } + + is NewUserOnboardingEvent.PasswordImportSkipped -> { + ctx.skipPasswordsImport = true + onboardingPixelSender.fire(pixelName, OnboardingPixelAction.Clicked(engaged = false)) + Advance + } + + else -> Stay + } + }, + ) + } + + private fun passwordImportLaunchStep(ctx: NewUserOnboardingPlanContext): NewUserOnboardingActivityStep { + val pixelName = OnboardingPixelName.ONBOARDING_PASSWORD_IMPORT + return NewUserOnboardingActivityStep( + id = NewUserOnboardingStepIds.PASSWORD_IMPORT_LAUNCH, + pixelName = null, + precondition = { !ctx.passwordImportSucceeded && !ctx.skipPasswordsImport }, + resolveDialog = { NewUserOnboardingActivityDialog.ImportPasswordsLaunch }, + transition = { event -> + when (event) { + is NewUserOnboardingEvent.PasswordImportWebFlowFinished -> when (event.outcome) { + PasswordImportOutcome.SUCCESS -> { + ctx.passwordImportSucceeded = true + Advance + } + + PasswordImportOutcome.CANCELLED -> { + onboardingPixelSender.fire(pixelName, OnboardingPixelAction.PasswordImportConfirmed(event.outcome)) + GoBack + } + + PasswordImportOutcome.ERROR -> { + onboardingPixelSender.fire(pixelName, OnboardingPixelAction.PasswordImportConfirmed(event.outcome)) + Stay + } + } + + is NewUserOnboardingEvent.ContinueClicked -> Advance + else -> Stay + } + }, + ) + } + + private fun passwordImportCompleteStep(ctx: NewUserOnboardingPlanContext): NewUserOnboardingActivityStep { + val pixelName = OnboardingPixelName.ONBOARDING_PASSWORD_IMPORT + return NewUserOnboardingActivityStep( + id = NewUserOnboardingStepIds.PASSWORD_IMPORT_COMPLETE, + pixelName = null, + indicator = StepIndicatorMode.CONTINUES_PREVIOUS, + precondition = { ctx.passwordImportSucceeded }, + resolveDialog = { NewUserOnboardingActivityDialog.ImportComplete }, + transition = { event -> + when (event) { + is NewUserOnboardingEvent.PasswordImportParsed -> { + onboardingPixelSender.fire(pixelName, OnboardingPixelAction.PasswordImportConfirmed(event.outcome)) + Stay + } + + is NewUserOnboardingEvent.ContinueClicked -> Advance else -> Stay } }, @@ -677,7 +784,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( return NewUserOnboardingActivityStep( id = NewUserOnboardingStepIds.ADDRESS_BAR_POSITION, pixelName = pixelName, - showsStepIndicator = true, + indicator = StepIndicatorMode.COUNTED, resolveDialog = { NewUserOnboardingActivityDialog.AddressBarPosition(showSplitOption = isSplitOmnibarEnabled()) }, transition = { event -> when { @@ -688,6 +795,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( onboardingPixelSender.fire(pixelName, OnboardingPixelAction.AddressBarClicked(position = resolved)) Advance } + else -> Stay } }, @@ -699,7 +807,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( return NewUserOnboardingActivityStep( id = NewUserOnboardingStepIds.INPUT_SCREEN, pixelName = pixelName, - showsStepIndicator = true, + indicator = StepIndicatorMode.COUNTED, resolveDialog = { NewUserOnboardingActivityDialog.InputScreen }, transition = { event -> when { @@ -712,6 +820,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( Advance } + else -> Stay } }, @@ -774,7 +883,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( return NewUserOnboardingActivityStep( id = NewUserOnboardingStepIds.AI_COMPARISON_CHART, pixelName = pixelName, - showsStepIndicator = true, + indicator = StepIndicatorMode.COUNTED, resolveDialog = { NewUserOnboardingActivityDialog.AiComparisonChart }, transition = { event -> when { @@ -782,6 +891,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( onboardingPixelSender.fire(pixelName, OnboardingPixelAction.Clicked(engaged = true)) Advance } + else -> Stay } }, @@ -795,7 +905,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( return NewUserOnboardingActivityStep( id = NewUserOnboardingStepIds.INPUT_SCREEN_PREVIEW, pixelName = pixelName, - showsStepIndicator = true, + indicator = StepIndicatorMode.COUNTED, resolveDialog = { NewUserOnboardingActivityDialog.InputScreenPreview( isSearchDefault = false, @@ -814,6 +924,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( ctx.pendingDuckAiPrompt = event.query Advance } + else -> Stay } }, @@ -832,13 +943,17 @@ class NewUserOnboardingPlanProvider @Inject constructor( onboardingPixelSender.fire(pixelName, OnboardingPixelAction.Clicked(engaged = true)) Advance } + else -> Stay } }, ) } - private fun quickSetupStep(ctx: NewUserOnboardingPlanContext, forceWithAiInput: Boolean): NewUserOnboardingActivityStep { + private fun quickSetupStep( + ctx: NewUserOnboardingPlanContext, + forceWithAiInput: Boolean, + ): NewUserOnboardingActivityStep { val pixelName = OnboardingPixelName.ONBOARDING_QUICK_SETUP return NewUserOnboardingActivityStep( id = NewUserOnboardingStepIds.QUICK_SETUP, @@ -873,6 +988,7 @@ class NewUserOnboardingPlanProvider @Inject constructor( ) AbortPlan } + else -> Stay } }, @@ -913,7 +1029,11 @@ class NewUserOnboardingPlanProvider @Inject constructor( androidBrowserConfigFeature.splitOmnibarWelcomePage().isEnabled() } - private enum class FirstDialog { SYNC_RESTORE, REINSTALL, INITIAL } + private enum class FirstDialog { + SYNC_RESTORE, + REINSTALL, + INITIAL, + } companion object { diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingStepIds.kt b/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingStepIds.kt index 350dad5d2051..14774500fa1a 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingStepIds.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingStepIds.kt @@ -35,6 +35,9 @@ internal object NewUserOnboardingStepIds { const val ADD_TO_DOCK: LinearOnboardingStepId = "add_to_dock" const val WIDGET_PROMPT: LinearOnboardingStepId = "widget_prompt" const val ADD_WIDGET: LinearOnboardingStepId = "add_widget" + const val PASSWORD_IMPORT: LinearOnboardingStepId = "password_import" + const val PASSWORD_IMPORT_LAUNCH: LinearOnboardingStepId = "password_import_launch" + const val PASSWORD_IMPORT_COMPLETE: LinearOnboardingStepId = "password_import_complete" const val ADDRESS_BAR_POSITION: LinearOnboardingStepId = "address_bar_position" const val INPUT_SCREEN: LinearOnboardingStepId = "input_screen" const val INPUT_SCREEN_PREVIEW: LinearOnboardingStepId = "input_screen_preview" diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/BrandDesignUpdatePageViewModel.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/BrandDesignUpdatePageViewModel.kt index 931b44a34c14..082f8466b7fe 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/BrandDesignUpdatePageViewModel.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/BrandDesignUpdatePageViewModel.kt @@ -514,6 +514,13 @@ class BrandDesignUpdatePageViewModel @Inject constructor( setCurrentDialog(INITIAL_REINSTALL_USER) } NewUserOnboardingActivityDialog.Initial -> setCurrentDialog(INITIAL) + NewUserOnboardingActivityDialog.DownloadReason, + NewUserOnboardingActivityDialog.ImportPasswords, + is NewUserOnboardingActivityDialog.ImportComplete, + NewUserOnboardingActivityDialog.ImportPasswordsLaunch, + -> { + // no-op in this VM + } NewUserOnboardingActivityDialog.ComparisonChart -> setCurrentDialog(COMPARISON_CHART, stepIndicator = progress) NewUserOnboardingActivityDialog.AiComparisonChart -> diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/OnboardingBackgroundAnimator.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/OnboardingBackgroundAnimator.kt index 3d255fdeecf5..6cb9a1854acd 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/OnboardingBackgroundAnimator.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/OnboardingBackgroundAnimator.kt @@ -60,6 +60,10 @@ sealed class OnboardingBackgroundStep( backgroundRes = R.drawable.onboarding_browser_comparison_background, maxHeightDp = 216, ) + data object ImportPasswords : OnboardingBackgroundStep( + backgroundRes = R.drawable.onboarding_import_passwords_background, + maxHeightDp = 272, + ) data object AddressBar : OnboardingBackgroundStep( backgroundRes = R.drawable.onboarding_address_bar_background, maxHeightDp = 360, diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/OnboardingPixelSender.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/OnboardingPixelSender.kt index 9cbcfdb3f05a..34c1e4846043 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/OnboardingPixelSender.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/OnboardingPixelSender.kt @@ -22,6 +22,7 @@ import com.duckduckgo.app.di.AppCoroutineScope import com.duckduckgo.app.global.install.AppInstallStore import com.duckduckgo.app.global.install.daysInstalled import com.duckduckgo.app.onboarding.CustomAiOnboardingStore +import com.duckduckgo.app.onboarding.orchestrator.PasswordImportOutcome import com.duckduckgo.app.pixels.OnboardingPixelName import com.duckduckgo.app.statistics.pixels.Pixel import com.duckduckgo.app.statistics.pixels.Pixel.PixelType.Unique @@ -65,6 +66,8 @@ sealed interface OnboardingPixelAction { val addressBarPosition: OmnibarType, val inputScreenSelected: Boolean, ) : OnboardingPixelAction + + data class PasswordImportConfirmed(val outcome: PasswordImportOutcome) : OnboardingPixelAction } interface OnboardingPixelSender { @@ -152,6 +155,9 @@ class RealOnboardingPixelSender @Inject constructor( is OnboardingPixelAction.QuickSetupClicked -> fireQuickSetupClicked(pixelName, action.addressBarPosition, action.inputScreenSelected) + + is OnboardingPixelAction.PasswordImportConfirmed -> + fireStep(pixelName, PIXEL_EVENT_CONFIRMED, action.outcome.name.lowercase()) } } diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ConfigDrivenOnboardingPageViewModel.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ConfigDrivenOnboardingPageViewModel.kt index cc9bcc4ce2d2..04ad4c657473 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ConfigDrivenOnboardingPageViewModel.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ConfigDrivenOnboardingPageViewModel.kt @@ -457,6 +457,12 @@ class ConfigDrivenOnboardingPageViewModel @Inject constructor( _commands.send(Command.LaunchAddWidgetPrompt) } + NewUserOnboardingActivityDialog.ImportPasswordsLaunch -> { + // TODO: launch the Google password import flow and report its outcome back as + // PasswordImportWebFlowFinished / PasswordImportParsed. Until that lands, this step has no + // side effect and the outcome card stays on its parsing state. + } + NewUserOnboardingActivityDialog.SyncRestore, NewUserOnboardingActivityDialog.InitialReinstallUser, NewUserOnboardingActivityDialog.Initial, @@ -467,6 +473,8 @@ class ConfigDrivenOnboardingPageViewModel @Inject constructor( NewUserOnboardingActivityDialog.DownloadReason, NewUserOnboardingActivityDialog.AddToDock, NewUserOnboardingActivityDialog.WidgetPrompt, + NewUserOnboardingActivityDialog.ImportPasswords, + NewUserOnboardingActivityDialog.ImportComplete, is NewUserOnboardingActivityDialog.AddressBarPosition, NewUserOnboardingActivityDialog.InputScreen, is NewUserOnboardingActivityDialog.InputScreenPreview, diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ConfigDrivenWelcomePageFragment.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ConfigDrivenWelcomePageFragment.kt index bcf9ac44e3d2..8854262aa569 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ConfigDrivenWelcomePageFragment.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ConfigDrivenWelcomePageFragment.kt @@ -69,6 +69,7 @@ import com.duckduckgo.common.utils.FragmentViewModelFactory import com.duckduckgo.common.utils.device.DeviceInfo import com.duckduckgo.common.utils.device.isTablet import com.duckduckgo.di.scopes.FragmentScope +import com.duckduckgo.navigation.api.GlobalActivityStarter import kotlinx.coroutines.flow.launchIn import kotlinx.coroutines.flow.onEach import logcat.LogPriority.WARN @@ -95,6 +96,9 @@ class ConfigDrivenWelcomePageFragment : OnboardingPageFragment(R.layout.content_ @Inject lateinit var addWidgetLauncher: AddWidgetLauncher + @Inject + lateinit var globalActivityStarter: GlobalActivityStarter + private val binding: ContentOnboardingWelcomePageUpdateBinding by viewBinding() private val viewModel by lazy { ViewModelProvider(this, viewModelFactory)[ConfigDrivenOnboardingPageViewModel::class.java] diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ContentConfig.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ContentConfig.kt index ff6c8058e52f..c5bac30d2e5e 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ContentConfig.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ContentConfig.kt @@ -117,6 +117,34 @@ sealed interface ContentConfig { override fun initialState() = PreferenceSelectorContentState(rows.associate { it.preference to it.initiallyEnabled }) } + + data class ImportPasswords( + override val title: TextConfig, + val body: TextConfig, + ) : ContentConfig + + /** One title/body pair per [ImportCompleteContentState]; [title] is the finished one. */ + data class ImportComplete( + override val title: TextConfig, + val parsingTitle: TextConfig, + val parsingBody: TextConfig, + val failedTitle: TextConfig, + val failedBody: TextConfig, + ) : ContentConfig, Stateful { + override fun initialState(): ImportCompleteContentState = ImportCompleteContentState.Parsing + } +} + +/** + * The outcome card is entered as soon as the import web flow returns, before the imported credentials have + * been counted, so its content is state rather than config. + */ +sealed interface ImportCompleteContentState { + data object Parsing : ImportCompleteContentState + data class Finished(val imported: Int, val skipped: Int) : ImportCompleteContentState + + /** The import returned successfully but never reported counts, so there is no outcome to show. */ + data object Failed : ImportCompleteContentState } data class AddressBarContentState(val position: OmnibarType) diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ContentValueStore.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ContentValueStore.kt index b06d4bface40..abd28cd663b8 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ContentValueStore.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ContentValueStore.kt @@ -27,9 +27,18 @@ class ContentValueStore { private val states = mutableMapOf>() - @Suppress("UNCHECKED_CAST") fun contentState( stepId: LinearOnboardingStepId, content: Stateful, - ): MutableStateFlow = states.getOrPut(stepId) { MutableStateFlow(content.initialState()) } as MutableStateFlow + ): MutableStateFlow = contentState(stepId, content::initialState) + + /** + * The same flow by step id alone, for a writer that has no config to hand: the view model pushes into a + * step's state before that step is current, so the binder finds the value already there when it binds. + */ + @Suppress("UNCHECKED_CAST") + fun contentState( + stepId: LinearOnboardingStepId, + initialState: () -> S, + ): MutableStateFlow = states.getOrPut(stepId) { MutableStateFlow(initialState()) } as MutableStateFlow } diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfig.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfig.kt index df287a3d8a2c..bd5c52804eec 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfig.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfig.kt @@ -36,9 +36,21 @@ data class DialogConfig( ) /** The animated stage decoration accompanying a dialog. A runtime fit check may still hide it. */ -enum class Embellishment { WalkingDax, BobbingDax, BottomWing, LeftWing, None } +enum class Embellishment { WalkingDax, BobbingDax, BottomWing, LeftWing, RightWing, None } -enum class CardArrowConfig { Hidden, AtStart, AtEnd } +/** + * Where the card's bubble tail sits, and which way it hooks. The tail is asymmetric, so a screen whose + * artwork sits opposite the default hook needs a mirrored variant rather than just a different position. + */ +enum class CardArrowConfig( + val atEnd: Boolean, + val mirrored: Boolean, +) { + Hidden(atEnd = false, mirrored = false), + AtStart(atEnd = false, mirrored = false), + AtEnd(atEnd = true, mirrored = false), + AtStartMirrored(atEnd = false, mirrored = true), +} /** When the card's one-time fade-in starts. [AfterBackgroundTransition] holds it back until an animated background transition has finished. */ enum class CardEntry { Immediate, AfterBackgroundTransition } diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolver.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolver.kt index afd0a9ba0114..ba09c62c4bca 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolver.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolver.kt @@ -204,10 +204,46 @@ class DialogConfigResolver @Inject constructor( ), ) + NewUserOnboardingActivityDialog.ImportPasswords -> DialogConfig( + background = OnboardingBackgroundStep.ImportPasswords, + embellishment = Embellishment.RightWing, + cardArrow = CardArrowConfig.AtStartMirrored, + content = ContentConfig.ImportPasswords( + title = TextConfig.Resource(R.string.preOnboardingImportPasswordsTitle), + body = TextConfig.Resource(R.string.preOnboardingImportPasswordsBody), + ), + primaryCta = CtaConfig( + text = TextConfig.Resource(R.string.preOnboardingImportPasswordsPrimaryCta), + action = CtaAction.Emit(NewUserOnboardingEvent.PasswordImportRequested), + ), + secondaryCta = CtaConfig( + text = TextConfig.Resource(R.string.preOnboardingImportPasswordsSecondaryCta), + action = CtaAction.Emit(NewUserOnboardingEvent.PasswordImportSkipped), + ), + ) + + NewUserOnboardingActivityDialog.ImportComplete -> DialogConfig( + background = OnboardingBackgroundStep.AddWidget, + embellishment = Embellishment.RightWing, + cardArrow = CardArrowConfig.AtStartMirrored, + content = ContentConfig.ImportComplete( + title = TextConfig.Resource(R.string.preOnboardingImportCompleteTitle), + parsingTitle = TextConfig.Resource(R.string.preOnboardingImportCompleteParsingTitle), + parsingBody = TextConfig.Resource(R.string.preOnboardingImportCompleteParsingBody), + failedTitle = TextConfig.Resource(R.string.preOnboardingImportCompleteFailedTitle), + failedBody = TextConfig.Resource(R.string.preOnboardingImportCompleteFailedBody), + ), + primaryCta = CtaConfig( + text = TextConfig.Resource(R.string.preOnboardingImportCompleteCta), + action = CtaAction.Emit(NewUserOnboardingEvent.ContinueClicked), + ), + ) + is NewUserOnboardingActivityDialog.IntroAnimation, NewUserOnboardingActivityDialog.NotificationPermission, NewUserOnboardingActivityDialog.DefaultBrowserPrompt, NewUserOnboardingActivityDialog.AddWidget, + NewUserOnboardingActivityDialog.ImportPasswordsLaunch, -> null // command-only: no card to render } diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/OnboardingDialogShownPixels.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/OnboardingDialogShownPixels.kt index 731085df601f..9a606190d1b5 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/OnboardingDialogShownPixels.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/OnboardingDialogShownPixels.kt @@ -58,6 +58,9 @@ class OnboardingDialogShownPixels @Inject constructor(private val pixel: Pixel) NewUserOnboardingActivityDialog.DefaultBrowserPrompt, NewUserOnboardingActivityDialog.AddWidget, is NewUserOnboardingActivityDialog.PreferenceSelector, + NewUserOnboardingActivityDialog.ImportPasswords, + is NewUserOnboardingActivityDialog.ImportComplete, + NewUserOnboardingActivityDialog.ImportPasswordsLaunch, -> Unit } } diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt new file mode 100644 index 000000000000..52b8e36af4f8 --- /dev/null +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt @@ -0,0 +1,129 @@ +/* + * Copyright (c) 2026 DuckDuckGo + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.duckduckgo.app.onboarding.ui.page.configdriven.binders + +import android.content.Context +import android.view.View +import androidx.core.view.isVisible +import com.duckduckgo.app.browser.R +import com.duckduckgo.app.browser.databinding.IncludeBrandDesignImportCompleteBinding +import com.duckduckgo.app.onboarding.ui.page.configdriven.BindScope +import com.duckduckgo.app.onboarding.ui.page.configdriven.ContentConfig +import com.duckduckgo.app.onboarding.ui.page.configdriven.ContentHandle +import com.duckduckgo.app.onboarding.ui.page.configdriven.ImportCompleteContentState +import com.duckduckgo.app.onboarding.ui.page.configdriven.StatefulDialogBinder +import kotlinx.coroutines.Job +import kotlinx.coroutines.flow.MutableStateFlow +import kotlinx.coroutines.flow.launchIn +import kotlinx.coroutines.flow.onEach + +class ImportCompleteBinder( + private val binding: IncludeBrandDesignImportCompleteBinding, +) : StatefulDialogBinder { + + override val view: View = binding.root + + override fun bind( + content: ContentConfig.ImportComplete, + state: MutableStateFlow, + scope: BindScope, + ): ContentHandle = with(binding) { + val context = root.context + + var rendered = state.value + importCompleteTitle.setTitle(titleOf(rendered, content).resolve(context)) + apply(rendered, content, context) + + var stateJob: Job? = null + + ContentHandle( + title = importCompleteTitle, + fadeTargets = fadeTargets(), + onContentReady = { + stateJob = state.onEach { current -> + if (current == rendered) return@onEach + rendered = current + importCompleteTitle.setTitle(titleOf(current, content).resolve(context)) + + importCompleteTitle.snapTitle() + scope.animateCardBounds(STATE_CHANGE_DURATION_MS) + apply(current, content, context) + + fadeTargets().forEach { it.alpha = 1f } + }.launchIn(scope.coroutineScope) + }, + unbind = { stateJob?.cancel() }, + ) + } + + private fun apply( + state: ImportCompleteContentState, + content: ContentConfig.ImportComplete, + context: Context, + ) = with(binding) { + importCompleteShimmer.isVisible = state is ImportCompleteContentState.Parsing + importCompletePictogram.setImageResource(pictogramOf(state)) + importCompleteImportedRow.isVisible = state is ImportCompleteContentState.Finished + importCompleteSkippedRow.isVisible = state is ImportCompleteContentState.Finished && state.skipped > 0 + importCompleteBody.isVisible = state !is ImportCompleteContentState.Finished + + when (state) { + ImportCompleteContentState.Parsing -> importCompleteBody.text = content.parsingBody.resolve(context) + ImportCompleteContentState.Failed -> importCompleteBody.text = content.failedBody.resolve(context) + is ImportCompleteContentState.Finished -> { + importCompleteImportedRow.setPrimaryText( + context.getString(R.string.preOnboardingImportCompleteImported, state.imported), + ) + if (state.skipped > 0) { + importCompleteSkippedRow.setPrimaryText( + context.getString(R.string.preOnboardingImportCompleteSkipped, state.skipped), + ) + } + } + } + } + + private fun pictogramOf(state: ImportCompleteContentState) = when (state) { + is ImportCompleteContentState.Finished -> R.drawable.ic_success_96 + ImportCompleteContentState.Parsing, + ImportCompleteContentState.Failed, + -> R.drawable.ic_passwords_import_96 + } + + private fun titleOf( + state: ImportCompleteContentState, + content: ContentConfig.ImportComplete, + ) = when (state) { + ImportCompleteContentState.Parsing -> content.parsingTitle + ImportCompleteContentState.Failed -> content.failedTitle + is ImportCompleteContentState.Finished -> content.title + } + + private fun fadeTargets(): List = with(binding) { + buildList { + add(importCompletePictogram) + if (importCompleteBody.isVisible) add(importCompleteBody) + if (importCompleteShimmer.isVisible) add(importCompleteShimmer) + if (importCompleteImportedRow.isVisible) add(importCompleteImportedRow) + if (importCompleteSkippedRow.isVisible) add(importCompleteSkippedRow) + } + } + + private companion object { + const val STATE_CHANGE_DURATION_MS = 300L + } +} diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportPasswordsBinder.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportPasswordsBinder.kt new file mode 100644 index 000000000000..0f079f713a5e --- /dev/null +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportPasswordsBinder.kt @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2026 DuckDuckGo + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.duckduckgo.app.onboarding.ui.page.configdriven.binders + +import android.view.View +import com.duckduckgo.app.browser.databinding.IncludeBrandDesignImportPasswordsBinding +import com.duckduckgo.app.onboarding.ui.page.configdriven.BindScope +import com.duckduckgo.app.onboarding.ui.page.configdriven.ContentConfig +import com.duckduckgo.app.onboarding.ui.page.configdriven.ContentHandle +import com.duckduckgo.app.onboarding.ui.page.configdriven.DialogBinder +import com.duckduckgo.common.utils.extensions.preventWidows + +class ImportPasswordsBinder( + private val binding: IncludeBrandDesignImportPasswordsBinding, +) : DialogBinder { + + override val view: View = binding.root + + override fun bind(content: ContentConfig.ImportPasswords, scope: BindScope): ContentHandle = with(binding) { + val context = root.context + importPasswordsTitle.setTitle(content.title.resolve(context)) + importPasswordsBody.text = content.body.resolve(context).preventWidows() + + ContentHandle( + title = importPasswordsTitle, + fadeTargets = listOf(importPasswordsPictogram, importPasswordsBody), + ) + } +} diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/CardArrowController.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/CardArrowController.kt index 59b50f6be256..c804355bea84 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/CardArrowController.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/CardArrowController.kt @@ -49,8 +49,12 @@ class CardArrowControllerImpl( cardView.setShowArrow(next != CardArrowConfig.Hidden) cardView.setArrowAnimationTarget(ARROW_TARGET_OFFSET_END_DP.toPx().toFloat()) - val target = if (next == CardArrowConfig.AtEnd) 1f else 0f - val moves = previous != null && previous != next && + cardView.setArrowMirrored(next.mirrored) + + val target = if (next.atEnd) 1f else 0f + // Only a change of end actually travels; a mirror-only change would otherwise animate from and to the + // same position. + val moves = previous != null && previous.atEnd != next.atEnd && previous != CardArrowConfig.Hidden && next != CardArrowConfig.Hidden if (animate && moves) { slide = ValueAnimator.ofFloat(1f - target, target).apply { diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/ContentController.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/ContentController.kt index 2fec1f339e44..746174ac42ee 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/ContentController.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/ContentController.kt @@ -28,6 +28,8 @@ import com.duckduckgo.app.onboarding.ui.page.configdriven.binders.AddToDockBinde import com.duckduckgo.app.onboarding.ui.page.configdriven.binders.AddressBarBinder import com.duckduckgo.app.onboarding.ui.page.configdriven.binders.ComparisonChartBinder import com.duckduckgo.app.onboarding.ui.page.configdriven.binders.DownloadReasonBinder +import com.duckduckgo.app.onboarding.ui.page.configdriven.binders.ImportCompleteBinder +import com.duckduckgo.app.onboarding.ui.page.configdriven.binders.ImportPasswordsBinder import com.duckduckgo.app.onboarding.ui.page.configdriven.binders.InputScreenBinder import com.duckduckgo.app.onboarding.ui.page.configdriven.binders.InputScreenPreviewBinder import com.duckduckgo.app.onboarding.ui.page.configdriven.binders.PreferenceSelectorBinder @@ -62,6 +64,8 @@ class ContentControllerImpl( private val welcome = WelcomeBinder(binding.welcomeContent) private val addToDock = AddToDockBinder(binding.addToDockContent) private val widgetPrompt = WidgetPromptBinder(binding.widgetPromptContent) + private val importPasswords = ImportPasswordsBinder(binding.importPasswordsContent) + private val importComplete = ImportCompleteBinder(binding.importCompleteContent) private val downloadReason = DownloadReasonBinder(binding.downloadReasonContent) private val preferenceSelector = PreferenceSelectorBinder(binding.preferenceSelectorContent) @@ -116,6 +120,14 @@ class ContentControllerImpl( boundView = widgetPrompt.view widgetPrompt.bind(content, scope) } + is ContentConfig.ImportPasswords -> { + boundView = importPasswords.view + importPasswords.bind(content, scope) + } + is ContentConfig.ImportComplete -> { + boundView = importComplete.view + importComplete.bind(content, contentValues.contentState(stepId, content), scope) + } is ContentConfig.DownloadReason -> { boundView = downloadReason.view downloadReason.bind(content, contentValues.contentState(stepId, content), scope) diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/EmbellishmentController.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/EmbellishmentController.kt index 3f32dd086721..e2846b6af393 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/EmbellishmentController.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/EmbellishmentController.kt @@ -92,6 +92,7 @@ class EmbellishmentControllerImpl( Embellishment.WalkingDax to buildWalkingDax(), Embellishment.BottomWing to buildBottomWing(), Embellishment.LeftWing to buildLeftWing(), + Embellishment.RightWing to buildRightWing(), Embellishment.BobbingDax to buildBobbingDax(), Embellishment.None to buildUndecoratedBand(), ) @@ -228,9 +229,9 @@ class EmbellishmentControllerImpl( } } - private fun leftWingBottomOverlapPx(): Int { + private fun sideWingBottomOverlapPx(): Int { val cardBottomMargin = (binding.daxDialogCta.cardView.layoutParams as? ViewGroup.MarginLayoutParams)?.bottomMargin ?: return 0 - return (cardBottomMargin - LEFT_WING_CARD_GAP_DP.toPx()).coerceAtLeast(0) + return (cardBottomMargin - SIDE_WING_CARD_GAP_DP.toPx()).coerceAtLeast(0) } private fun buildWalkingDax(): Decoration { @@ -368,7 +369,51 @@ class EmbellishmentControllerImpl( placement = EmbellishmentPlacement.of(Embellishment.LeftWing), maxHeightPx = { LEFT_WING_MAX_HEIGHT_DP.toPx() }, minHeightPx = { LEFT_WING_MIN_HEIGHT_DP.toPx() }, - bottomOverlapPx = { leftWingBottomOverlapPx() }, + bottomOverlapPx = { sideWingBottomOverlapPx() }, + enter = { + view.isVisible = true + view.alpha = 0f + view.setMinAndMaxProgress(0f, WING_STOP_PROGRESS) + val fadeIn = ObjectAnimator.ofFloat(view, View.ALPHA, 0f, 1f).apply { + startDelay = WING_START_DELAY + duration = WING_FADE_IN_DURATION + addListener( + object : AnimatorListenerAdapter() { + override fun onAnimationStart(animation: Animator) { + view.playAnimation() + } + }, + ) + } + fadeIn.start() + listOf(fadeIn) + }, + exit = { + view.setMinProgress(WING_STOP_PROGRESS) + view.setMaxProgress(1f) + view.speed = 1f + exitViaLottie(view, applyFinalState = { view.isGone = true }) + emptyList() + }, + hide = instantHideOf(view), + snap = { + view.cancelAnimation() + view.isVisible = true + view.alpha = 1f + view.setMinAndMaxProgress(0f, WING_STOP_PROGRESS) + view.progress = WING_STOP_PROGRESS + }, + ) + } + + private fun buildRightWing(): Decoration { + val view = binding.rightWingAnimation + return Decoration( + view = view, + placement = EmbellishmentPlacement.of(Embellishment.RightWing), + maxHeightPx = { RIGHT_WING_MAX_HEIGHT_DP.toPx() }, + minHeightPx = { RIGHT_WING_MIN_HEIGHT_DP.toPx() }, + bottomOverlapPx = { sideWingBottomOverlapPx() }, enter = { view.isVisible = true view.alpha = 0f @@ -540,7 +585,9 @@ class EmbellishmentControllerImpl( const val BOTTOM_WING_MIN_HEIGHT_DP = 130 const val LEFT_WING_MAX_HEIGHT_DP = 196 const val LEFT_WING_MIN_HEIGHT_DP = 130 - const val LEFT_WING_CARD_GAP_DP = 8 + const val RIGHT_WING_MAX_HEIGHT_DP = 196 + const val RIGHT_WING_MIN_HEIGHT_DP = 130 + const val SIDE_WING_CARD_GAP_DP = 8 const val BOBBING_DAX_MAX_HEIGHT_DP = 156 const val BOBBING_DAX_MIN_HEIGHT_DP = 130 diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/EmbellishmentPlacement.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/EmbellishmentPlacement.kt index b58036317089..3e6fe84e4621 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/EmbellishmentPlacement.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/EmbellishmentPlacement.kt @@ -33,7 +33,9 @@ object EmbellishmentPlacement { Embellishment.WalkingDax -> Placement(anchorsCardOnPhone = true, biasPhone = 1f, biasTablet = 0.5f, drawsArtwork = true) Embellishment.BottomWing -> Placement(anchorsCardOnPhone = true, biasPhone = 0f, biasTablet = 0.5f, drawsArtwork = true) // The side decorations reserve no room on a phone, where the card runs down past them instead. - Embellishment.LeftWing -> Placement(anchorsCardOnPhone = false, biasPhone = 0f, biasTablet = 0.5f, drawsArtwork = true) + Embellishment.LeftWing, + Embellishment.RightWing, + -> Placement(anchorsCardOnPhone = false, biasPhone = 0f, biasTablet = 0.5f, drawsArtwork = true) Embellishment.BobbingDax -> Placement(anchorsCardOnPhone = false, biasPhone = 0f, biasTablet = 0.5f, drawsArtwork = true) Embellishment.None -> Placement(anchorsCardOnPhone = true, biasPhone = 0f, biasTablet = 0.5f, drawsArtwork = false) } diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/StepIndicatorController.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/StepIndicatorController.kt index b781c7a66939..1c98eb86c9a6 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/StepIndicatorController.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/StepIndicatorController.kt @@ -60,7 +60,7 @@ class StepIndicatorControllerImpl(private val indicator: OnboardingStepIndicator indicator.alpha = 1f indicator.isVisible = false } - !animate || previous == null -> { + !animate || previous == null || previous == next -> { indicator.alpha = 1f indicator.isVisible = true indicator.setSteps(totalSteps = next.total, currentStep = next.current) diff --git a/app/src/main/java/com/duckduckgo/app/pixels/OnboardingPixelName.kt b/app/src/main/java/com/duckduckgo/app/pixels/OnboardingPixelName.kt index ed6317ff9c70..f5f7090acffe 100644 --- a/app/src/main/java/com/duckduckgo/app/pixels/OnboardingPixelName.kt +++ b/app/src/main/java/com/duckduckgo/app/pixels/OnboardingPixelName.kt @@ -36,4 +36,5 @@ enum class OnboardingPixelName(override val pixelName: String) : Pixel.PixelName ONBOARDING_TRACKERS_BLOCKED("onboarding_trackers-blocked"), ONBOARDING_END("onboarding_end"), ONBOARDING_SUBSCRIPTION_PROMO("onboarding_subscription-promo"), + ONBOARDING_PASSWORD_IMPORT("onboarding_password-import"), } diff --git a/app/src/main/java/com/duckduckgo/app/pixels/OnboardingPixelParamRemovalPlugin.kt b/app/src/main/java/com/duckduckgo/app/pixels/OnboardingPixelParamRemovalPlugin.kt index f8f8bd862ad8..8ddd35898e3c 100644 --- a/app/src/main/java/com/duckduckgo/app/pixels/OnboardingPixelParamRemovalPlugin.kt +++ b/app/src/main/java/com/duckduckgo/app/pixels/OnboardingPixelParamRemovalPlugin.kt @@ -43,6 +43,7 @@ class OnboardingPixelParamRemovalPlugin @Inject constructor() : PixelParamRemova OnboardingPixelName.ONBOARDING_END.pixelName to PixelParameter.removeAtb(), OnboardingPixelName.ONBOARDING_SUBSCRIPTION_PROMO.pixelName to PixelParameter.removeAtb(), OnboardingPixelName.ONBOARDING_WIDGET_PROMPT.pixelName to PixelParameter.removeAtb(), + OnboardingPixelName.ONBOARDING_PASSWORD_IMPORT.pixelName to PixelParameter.removeAtb(), ) } } diff --git a/app/src/main/res/drawable-hdpi/onboarding_import_passwords_background.webp b/app/src/main/res/drawable-hdpi/onboarding_import_passwords_background.webp new file mode 100644 index 0000000000000000000000000000000000000000..fc6e6a0d945c605f389674e7e72dc48077f544ff GIT binary patch literal 26694 zcma&MW0WRAvo89!d)l^byQej6+qP}n-P5+FZQHhO_q1)lcfNh^UH9yB_K*9cYQ?I| zima@Nd?GUPQIZrB?z`>w;6Ln_-8O*UaolDRdjxnDZJnrP2iHiaClBSg zsXW(y#n*Oi(nWezL7kl<5yWjpfC_o^?>IK}N1zRXL zLryo676uGUcUpQT2^nVAPJfnj4F2ag4}v&C5+hKiS>VH`!2fZ>R!k%*JZjH;F!roL znCx6{>}W53QX4JAyy1U>hlBI+1HMbDdvDg`%es>L ztg5jk+8n2H;&&~4IJ)qtQ=vI!WQ-53ovzj%Mvj|s=u@FB9O@J3@wSz~392n6&*jj$@iphVQuS{&cqZ2veQJIj^X!ILAq?*_iV=-Kq{J6jKiUWp#QNI*krc3rT>W z+nRg#VbdP_-P`HzHX7By&39kXv?$09#1XP&D9KEM-om(wd2w#kdx=UzYM9QOc?dFOl$5EF8)Vb=A7hh(E<}GkojTPvPUyZGo7B8Ov84L8PZ{oj09#vx}+pM8$}L%$ppe>IFMpZC#18a#C4Ow@8~BELHn z{#+cL--U)U&Lo~cBK3R!ShCf_i1(*gM=n8-f##RrNYjbVGa4`&b&{k(pz&-JMW0i7vyIz#jycQ{;996>n{GZxN;li0aHU7HQ5j&R|5Rib!`Y zU*^gbrNhqJi26}d-yfYoe?GlE1g`9Sg05JRcyu$emUdnn4?6jM7fJ;x+CcB;WvK5Z zK=CIEeK%D!XAEQ4T~c%~su{PHjq_&9i}Y)Vq%E1EW&adqeaiK10-v(Rz55bZQl_|} zz5VRWm8&k`Lz_g};#Rbh3kE_ra z?lPv~TD1KnE-6arU`>po z7bnwSGZJhL)bKSzs*7m=V@}5WU)$CN|Sm$iF#aaH&>BQ428ee*`(h-(H@mSF|EgC@8 z^Z2g7)Qs6NeUQDAh%@U+z~Z;lOfD^$V7chKs*I|<({VovQhtRBz;rRmE?YLyjQ;f* zjuSS~=kKwz8v#5(wU}_Y>LZbWmsqB(0>+?F*^X4Q5yK}dJS*uaM)HuO0#G5<8_C6$ z`(1|-iKL3wcQ3vrk+>3cGiR|PasS(SBnF@$Ef6Vk;nL8Fhgu*7QTH@klF&5b?$MTT z^mSri8c_Ba4ZSNPr^`X{GX;i@=@~Nd7!NNCVw_h_2Ud{Ym$=~6?|ze+?3Z$R->KtE z(tf{ClV-f%c26OI{)>=gCk1CW^oMLQXknah*yD&$EA}{4PY>vy;#uK^t49x33N}@P zNaH->YDWbGcc%$YYf!Cso~h=ee=T&b{bRFya#{|zc49r>N$emg-|)^X-0irii8PSU z-N8+Jdj$V!SPrD|#WDLhdUTYLsOS@0jVHkS92`%Z)k2u-ft%;b?g;xKF5Q1{g5B+C z0Y{m~ZNw#Y)*By{XHGC&>>v{8OF)q$Y>wr*IU{)0$&|L>yBxvPgjVGMV%bm3p8a`6 z6ThHuxFRcOHyn}=gZGZt?Kox|tIW?>=8I0_nbaQjLrAp#6Qamj!p-R*Gk!t9P|ln` zRf<>w5e0Iy(>`vF?$Dhs6X!9pNJBR5@xAP8-*E`tr>P43%>d8sGjc?(};tsLvyc3~YN?4gG~f8mDcT%0mB zoDiM%D}~?^A+|9N&@|iMbbLcRAggHe!WOG*469d%W#tbB%TLaE;2;dc&z&{Hz>@u9 z3z@S-j4-T@E7MrLCqXFeG}T^xH!=<$qGm{QRh40lVqAJ@ALi{q(U;GH(zG=3<7AJc z-)D@^_ao|O4#Jdkr4n3*#VR9$v0aS|PJhqj%MkN^_f%f>mHcfk9(MdC^AppYj^I#!^niI>mSiP0gG)C^giEXb0G`e5ir}cZ69KH~osf9+ z08(K(m9;g`_nT)0SaNZYJ1h#2qW6@fJAeDS!eJt|9EL<(T$}ceclR@P1(azW(Z?64 z&bPlli+?}&E@nIPKIBUGJ|&QYL`cc8EZ07`V;KHYDqnMj%+c-PT%hnbbak<+))Fz1 zBT;Hv(VEj#Te};IROT{h;Z^}yJE&hg>`5*S=Mw>D_=&k>=dKvASwPnduZ zqD5$`)y`_mN>LGA+DOAn0+c!3vXuTkOjeNRcr>X&*%I?w*8SSlTGq=X3)|FntA~#U zwXE5#HNly_BEIKL6zS6QTCm4IZSv;{b^N38-L{Nxz(xpoo&&mH)*Qp>SG8T=Ld6Xj zq^p}FTuh4%%JY(D^vdpr`4q@s(kBOpNj#+IE3h11PvPC(9>;sT-b+68(%G}@eV!+k z3BG5KU`PF*=HjZlmwd1^DlyJ#L;`~ejIA$YdAJcol@RL#VYv(>%h7Wlsy`EEfd&I$ zja;kqTeb!-7}*ybhu@L{z;k|FhT>DYW{k5`G>s>eg>_cjSn~pj17_=<qh=`S~sVc|ctk-R~ZQUz6fE+E=jy$EhzWT<~SiU8uZ%~qq zlLKu~mvV@J8jfdipl@i-^prOEZVB@AKO?^Q1aa3o*ud zhM+j03Y9<%su|@y63Di-ZgU9sk1w-X_CxS7zyQ_77gR7+-?$67-t{B;ky10rPr=Jn zw-FcsYyT%m%CnWAU^BK>qH*fgxJ@5$K)Gl~L_y!jXz!H6vxWJCxq>9O*&r0Ei!{V- z52?LN;&FdJ=N676|K~-0B|uR13?T~ihEO2d<=HN_^bbXj?yTY;WORf6F9z?>B2R}o zgjS-r3H_dq1kf@X;hZu6A)Y|=qX8mkjK0V;cX)?mKmv@xS0f>@B>~=L7PsV%+lt#D zh)N2v3{3#M{};?z|BjuZzXemjq z&Kqzv`o50C(xhv=pnr*hx7>CU;NN$KmjO&K^5jUf8r3hm@KhUO*RW(%0%ZM8{%KtP zr?HySt^iOmp`g$N(0H7z=Xt={ITZfFQ{E=G>AnZvjf(m~$BlFxW*N*#V;|T+b zVweDQe)cn0mY-|N2+>#hXA}Xcpf=uol86Xj(-Qangjel!01J8+sz^0}#@}07v-qZw zT<1g7=(I#TG$xTict)bZb$SliL{`e!O&>IXg(|j+NF{*k0+0F3H1WD$ujv7F$pw`O z-2=#oGq|qG;hgAm88mCdgaRm1OA!*3sy@Z*o_uTN_)p*FI|Yja+8}cI98sRmS%-f) z+2et6i#`h2N`>eSF^QJ7(8+0B?&k?MnI*xcp?FqLL2?x(%-gQGqb<>Oc)YsI!Eq%po)Uq`@AMv`+p{#=sM2IAev>u;(vgzyQahX)$BbNaZ%uL6 z^}g=yGQNG^<*k1VW>xhppuql4muDVT5~r&>b*i-EGK&L#9J@2Te+aYUK*6!b8OU$H z(OR_7Lfmx6v$<^}+nL2WTh~r`Tqk_oyuS3>zkcij{U&?uJ3sc#OM2O|oHwVsAiVEp z5QUs|A^3T7cGjB3*;;2tIJ?_3GFqXZuXEfH7!yxL>KD+99<~id{$;7|_Br$8Kuk72 z?93B1u2WC1e>=r29xbWVN{yq^BGzG?Ua)D$g0)WuFQ!p3Z(sU(xY9mM{X*tx9!9aS zN{v%a6XSxXHOR~znw5?e3>o(9n8YoS`V$wNB-=wQ3oF{bRSEMJSGix~Hc|V%2C&DQ zBg}JMYV}8X7X2X?*&&H5G-};xBiWm6d~D^aHg`W`C09LN)hgFaF>*9H2Ubw0E&h|* zJk;E!jai@rM_1B4NX@G0$a7Tj1~Fv1M^F_SHHW#pm|j{uoP;D8DzU_2&Gb)*%gU>a z@aWS6?9j$d(DMqQP#uOS=6r-$U^iA)Hk71afy6Brre{Jw2gK+#Bmuq$Cj#+4VF)>m?5j?HMh>)9tct2}VQad!MS z$>$2Lm=P13PX?=dC7b&WaSkgVA2KpmbnGuI+(pO3(LWi|O*-=C{4K8_R>u`wk&PMg zxP-Vr#|JLoet<@Ei*oHSEec5BvZsn$+^P|m)JzpBWbMmdks3X5iP4- zT#LmIpWQU_cSlyN!XF3h-ERCSiP9n3op)wt9|o%Wf`%m`3eRxPS_ECV6#1gba z%c=Q(<~cgmy7Nm6$q5fKt5hW&3G>W%*-Ryyi4nT(*Im$YCH4756^D^TNvV2#+y@s2 zXNxGBbQyV-k@_-hDdw=)^79xxRTC6GW$xMl3aViYo2jMPR!oVoj>O!GphXOMg(%rV zX3ge*23e}LY>%43&tEU!1FIDyqdhEDY*ZfRW-F;&Tud4>ViY;5+$}1NVq8eC&Oudh zN*eQVZ!E4H(GD*!q8JumPp=7<2Q4FKM%NLWRgYPn-D(1el2fDm>@`P(EPGzGt^gFs z$yKvOj3?X@8*A6C$^MWNM#lJr(3>YrOYCskaSM{;mS2vIbm8xeQJ2<2t4NBqQPDXj z*vQH8`Em=gD)!$uVzo!Zk^X0Eq;jt?d}1-RYj{*m2*m~;xg{uXV1o6wNS>b<46{-f zfhN{6BJLKJjHcoU8f&>VwuqJ)Aabs2;~7)!IIvLmCSLCduH1eX=&HCVKTO@EBX$_A zT|hyY;6jISXJ6>bLzq!GpQCUqvk%kW~SNh@XdzGMD>|{(@2^)aZRiAG%zjCXEu- zE_y#?SqlJSKA)KKNiK*bZYNk4X2=OjD%RDiAT}NwU}W3D>)YItQvCnW*18(PS>Sz< zGv0<^>b74tKT;%WMT;rzfxd0&V|DX>uoM4QAP+bWOIFQ1j@uiaDO|KfgXOS>Vtwhb z*XHc+ekJ=NAn@QivyS`Vb9h)tbS5mN>cUWWE+_u&G0@G(bHbCEl>w#f>ws%h7T#y1cX1~UrArRFS8SbrT)*|lK$4;AK%d* zoHw;|h-U(?yVrzWz@u*-pdR16-?^Wl59qh%7wb3FYuv6tR^A7&mEf#*+P~+k6zF~r z@(KJv{EV9gX6Jq6eSA#-XZ&Y@o7YgEmG7gUjI+Run@{}@f%$LX7p1=?&>Wcem3LG6 zRaA0p9PN?~f0}N}!{!)E($|hH2YF-O_$ot5%s?|$T~>N! zlhXfL&;Rmt5PJP2)}S~Wg<9VIRV7#T%L0P{`gVItSaiNXQ-Ez2yeotRr)oGW$;nQ3 zyq%NcXzPCzmw4iPe>Kh$f%{yEuI>FSLV^QdiUIM5k2?*Vm}+5KjN`u;%{GyUL?$5< zV8G5{ff78$2m9lK5ID#4zlwCx!sxknSPf$fqL}`dxVQ63VpuwHU}Mk!{%(ini{eyl z9@rOd*4If89`JW^2et{LKJ>^R9+9iD#r+2)53e0KI`^?;++YVg`2IFd$i1!qPuvvS z1J4c_&)q;|F8hB+O%>e~xdis1Aa?mFd_GZ3vx`%ynNn;3?gzbJZw8j!`kh{y21+d% z9WI=)@@!^9u9_4v%wbF;Sc6!`aEAX82mU&Mfb8o|Y8K6GWJw>yNZmAx_D9H51oh_M z03nuz-3lP_B_pr~G4(++YA1|g%w1}!xLP5q*pyd_ryDEuL9`_+2VyoBlJvYMU8+@Pzy#S+in%fLJha zFyQfselkb7CF$dbwtF5<(JebvL6O=2?#sgTHGTM(aq85e3Mt5HL?6srRS+-x-Z0z3 zAj9@dR5tk+Qx3OkZJErBT@!^X%k=cA^RB})zUbU&8WC@>pLVw zre{U$irinX?-l!Q3&E`#ekHtkcl($z6_j`l-AEUt;VAsj>Nw6< zb-1ug6E0Dn(QZk5Min1JDfZnM_OUZbESaWG*$O^It^>{uDcMq0VFVAyIdFw72D{03 zB=UcvM};QG#Q6_wEB!!DpY$X8A4I-%=mH0{2zN~RUVp}v^|^QSp?W;L8{Xm9uE@9o zw}g>N*0(Y0nyQjuWqZ1&9+j}`HXn|dZYSgi@v|Ub4s9%;fhN=Y0K2IjXA(lcDVcuX zvuF1pUXcC`s2MTL9J=s(QnjdqjKTDH7S39R1f4CMOANksPMb~?mmEO^*sXJy)4iBq zX!i!lNgqZvpPS*%Np@wLrvC>pds8?bm6wu+g&9IQE4*Y&z|-6E4XZgw3T>SL$a{k&Hg zxWn6dyi+R^e+28Hty<8e5*2^h-8KKeuYW=Np2JaP0gd{?gMCg+!9FF%o1MH;MT)?-zN4ee22oR{)!? z^fY*1O+^K?X5!@nlLRV)Kk28f;jC#@%Ru9M&d(~uwubh~Q@%1jEl~n{+VK1kv6)k0 zU9R=G0Tt?o87u=`AqLg_{|%kDa3tj0zMxmdi}TNtGnanM*kW|#z(7fAB$RaOmkD*} zXeE>iKwl*AH@5F{UCYV2u)I)hLm9m^_Qfx4WGP$O+XsDww_9rZ{RH-z-V*B~M;hr$ zgdmn3yYBMsMRdi$U_*9(sAq76I{%`URnJWaHP8F+;RntS0!C$(@G<@pJNshApZELt zxh@>OnMtHtX_ABw5j|Gs$Knf5)&K1VR%id^4I)EbJi8Yey|n)o747=~-`|%Z|A++t z$OGGrpj~ifb=7G_Mp3{xWa7cIAc&NIhr@J4a;ceV#SE=zvgdY;6TLRv&Z9xZWIguZ zI^l8Tu*4+l$>Ny?SiT2eg~WIhU%Bhx7=s#6BOMaJ&u;#}&Mx0Y3tm*=u+=Mis)bDt zA3I8D5!2FocghUGsdgzn5ltXTJdX&9LrmGIEB%KmF)6B@A-=}@mpEzbvUe9q3 zJ8`(IWCEVnR&G>gf=Ll^Eh1MFkL}#1GQNg#kN#ruRCF+Q`<3{@?5C3(Ik2D7Y0Go8 zoa92m+x)l8Ci2@z4(GDA^WX{)yfO`Pe&}IRx^@5Ni8-0vROu@ ztSr&T`1_QLnzQfK+5d<+ND%$tMo?r6&yDr~iVIxusSj%S;g)V!0{#0hx7B)W_(p}@ z1VyW(Fn;umI=-Qbqu5^Y?^rW-34)IhL_vc!EEeKOQpsdU1~BS-P?%OL_eV*~l~I@H z{4qeT88SP4|1SfxR+hyGTg9pVx-P9SzASFhUVx!rPi(8$20@NG)OCH6GO0-L8i-sS zEsr6?EY?vFlkX5cxWvn!vLEhh&*_mma&Dojc@}q?4d%Wbvhgya7i)>-A&!`wA6TOv z68_ZK5lbrQTM2Q=JEmJXa<8${2D4HwtDhr1Oe=71p89mTU#Je|7&h<1Q zfb-#Z$NgQcdUxNQtHEhYT%aK3cB1anHvilhOgjU5?9mPISpQNJ_$)ml^6cr!9xT}p z$Q-6knOnt5w@pTY z;4hON`-MfSx(%KR$`)#bu&=Rn_vZ!NI3@6AZ5 zNDt0V`zxH#12b0c0wvQ840uY&xKU8Yp^7pz^G1#7;p7OT5X1NDhNy4@3aT=;iVLeY z7jw~E&v2GQdi9$h+I3ewBMDOn=1;G1Q3Mj00p~TnjNi*zF?Whp@Cdh~!ohhY?-x5^ z-pJ`i6J-;Ba3PMzKDg0!@{MCWOiCDDkrk4ta)18&9juH#ZDIX|gxe^uw<{wX^hO~x zD_bo~a9uKB@30b#qAKs`hdyc*!=&QspY6^QXU7S%6-b$N6=(|OAAiNyMPq(LA02wH zz1QG3($L&MlyL>n>d&T^sGpvZ7x=<{jxd?I@65Ec8CfwvJrBP@TA{OQWA;(>aFo$L zrNqB6{HoMA@jEeNKDuJ9V+494HQSa=KxXKA{o^448t($py{MR2!)7^UeTVOrB_BT- zUx#Y;G=00(@dO+12i#w+ARioUu>FAf4DmVI#oZpQFW0&(t9qoz9f~2lM=SM=TVr+9 zB$XPP^#a|_#@ITTUx}87t0%jEF2c^7I%+AXHqj1zw-P`t-Heq#Vlv(w=f&4_%L|65 zKq444YR30Gt0={@&va+sr{%q&)q}C^Z2md~oBb6PtU5mY`R9xL!hUk(*db0(DGywM z31b0fKz(n&@;u_D5-}aFzuO7Vhaoz9mCuscja^zhD{0cF8%mb`HdJl9hwZ@zz?ZYVc08jBg&cq8?B4*3z;zzHX^Dmqzy#F zx&`MC(@5El=8iT9h!AKB_5P=~N>7-N49m}l&&E6VdM)^Fp!I2MkdKXHmPB>v)+fxN zN%=GyinU^MtCgC!0^9FJ)W8&?M;@`<;829n8lwY%=r_E3sk;bg{Vu{)18Qmi21rcM zvh)#dovt++^DyA{!4Z8cFT!SN`f!C+CY}8~Z!?wl z531;jL4Wh1U7?5ZPDgtPIHS?Ya|@UZ%n96&<7JK?fgt`l+DLB@znj`j`yBy=R>_5Q ztfM`MrvyJH<=D4!aTr$@gO4btS$8EzM)UzfJ1GDB0LO=?OFJ^@Mqn2Su!m5q>CFD+ zZ(+FiyAVeOZNn8)SR6E-9d5Ge@cupTiTsA~2zgEE7zc)6=a6(^zo~OOEHusYTi|A} ziaYvECXG38R@)JWj`-OZ;ZPK8XoZtgi%Ce;Oq*!kwi$F`O?6J;^2BSCd?55{W0f~* z-?<3o$qrwK=E1Mj=~S*SZm_OXc#iD3659=f-hfA!spT~B_4Ht0ea@tVyiI!iK*20Lg6`jLQ zp?!dNB%{qI)GV8~{i=12CFqTdquMs}CjwN$SZh$HvbyB`5yv4vI9T<1N*?%4HpNe8 zj_(v>v{b2?a(nDubGvrLgcHZ^7UFpjTAJsiZ}x}k8Lp6WMCowk0VH{=ZVzO}p} z=duA-o3`pA=(8%DWfNN(02mn02Vz5eI%P-lcisJtD!ft^d98J?+auYh>ct|XpCk_&k;3KK&(5K+B)^aM2&2)F4^^}P(Qf23sdLbc^aroVP zLm!}tqR|HcFm~~%GpOUNRLp;w(e*@hgUqms6s%$(@t2oHGB992=vE8)3p0?@E{E`{nh4=rhu=0>PvvQ<_$)5Y2Alm9-0h8RIoGE)t$lxHROYP<^EwU6ry=(- z#$#F2o^L~>{v&s1PPt%w1Ejl>AR|Q|Rld6B-EZYMMDKl`t0_jiI3J1P-R+k*>6Dc) zS6X+~nh3xAKTOj5Dl|!UYMQ(op11_g^A*RjjUB*rC=5FCY)*TgK_H%*d=$SX2!oM- z5dgsXHbYdbdR1ty><<#5Wpj*Rso_6O0*}o~$LXyS0HES`8Ie^& z>+ePfCJ$qKInTN#t=P0}M-}}sgEYxoqkG5R8iVt*AG(9b?MgWj*=09CeV$;F%yDiZ zOjmRYNnOcdzhw=5SlP=KSM|}SYzV=F&lSGLVk06?SUE8iwYp0yJDm#h5;IOoN^q(( zg}Z04jOX7e%2aeEHd15tDhQIf&e(L^^mjsJwc=k|+eE`~sryl~2j5GArC9WtwQA6F z7l`#~E5)2L-F~3dSg0Er6bx|tADaS=0y@%kw3Rlw43ycCu0$qj4cDdOc9T(pahth0 zWDf3l(^38=%kE{Nh40MDLfsDJtmH5`{y4d{6RNo6<%yQ6lNpA^2MIxx2Wsft<-hSPs`L2$atkQPJxZ_hW^H&5@{U>LQK=Q zKsqj1Ued_T)`0frsg(45Ukxl*{hj5%qU+j0ul?jlbbRpC<^rtn`;?45wu zeZyD_F{QZ+WEZ2RfTiS&B+i|cRg^HeJ&iKH#tZGJ29onfM=OR|`!Q zvj1Rr5Wenr$#c`_F2-yYGFOq~aJzCB63XD)o;{nQtZfS3=t1fU+@fNp)8=qefb2Fs zM9M;->(DWKH+j+W+g}y(8MPV)E|Z3bj**Z1_%lzwmb>jiD}xZ#$=;nElhJUZlC-cd z@P7dVY;;&IvEQ)O+VWTU=|4hTD1}BB*TGC&X4D-smB;*oySIINEfND_;ssL&p)Eo* zY+T7&w9pifhy3wc9hUL>NLKz&SER`o*9%pSiixeH02w=bVnt*;UY&uVFLMxDmt$(!4)*w#q(nU#uMBT;zD3Xhb# zj*ckM-|0#7BHbCC&_?t)w4~9@KWoze*!9FNC0rC(I$!CR&g?*Ucm~8zARkdv#CfRq zY?1*U1$Wr$W=^i#adNVb3X{sZy2Rzo`pX+J%k!(>*8^6K|7bjGoNQ8g)d}=v=qTZ z#pbs*O=k5?mcExN`!lb9M2TnR>V3p)+TD@)>a0>3C1$jmzl;{(ZT_bMUl$7sq*DBTC|WnD=3(c^3e;Zg<5}NF`n&xsW(D*5W!9ts}ON= zB|7*{s0B;&5~})EU?T^K?qcxyEjh^+$82AdAnm-^b-_Z!V}iWXZXbfSmS8=FZx2>A z7Zs#wLVqenW6la_66Tk?>%O)TE#BNsw70DcV8o_A%j!L3B}MkV5yRwUPPkl`I(_@r z^D4T=QV~nF9V9xE9n+%%(AG@*sU?Yx*~`BvjxDzd4gxe zRZ{rWQL=xVS4|?8ZdVh8ipO*X}u_!XSno5si#gG-QrftGc)2<2E3w zJ13T?o~X?HZJF2`0rAlR$P`7ya3>-gHEhXLw6u1aNBl{&Z8bryQSy*jvl=#&$ascG zjV6ifYHbQR$Xcmt9ZDSeaTTD9azOEwZ#)hLo#YWx*{6{<5zJE zDW!wp$67Z_pEIj+I4J+Piydeuhwr1MO~DM~Cc?KM&`#rM$dSIt9cKeC){+#0XEhFf zXGz2rlRU-H$vp=rvFDhsl^ukF9d1oLd{;@Or)H!QGYoP8QEqvnGacluh=FHXe!oQ=CMmeks{ zmx(r{FxE$5c<{mWh$nl%7RGIlT(n!F9+$OIu8h4|@PtO(^KEUiXxwn3H&^1f z@%eckljikg_?jw8_gHZ86MLYSIpL{GKw6WOKTPIC=?f~!0330agdjDRY-!e7j}+~Y ztJ{Jxu2jD059$Jd9Z`0CiVIt=FoD^6aIk%&V*?*wBHq4SAU{J!lb+IvaPHVvZo^8M z@EAJjtQDMAQ@ROcnq5W!Am^EYrRnUjvL=h=21-Z`@f@r-&z`WImE{NiOrTbGm9aM6=gWcGZ)GOAN@ZwYo*kx*HIFkRny z-Q2waO=YEKv}gBw;a1Dy1WJ37S-`6fAIO>JN@HEPL5093L70~x=GZ|t97StiQ6D~( z$k|8vB~+Mumi9}0LRS(%^KzIfyo&TIaDJnruc@O6%P?s6b^btuunGO{M4;D72Zh9( z8;0Ef8>egHPlJ@`tNSkl0Ol^_`}Vh#?1`y(c4k5)S1AdTR^s#LQZCj#sBRmt5eICp z3h9jB{h;sH4<0IBN~D4=3`~7OC6(Z#tHyoNo!j~Yu%u{qzq{w(0g=(E2hO&?c5;WB zG7K~R{9TIi{{vKO)F`^x{~DNoF-yHF^$H^=L)-KEsiU?UzbeB9r=%*X2)IUoy?=s{ z{&oLwWTw#}<3Sd@ZSO0YOg$f{*zSmTr#~1@D;PMeVwN7kjQJl8VHdh*1{QqogySX zf|eSqO!SI6=95w&I{jtwerK>)oO8yP@z*>ZNj!d>jKBIpNXY0i`rX>j1beRTps(*f z^@(-OqiyC?xlw`(_(KSPxzxUos+k8-UDye(bz*@Et+{>25Yk|ivRq~HdOwfrc4a5W zCc)nl84OX8OlBByCf)M&m1qLegbu^v?``xOu@zwN(tQS|qGZ%-&c#u9hF^w}QANHI zy}9MZF*m}wZT0zv{*C@y(KJSA+c)nO(>%UB*Rn6CmNXIe9G7w9R@JE9i0qFi-BV4} zHH|6aJ$`y2mpV*Oenb1vWIlH5qz4M)#1y6lZ4{d@iRG8A!}p~V!ER6k&uv&H*j7=8 z5XIjtVzAFJ!JX_5BzhB3lfe7aC*F}kANZEyG@O1vtjzeYyZ9u*bY_$u2y*w%TDn@J z&=F~C(Y8U!3=;VKC*j!oWx=X}Nb@RXo+Kv-+x1*`{I6Cg*ADBvYFde{5lUB*N}T;u z20n}xIav9nW0Tb4Br*i%Jnpm-XZzwXumWWuj3W${m!X!6M_O=&jdzQB>*>6(+yKWM zDa1K&g5f-jE~Cw>>LL8DLc{rHsTe^91V`21&HhFtitg&fVz_wy&yua>Gk1s)Es_?< z$HGzsqT4yn#9tl_I7XPJ((xXP1h~yFd7GF81Ks3Qq|;xhC@OlzY}4fEnOA|*p1Au) zT(CS?dLfyFt*`^bMw8J|Cj-CXrrL3x`ay@+8`kBDgb$bNXBZDkAYg1YO*QBETU0QS zS`25xpRiMmBIv8Ir`qxoYScwbiHO~s3l*rBG}W@c##T1Ja6eyjX00^XR&4DsNgfIY zD$^d9lTIhyN;YHexA%ey5# zAD`lW;Ur8Yw8phv2PA*d?uf8XGbxs^cmEvNfKe$-?71;}*ZFb$eqfGIWG+g?=pw5b zy^hT#b#WWHyh6pbZNS6NIfL^OG3{GP=9^;#&&EC6-$@rVRWV=8mD?)qIj73S?!OTJ zi$G&9&B=&B?0c9vZ+CBMv^H9$Ad*4tm5n__U1;w~m4vGcOp;OAfU@i`I!ctPY-k#F zEg(5J;Bdk=`rN4=)@M~OZ|_q=4?+a2PbInYdc-`pR_VgCn6AOMgjdwsau8(mtO*{b zEcXHOwD1}GC`rf(PjUC~2g^CRrUS1TcOL83C7oxo3P&q7M(iJdsUV?fhM^Wy8`Amw z)X|dV$xI4E#E;VKb{y-mr4Ey~D%<78fXtCa#8r-~RFiMAx#KqK7ihPeKiJ)HW7)X!!1x`OmUIN6qb z=mDsTE(KJWB?F|1Et};dp$T}Xge@Z#2?0?maB=% zPaU0GFAy}e4Lpdd-0N(r5t|{vL@%3HS%)lxQ*)~l5b>$y(n=CkAk$o%yF)=ON7-%C z-Y$sBVK4JM*D&9@C&bw5-3v4WnbaSX)G!H641*3tS+hG>GFk$PKOyD6Z)-*F)69D4 zL&Fd>o2c@2UR~H`(&BJKCThOMESX{Ak1u0eD}L6x?xJX1RbI(##iF*|p}eBX?NKyxousU%lEk`{CZha1$2WmGyU7fH5uH zdIC6kFT(Hn@pCqhl{ls9i^g;cA`f$UH43pApZ-Tl)ZS|)!|ohr&pq*@|9l|!hbCX& z#Z5oUg{)%thGserl)BRBaHpxRE;0I!#$Lc9D%XREdu6991zl<*kob=~;WE+A3CZR7$u4Exs10N9%sE+Xp{Os% zNBYvZF=j*Yk)hfeL6J32&R@ypVCrK_qd67q%(9V*(t%Rr?jTx;JI|u}vB@=7fNW24 z)(lNK5xy7q?yqU3KH49X5f5)}dxMV!CJ8jgAWQa&^(Z?#8gF!lHG~Q3gP!sQTrkxw z=**+eR(x0Rq#D|WAUo4gcr&X~INgbv38oL6 zn9a}~N?L^!zT@Px!SxI+bnMRdDoC;w^nQI+Gf^U2`@V;!SDaaU`szh2Z)FbJWf7~H zgW7zfE5G)6+xz$ww`L6!q@t*_XPp0B*bIW-cA8u0C^-Y+eL@uG5?4b_SeC^h9YwBa zW>{rz*bQR$;SpCBK`12U4e{Bj zcBhCxKI@D6Uf3Pq%erK~L&ZWSlD0-^WjpZZ!k>?bqrZh(6O}0>yA7J7^kv0jjkt_e zJmob?8&WV{M0_;o$~9lYCC0OAPtu) zmqo)%fIS02!mNTfDZ&gm+{NQS^q<X9oGpfCp@qfb6 z_2irozx70remcjlEWUy7ECR7+Jep$mGXm%~mQ)BPa4|gx{FH_@ao{y^+j`MUpnCX( z@wTMeZ(j7bRW!Y*jE85)q|9(h(s^NzW$7g5^D0}^l52^`!zK49H(99E&&ZvH!fvsQ z+&+_{UGMEghwSWzOb0q5*b}b@S^P<(A{ve((BWEUuWxz)QSuF`rIC`JKD!u`m@z*@ zY@4_dGjJ@ktSsGA`-z_)_dcHm9lbhum5crIgBt5@5skc8pU&jn<$ojj=r6ADkU!w$2&5EbuQtf$ST*F-om{uJL% z)5HiXAz9?5EkfWiT6D50B@*0g^`!>d`tT{dL~ef$4ecsM=N|+CE2 zEAN>%jW-+WLc%|}e;?pnD@Rh<^^pq&ptYZ~&cJE~5n;2y6`P1jk&KdLG6-?$c5$|N zZy$e55cuxSVr&!uFzZV&=hj*>TafyX2&s$!vzst4Y#90XjbCT0qB#^? z+?21)jocZwRqClzCke_UJ{k^nxkt1Ql~+u=i!xRAv+3&#nRonCds{V6Fv)5 z7av1DGr|`v+mzfLv~!r2MzK*ujLRnmyCVobyX>kpjD0lhUpW!+Tk^X9E2Jh{*~}@f zZ*)Cs0VyPG`DSXq5|6yzNQF)&q58XMtz^~8RrH^3+ybKU{4_`l@trF`D11pERmN0G z!MPa)dCDjDx z*@_#UN|5Ak)1KbGf{{IM(ga)SZ4LP7sZd-u4XNq(*!N!w5(ids z_4LbwVX)5ha{{@tCC%ze*zH2BTn8#7=390u{AS~k{k~8|v8aGPoHa=;W@eJ<5ek#(i5n2#3Tv6GunT-ENK`JrLnLM4fgI+S88 z05mbu>+fpeg9#+uUWMHvpTFiZSG|~WLM85&#OU_D{DhC?m;MPGd=M%r ztiYjAfE32f18t4zihv|gjqZt$cn>y~RGE*Ch zRqi`tTs&;addeXMOB_aJbzYHJMJ!lKi$a=M$cV!c*G=`gjyuckSr(p?OE5+_6$pyJ z7r?ssxY{DZeSL`(vpmiw9Z~Zh|14&l0m}`_+M+;xSO}p))*gLBw@uX!PD5~^l%!U2?d%t_l$2ZxFCuCsF`+Y{w_0y>V& zt+f}C@Uh>bq9Ixw4wyprDb?rd!GR50CWM~MW5g$eur%|?bu4BsW|YN`rY6nhk2&&E zzAW0Y^k5Wl+BR)PjIj6pmzBKuX~7VMX;3wMl9bOxqweKSQ_zzy+BM6}p(yVSB^HF@ zUrZVi#g3cYC9SBeng4Bisc>A?)Ii)JhspjYm?B%Asi z5k?Df82~d<&$3;;Dqe}*6s!;qX{5)#8`Fl~l`1*rA(d%I6Wc(G0Z8#2KqI1hsHGXx z=3i0Wu9DD;wv2(Yk%^`;GYCy>72D9`)GGPuY6v&gAOStx3bO_!v#0~aD4#KXiwynu z`4@_x)=-DS1lXGC=W`QN@CpqSx(*Rr_$^1^02bc&g+(ordDdT#@Nm4=Agkn`@L2)( zkNLc&J$okV(~o@t^0kglx5vOnh$bMLUR-m=0#iEbWd2al_2B|6WzIL0rp}7kC$EA| zS85eHnJ8bhTbCh{{>J+@@>vKMN+6RJ7EaT6HL{se5TEFQ^7dadvWg30VzS#*C7M=g zg4>!9d)U!q*eudW+-4HB;dn%#D$9htL<$|Q`46JXSeTUZPZKpu9efV{*eZ4YmosVL zu)0Bmm_Bh2&tMYGGYkjLJ*;Cz${ZWdh;#x5~^r*Tx{NT10Id zrcvn|5*qHi2{5iA_;n?gIsPn6^kE}L!n*N5!uvH<3h0zMkXNznar+teokDp$6se$)M+ z)vmElf_!8W`V2~N-0Atjh4QKSHEkw3S|iF92&11-qE*Tej?u}Bl93}I&>f~*7U}gM zA{!Lr-}C(tMg(`Yv+e)Nne*31_!NHm$-o%nXKQVES=B%GjIr6kN8qJo(={3a8#{m! zR~#>)b-1315{w-aB2xg$(ufrROHBH)d{-y+y!-?*nXAl%uq8aKJi-dYih5R*9)G75 zSYX2HP7msk+DxC6t$M~6T5(~ZE^S35DHzn`^D?n{J4!|A*Su^|H#ACXix_}-QxlXS zFj8$`9m3R9BD*`oO3Qb=8k$S?OkfP0VmeZQaH9;A0yR8nA84H@P(8ovSOFLSw88vQ z?FhJVO#?q@|5i0foN24{v~)(A~0n`&S^EfQ}Wo^gXdL z)6#q|gNWLP)(c)2dxOB73)cuv^0@vMddj zM#>d^*uF2IrubHR(z3FrLo6TgD%(y_SGZwbbVLLXE_-s_jFloDN9vBi;C)_6{7~+m zm!r1lb;E5E3ok)Bb1)x`6iwN9RA-o6*Zh-2)KQ-=MT4KH>d-!&yg1KeDMeUb*&*4N zvs2U$PTeA-8e3`(%!Q7{^?vhpZ2e^MBMGg^)h=`G91_l2+}#KM=?Z!zlZZDO>HGx# z$`hh{*$2i#q@2=O?@b=jnQq;WmWg(KS^ncXhK;S51EKI`IjPIOdwt_RDTW89nkAUR zS+DrCy5SzDi;vSmCMo2UhwyTaILYr2!Cr*&`MfyqJla!sMbVZX+N5`jgA#{P!g*8} z(u9^lP_jp3Cpe&F+iH=W5dR(Xm*qqCLqk7*vj${PfAO$Z;g-i_T&CVUX^V(law%~mFo~BtB7UUg`VJL{H%n=T-(I*u;(_u6Y!WA^&(QR^)XJE}G zxQ?YqkkE0EnM)_#0G!L!F88&_M`AJWsHuiXm$c618(!N)>4{!35DYzEC}+gFOuB`` zY3MuUrD(E2A_fhHlb@$jF0#sOd%pDlW7D7@n8FQ&By;gt2v%hph- zuw;8qn2Qilu8Qa_;3-DzOk@5o^Vg{a&`smRn)|mTXXl7q1m8YiAC&QD2oRu@X1#X@ zfgX&52)LC)q3y|X79vmOY4#HBmrI34;S@9u-i(2iMC(PY@ad5AcBfIRM&|{&6TN=x z?U5iX?pKN~ni3a?q708sD#t|f79leq=ztBJMmt;inED*6%teYp?e<9r;RII@K|QDT zG1!;?m@M248OaIAmg22)bepyndam8>?h0~0-X76#?} z6QEao#p1@jpfTx9cTLx%WF97}8Rs3hhP8DRY|l*>154JyeO6F z@R7|1Joa_ZzoN9POqT!v7ylc?W>EG=Xuezd(}N@)YupQ~11-E7Ff}b~EK1Khc4=>W zjwTD+LsOA({t*eU^_$fZRT;_z=J!7Lud`?ckV3vBCxgq*A5&8d19G@R;g%#Ty{1HP zn0?X;?OCgmZCDH@%qE$xr44(ahmPVxKM3$yrsCVPw*-}l>AjT}Gy=+QLdRtJ+}&9^ z3y^ZCxY2~YU%{>?Uer-`feVM0j0WrO*UL^(kf zzZCkBpzN(a@c}S=t7;psP=_Scla%|7(^2A}VX62lzWGrJo_g;Is6+g~6f?q7xOfEs zyc>S-=c>v>+wRqAPaOz5*a(0GR3K*_+m~+;1P1)aD0p6@Sx|q40^z}`)*eBG0K~r@ zLzjfG9qRPMm03mS4I#Xa{gA{WfM9_h{WEcRn8hjdR8rJV0fLbfY1`_}%?7{z<|7Oi zZTSwfWN(@8E!Y+hiC=CxyEG5GJmhW)btP%9QTOgQ8m)j0o5m$dWokEA3 zoUu7lpy$H8EoTWSux-2KbJp4rT0h=SQQx*KNaCVxcB>y0fH?gc*hLThVi|PpL3X35 z7cAC@w05GyeyyNSLOC@L0O1jDYI^TKy06?!L7-AmGIH$9Za%$S_s zdf*tLs)QmpO+9WEuXWNGijyc{U%nR$PQ#@9MHiJDtI-a%ib;(ZrO70C2#5A*Vg18f zQ;F=9W^<(`{*w|06|c8er1Rv`nCj;gi8mJpUeiR4_tnW-*+uF^t6&3+c#M-y4SCo; zREohrT^(zHKtl`wHk!@(5Jj@OVTF=di;o^GRWO@voSb8om>>d~)(`U+KZ2aDTn5PW zQo8}s|C~xAr*0RBTyY$J7Swi+BR;N*O>4sRDu z`8A68`RbOI>cO~Tg7U@mAc^8lW06eQSafWnTq&)z8A)+-(%2Xd_X-y#hMGONyj^v2vq?^cGWNBN~46F)(94<^kD2V9MDEV@AGZqcUZTt|H zRAYgCk2(J4EWrH0wZ;H!P4bge0f9$%MZ)%kOj%S&k98S}HRRqstV(iJt))zo{!Hen zr5aa=1}@TKx5V0^L*q;&LuTJp`B;S9TxHlod!Bk67eqolCi(IPkCZ(Gzd({mvg2;m~|`>9yx z*;wjlsIQ1@sO4s-m!Axtus4(;K+T*0qQ$m z#4h@y5R^!3GDe3ZLGZ{5l(~ol_c77@!?*sEf=hP7d!D=VF#|UXimtW}q1!hU%s4e{h$i$E3l0*6aLL1cvxwgk9sSdRZV*Y8!9!gawogi)_DcN z#4e7TUmVyv+NE&9HW*RH7cO4tab33(w$0+x`NjYM0jt_%*_aMeK$d1sI+xA_xOfYN zPB+3P6VuN4Vfn%qz0uJ%pfolO6_@sE)S;>7@wIv44zG%F&avPEy5l&4-$vWS`z+Ed zkEivX|HfZI!cYy{RG6!};7jKBKa`9Fy)eHSs$l*{SGRX08D;}g&BbG$DdkE%+Z@P< zb{cLD|DqIl5hE@ZKe=p&66QYVnVrigx012j zOr37Y%>SQo;ltT@WTb_FpY1NH>4kOa+l?eZSy|t;OqbWq5GPw+MyEzDw|%UcyY2_1 zHBQ=UweiLOX&@l>zc@F< zm|UBr-VGTOi~KlokKv;I3N=1ts2<3S^Odq-*{>t5D+Z>c`N;p3eD}cl3cGuGxy@v+ zmt?tN_b>(TMj_;c)LFcv8QCZ1-yjB-?w9p5%hL4`{uWDT9+*7Ol#ZQ!feO{1`SNRb z+RlB`$#S_D-1UZ+f1#t|VAB=~C!BoJ3g!6U`{?$+f0=(D>f=kw#S9}M zc!ZIW4p`ds-2NH)xM-D|-ECgt#>CIv`PC*}mt5OX0{M zdrjtTyr%w+YZ9qR-A{r^EJM?d92Cj3P~p>fQ}EUSFV?LZZ_lkGMj! z4XG3laE1!RQ2=%ea)QkNr3`gO;}x9PS+qDF^AheJkHgXO8m4Nh3f8y*8XI50@B?*f z`@iK~>pQJzLMlC$6mEnTRUef)v4cTZU!G-D7@}!q_Vs5SqC9pwr+EXIXtgxu3L1TN~9W=&P*o8irw zAM4~Hra+MUx*PlW?uxyJWNAQE)wdti53KK%$l{xpw_#)qh?g85N~lQ_lcOSh7#DUV zfRUx7LpF`bV6MSBzx*|bpaNZuz$4j;o6@z119nM2j8gjkOsHq_bp^X6>mA$%rhDi- zmViC*XLIC#N^)PfgIW!)18?2J#AnaMK`)qb=bG2R{WFwSTQ)#%g>5l?wq1~!zq$4wrX5M;`wyX5~km~UU4 zYv%OozQ-YgH$`FA4A!lu!wFa7D(y!z546j#MLV;b_sI94P`Qd(TG!ICI2I28iQ#t7 zS?m9{tu^^uoI3q4P<*o*h9tV~2^WCS4yD1US9-rvk&4MfgkBMaBKjH!P;~y1202<9 zOk8ARU6&=$G5Nz70r#M>_5gG27})1=4*T|FlXUwS{8^G>_IPDuI|IQ;lj1|bjL%)+bQnDZFye=oUD5&qJT zE2$uVYI9VztdiL@rLRg}NG}`xwL!0`S}=W4KZrl0Q6D>EiWV{htic=+(l~=@{EX&* z>zGTPzyk*zAS5gRACP|hqS`stX`^s_7yl86rVT&Qi-HE^eiCFu@f(P`ylnW#T2oYh zJoRw4;{!gCB?}hHFy1Fek4@*}MJH%Jkg1-bnFRyNRMBqVOewfy3LF zt-j?5GsdC-l@D9@H`8utp4K^H zCpbOHt$AX{H8~eeC!;g};!mwK!}lF}qpsQK452%I=+#5w3=SVtmOf`So!+gKP>{`G-jV8)v+AtmDLwb^-oa42ZVte5X%b1Wu1u*eFr-^#hLecPs^t)A{uQ7f z;3QF({*X2J+y?e63Za`g{t3Ae3|nd9I?Si92P|sd3bm>D#xTGK3*v+#s>?4Zp&zjgEHHv+fx>`6)Uuo#=x^6?m zKB2SFSyHnqY?F7rKAA%O`48hm_>$w$&{kIf_TX+PQ{rASl$Hjw*4h6HjY8{(S-P5^ zQ2py6-P|YI;|7+KwRO=15aSqT6Gz-+ucYImU~~1Y+??Gd_^r)|PodP6LaqIB!3P}= z8KdGvJ+nLo|8uuhxR0vdMBQTN>OB)D1VdQE2#1QuN?=Ld=yNlMXD<#+5IUgG8N#|d z*04C-0uSwkn~q3-6ILHh_tHKKUVn1)Or0)B4wjg;Z-q9Cg7R7JF@=QGpl9CLZI@9Em37;Rj7U!I>f(GPxd&w$eSoE&}tj+%LVp+m3@| zQ;sF4U;jZBZ_PJg)=%7ysecFC9Ne*$RfAwgNdb=ONk)Rv0Wi+cSmzL$PiaWK1u2!3 z%Bq!RQOnjtmOwg?h}4)eKf(6zHWd!~c!jRMLugiTeF z>X``AtfgI6ys27Oe`C20qESiqj?jBm3ll4~h-7LYV)Sk^M_m;!k4J=>v9OKvrW zkJ9g4&@!lTWqem`-yZZ4sr-*zhoN>HmIPz#(#Z1#gKegKC7#C9Qw)6MMeaZhiz*IL z>s$w(h|B7?jk{j}hQ zHhe}00LcQ6BbATZlM5t2qoZWLff@3<0vL^*lmx;?<14iGa%kFjiVrL{~79Z7fa7+ ztPUOsYtjL@J5X4p((vfc>r5Sc9%Hi|R~pvb34Qy%e;*d4&^)yo7m-pr4Z$8Rc006f51CjH^~LPD7L5GoE=kYEetz6$-rT2l6yUropQf_dn&i=;PZADM!}s8jP=z+UNz zfy)(?@E--dfHG6k9|N_*W(uKwA}k?>(YkraR*k!cG@@W(Y^qzZiY;+=$>%R)(VVsF zisdcfQUUpdC;+>b9)|%D?!-d|L|yf zS?HPlR(@gmj54OpJPQt~1QP7CzbbWcX`C*ZmIV0#0000006+%8g~|_o0#z3tVl?ez zjYk{}s;0z^yhJ4~|K>yicu@&MOYn5Ud6er1&4u^i>F@s?h94#JYo7N{O>ZIj3zqV6OlGCVfq=a0?tT zvJ?VpyJ0lCwH%*{{p6kzM)c%Zff>HI+jhpJFtosvw~LGY2Lj%_Rt1HhM2&;OsZNB1 zwX>(qEBuT(ye8X>Y~KJ^_aa>GmuPu)2u2ilmKmtv*{z4^%4$Q_Rtd153E%wInj>@c z7f`mw3LRq8?bL1WwEY9AHSBZm4=;(G4C%XmRKI?ASR0Y0`7BfB*mhAWH22+&}^Bd4>00 z>6+OfnTrG@_<4IX)>Ojlka!30Oc!`XJL?BH$!<>Nq>$$4zk$UlfA002RK5dkO%V-` zTFzG2O{((iIYw$hzx84QQpxLXRNx92(IS3F6BZ8dIn#^H7EEWu*V!GSkiHS#U+8N< z8vpO;ukM M%C^AoBPJjK0DH_2LjV8( literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-mdpi/onboarding_import_passwords_background.webp b/app/src/main/res/drawable-mdpi/onboarding_import_passwords_background.webp new file mode 100644 index 0000000000000000000000000000000000000000..428e8968be146b370e3cd46afb6cc55fdeffbe8d GIT binary patch literal 14820 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 Ue>jdSpIaYbZQA{m`5*oLFR2$W;s5{u literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-night-hdpi/onboarding_import_passwords_background.webp b/app/src/main/res/drawable-night-hdpi/onboarding_import_passwords_background.webp new file mode 100644 index 0000000000000000000000000000000000000000..9242e03b2f12546ac84cdadd71824baf5041c35a GIT binary patch literal 23412 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 MZvqsY|IPsa51Y=qvH$=8 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-night-xhdpi/onboarding_import_passwords_background.webp b/app/src/main/res/drawable-night-xhdpi/onboarding_import_passwords_background.webp new file mode 100644 index 0000000000000000000000000000000000000000..c5f7a33a1c101e578db526c6f35ede6832996fb6 GIT binary patch literal 39378 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 VRUjcB|LZA;rvNt?*4_VJ|3AJ8`A`4= literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xhdpi/onboarding_import_passwords_background.webp b/app/src/main/res/drawable-xhdpi/onboarding_import_passwords_background.webp new file mode 100644 index 0000000000000000000000000000000000000000..1b8fea33227c01e1e60d1617a7956d100341558f GIT binary patch literal 48232 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxhdpi/onboarding_import_passwords_background.webp b/app/src/main/res/drawable-xxhdpi/onboarding_import_passwords_background.webp new file mode 100644 index 0000000000000000000000000000000000000000..f4f40a8e88b6fddd9c66d429d127d7ef9c401d7c GIT binary patch literal 71460 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 F008gyV+;TQ literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxxhdpi/onboarding_import_passwords_background.webp b/app/src/main/res/drawable-xxxhdpi/onboarding_import_passwords_background.webp new file mode 100644 index 0000000000000000000000000000000000000000..5ccc7b5f95e1b7b57f4b6471cd009c8046441dbe GIT binary patch literal 90826 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

)az1299stZn~gbrP!2iNjg=O` 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 + + + + + diff --git a/app/src/main/res/drawable/ic_passwords_import_96.xml b/app/src/main/res/drawable/ic_passwords_import_96.xml new file mode 100644 index 000000000000..7338213a13c9 --- /dev/null +++ b/app/src/main/res/drawable/ic_passwords_import_96.xml @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + diff --git a/app/src/main/res/drawable/ic_success_96.xml b/app/src/main/res/drawable/ic_success_96.xml new file mode 100644 index 000000000000..2971b62a83b5 --- /dev/null +++ b/app/src/main/res/drawable/ic_success_96.xml @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + diff --git a/app/src/main/res/layout-land/content_onboarding_welcome_page_update.xml b/app/src/main/res/layout-land/content_onboarding_welcome_page_update.xml index 7baf19e32d1b..6d48ded41be9 100644 --- a/app/src/main/res/layout-land/content_onboarding_welcome_page_update.xml +++ b/app/src/main/res/layout-land/content_onboarding_welcome_page_update.xml @@ -217,6 +217,21 @@ tools:alpha="1" tools:lottie_progress="0.5" tools:visibility="visible" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/layout/include_brand_design_import_passwords.xml b/app/src/main/res/layout/include_brand_design_import_passwords.xml new file mode 100644 index 000000000000..54f32290c043 --- /dev/null +++ b/app/src/main/res/layout/include_brand_design_import_passwords.xml @@ -0,0 +1,54 @@ + + + + + + + + + + diff --git a/app/src/main/res/layout/pre_onboarding_dax_dialog_cta_brand_design_update.xml b/app/src/main/res/layout/pre_onboarding_dax_dialog_cta_brand_design_update.xml index 93bc45d40fca..e9632c8d2a19 100644 --- a/app/src/main/res/layout/pre_onboarding_dax_dialog_cta_brand_design_update.xml +++ b/app/src/main/res/layout/pre_onboarding_dax_dialog_cta_brand_design_update.xml @@ -141,6 +141,24 @@ android:layout_marginEnd="20dp" android:visibility="gone" /> + + + + WZ$1mXH$p;HkRgGnDi=j-WyOL1L1=@cy3??Ol^xYu*-EKbm2FGPam)Jl zmbH~SbZ0?n=9xFQvA%{roHY4%IFo--_|uI~;4FZ$f=k1L8khGrN4~_TD2%?Nu>tJ= zWu9GRmG+$*0N4}-0K^Z?54{7fhav(|A*%n3|9NDc*oQi04!rNxwHns=A#7bSfV)SL zonM{3Kj8w$n=IKhkzRr9Y+il}rsKc~e^z8N{gD!zoPbF~)fe|)A+^7>f1;bk8ggee zQ#+~H1#bx~rbA+GL;8M7&z}doR$-Dg*p!o7+S4oml@j=^gYuIZ`=YI-^~vILE_VNf zOwFw4>~x^&L1Q~5amu%?eKG)>vhy{#dFE&64rxvXo7?uH^PUWL#;(qT$XfTBi^2S$ zDsOdPPjMp8h3wITYH?|Zou|u)J+C+NkSHK5ewTM>L|$>^$dI-sk7@{C+{PXv)+Ys^4Vrt!rfp zut(`AeYE^jRK_ZnSnJ@8YA%%2VbJTiDN{BRUg3~)} z-2=>W>9vh7a}Ii1a5l~)H`IHK4;3B@j*VdEjSr&8><{0am8gGUBA2V?KzCeucip8a z*S*HaEeL|dDV)RE>dZ&qQ0&L2D5Oc=@*r*_%m`VG@r#K!V8^IzE-R@D9rENc>oPVt zwr^Y7#S$LgJ5_pG3AyQ!)a#5?$@UgAo5G9|d+M&<58Q$8)YwQNgL%~@S3jLCy`=S2 zfT%Dcpa~^RI-YYYx4p&ER6WP$-xQ=RSUO({G^d^zy1@Cx-Jf>~sz^H%Au6w4*u#~r z3>SaAH@rg)s>keZR+^Iv{gczsFZRcGKYe1-yc3J;jGl9U_H%p%=Ak!1B|GFDfV>oa zNEF0?ApCxn05UD%6^Yd6j0`dTk(0DOk9-soL91(DN*yLGR<0pQ+?)I@2_w+Whz9~f zj*LQ3rfj$V8JI$+&SI}tf~dLgQHY*(2AF$vIBD=vGA3dGc$J~`<#wvvL-O@Oy|hTN zib)4%D38&rf*Q)l4ZG6WOUt~(7OQC62hU6~(AXgsDQaw5c*DXrL;>Xx5LFey@IV}= zCw{3E8qV`=lUJpi;FOi_oZuzrsDU2I>8S;19TyC^`kL02O6FV2skS$cavf>80n4|L zaYKlu1Y^mY$*~gsGo1yN z-H!m9C|c)Hb@`wxa>~CRr^*#QY*!NRRpAnTX;E9Z*17HA!6$m}Tja}?UQ!Yrp8y9J z2lw>n-9o6gEQBL{*XoVMA{NP4rYloExMrd&_6Y)F;tPpQ98dXX*d~XKGdL=OjBBsG zaj8%@%2*J5fr0z8%;QzET=J@A99~w*tBIA<9=j`5-JchylS zAGadz=8yO?i_UrrHIT~0xY)!B2z5_Tgu@Ycx7;X`_PETGU?EzZ&79%qL8aO@1R{Xr zQWf(YRmXf{xA-}t!<^o>>9ppVb=a~SA@+QzTRk>I0Lcb7>Ok)4==agHF_nr5g8D5J z{2eT(mdnP+aOwi-rPRetPxd;YYzr?Nyym*el6EtjGbv0z+UCOr3kHk#Jh3A_+*T^n zCJre_n_RQEHY+d2l)+TViq6S;eL?qzZKz(Y$#I4LvpmEXW!L#!>CUE`7(929@t8&a!%QW>A)ojILjih%j8 zvcrJ{!^a7g^F*^k@?^24q0m9Hg3u@R7g7%G)8W;jGQs|no zFLz^&3>>RQitJ9MsN({I=M#q2nUN#Hp zHF+tjq;=QkA;V1s4;108-n3RVxjZbsG_~yOOae-prN$9rp$ppW#Dj&S+*b_Hor7NO z3+5RIb&(O2I|VGWtd^E3{b?^0Iu|P?8Lniw1+-_X?5_5RY;f%zY2VY)4?dtn!O3Xz zl>xom1-cWbN=KlrS^flVz1djSXFq%EBW%Ke|4%80tnfeaFJ}2&`a5I%R~K_Q{(~96 W6NkMuC)eMnY=@a}*o%4o-u?ms<7MIi literal 0 HcmV?d00001 diff --git a/app/src/main/res/values/donottranslate.xml b/app/src/main/res/values/donottranslate.xml index 1c6926f79615..22f9f266d41f 100644 --- a/app/src/main/res/values/donottranslate.xml +++ b/app/src/main/res/values/donottranslate.xml @@ -116,4 +116,22 @@ Delete %1$d chat? Delete %1$d chats? + + + Import passwords from Google + Google may ask you to sign in or enter your password to confirm + Import From Google + Skip + Import complete + Got it! + Importing passwords + This will only take a moment. + Import finished + We couldn\'t confirm how many passwords were imported. + Passwords imported: %1$d + Skipped (duplicate or invalid): %1$d + Something went wrong + Please try again. + Try again + Cancel diff --git a/app/src/test/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingPlanProviderTest.kt b/app/src/test/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingPlanProviderTest.kt index 84751f8edbe9..7417027b85f7 100644 --- a/app/src/test/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingPlanProviderTest.kt +++ b/app/src/test/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingPlanProviderTest.kt @@ -28,6 +28,7 @@ import com.duckduckgo.app.onboarding.CustomAiOnboardingResolver import com.duckduckgo.app.onboarding.CustomAiOnboardingStore import com.duckduckgo.app.onboarding.DuckAiOnboardingAvailability import com.duckduckgo.app.onboarding.DuckAiOnboardingDemo +import com.duckduckgo.app.onboarding.OnboardingPasswordImportExperimentManager import com.duckduckgo.app.onboarding.OnboardingPreference import com.duckduckgo.app.onboarding.OnboardingPreferenceApplier import com.duckduckgo.app.onboarding.OnboardingPromptsExperimentManager @@ -111,6 +112,10 @@ class NewUserOnboardingPlanProviderTest { private val segmentedOnboardingExperiment: SegmentedOnboardingExperimentManager = mock() private val onboardingPreferenceApplier: OnboardingPreferenceApplier = mock() + // Password import is off in these tests: its steps are then left out of the plan entirely, so every + // existing step-order and indicator expectation below is unaffected by the feature. + private val passwordImportExperiment: OnboardingPasswordImportExperimentManager = mock() + private lateinit var provider: NewUserOnboardingPlanProvider private val orchestrator = LinearOnboardingOrchestratorImpl() @@ -131,6 +136,7 @@ class NewUserOnboardingPlanProviderTest { whenever(homeScreenPromptsExperiment.enroll()) .thenReturn(OnboardingPromptsExperimentManager.OnboardingPromptExperimentVariant.CONTROL) whenever(segmentedOnboardingExperiment.enroll()).thenReturn(null) + whenever(passwordImportExperiment.enroll()).thenReturn(null) } provider = NewUserOnboardingPlanProvider( syncAutoRestore = syncAutoRestore, @@ -153,6 +159,7 @@ class NewUserOnboardingPlanProviderTest { duckAiOnboardingDemo = duckAiOnboardingDemo, onboardingPromptsExperimentManager = homeScreenPromptsExperiment, segmentedOnboardingExperimentManager = segmentedOnboardingExperiment, + onboardingPasswordImportExperimentManager = passwordImportExperiment, onboardingPreferenceApplier = onboardingPreferenceApplier, ) } @@ -1263,7 +1270,7 @@ class NewUserOnboardingPlanProviderTest { ): Int { whenever(homeScreenPromptsExperiment.enroll()).thenReturn(onboardingPromptExperimentVariant) return provider.buildRootPlan(onCompleted = {}, onSkipped = {}).steps - .count { (it as? NewUserOnboardingActivityStep)?.showsStepIndicator == true } + .count { (it as? NewUserOnboardingActivityStep)?.indicator == StepIndicatorMode.COUNTED } } @Test diff --git a/app/src/test/java/com/duckduckgo/app/onboarding/ui/page/BrandDesignUpdatePageViewModelTest.kt b/app/src/test/java/com/duckduckgo/app/onboarding/ui/page/BrandDesignUpdatePageViewModelTest.kt index d00c85f2e60d..c99acd8efeaa 100644 --- a/app/src/test/java/com/duckduckgo/app/onboarding/ui/page/BrandDesignUpdatePageViewModelTest.kt +++ b/app/src/test/java/com/duckduckgo/app/onboarding/ui/page/BrandDesignUpdatePageViewModelTest.kt @@ -36,6 +36,7 @@ import com.duckduckgo.app.onboarding.orchestrator.NewUserOnboardingPlanBootstrap import com.duckduckgo.app.onboarding.orchestrator.NewUserOnboardingPlanProvider import com.duckduckgo.app.onboarding.orchestrator.NewUserOnboardingResult import com.duckduckgo.app.onboarding.orchestrator.NewUserOnboardingStepIds +import com.duckduckgo.app.onboarding.orchestrator.StepIndicatorMode import com.duckduckgo.app.onboarding.orchestrator.StepProgress import com.duckduckgo.app.onboarding.store.OnboardingStore import com.duckduckgo.app.onboarding.ui.page.BrandDesignUpdatePageViewModel.Command @@ -709,14 +710,14 @@ class BrandDesignUpdatePageViewModelTest { NewUserOnboardingActivityStep( id = "ai_comparison_chart", pixelName = null, - showsStepIndicator = true, + indicator = StepIndicatorMode.COUNTED, transition = { LinearOnboardingTransition.Advance }, resolveDialog = { NewUserOnboardingActivityDialog.AiComparisonChart }, ), NewUserOnboardingActivityStep( id = "input_screen_preview", pixelName = null, - showsStepIndicator = true, + indicator = StepIndicatorMode.COUNTED, transition = recordAndStay, resolveDialog = { NewUserOnboardingActivityDialog.InputScreenPreview( @@ -961,7 +962,7 @@ class BrandDesignUpdatePageViewModelTest { NewUserOnboardingActivityStep( id = NewUserOnboardingStepIds.ADD_TO_DOCK, pixelName = null, - showsStepIndicator = true, + indicator = StepIndicatorMode.COUNTED, transition = { LinearOnboardingTransition.Stay }, resolveDialog = { NewUserOnboardingActivityDialog.AddToDock }, ) @@ -970,7 +971,7 @@ class BrandDesignUpdatePageViewModelTest { NewUserOnboardingActivityStep( id = NewUserOnboardingStepIds.WIDGET_PROMPT, pixelName = null, - showsStepIndicator = true, + indicator = StepIndicatorMode.COUNTED, transition = { LinearOnboardingTransition.Stay }, resolveDialog = { NewUserOnboardingActivityDialog.WidgetPrompt }, ) diff --git a/app/src/test/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolverTest.kt b/app/src/test/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolverTest.kt index 879f55e12cba..afabedcbb800 100644 --- a/app/src/test/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolverTest.kt +++ b/app/src/test/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolverTest.kt @@ -458,4 +458,20 @@ class DialogConfigResolverTest { config.primaryCta, ) } + + @Test + fun `resolves the import passwords dialog with a right wing and a mirrored arrow`() { + val config = testee.resolve(NewUserOnboardingActivityDialog.ImportPasswords, isCustomAiFlow = false)!! + + assertEquals(Embellishment.RightWing, config.embellishment) + assertEquals(CardArrowConfig.AtStartMirrored, config.cardArrow) + } + + @Test + fun `resolves the import complete dialog with a right wing and a mirrored arrow`() { + val config = testee.resolve(NewUserOnboardingActivityDialog.ImportComplete, isCustomAiFlow = false)!! + + assertEquals(Embellishment.RightWing, config.embellishment) + assertEquals(CardArrowConfig.AtStartMirrored, config.cardArrow) + } } diff --git a/app/src/test/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/EmbellishmentPlacementTest.kt b/app/src/test/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/EmbellishmentPlacementTest.kt index 6089e611d4a4..c4e9b3c1daa7 100644 --- a/app/src/test/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/EmbellishmentPlacementTest.kt +++ b/app/src/test/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/EmbellishmentPlacementTest.kt @@ -53,6 +53,15 @@ class EmbellishmentPlacementTest { assertTrue(placement.drawsArtwork) } + @Test + fun `the right wing reserves room on tablet only`() { + val placement = EmbellishmentPlacement.of(Embellishment.RightWing) + + assertFalse(placement.anchorsCardOnPhone) + assertEquals(0.5f, placement.biasTablet) + assertTrue(placement.drawsArtwork) + } + @Test fun `the bobbing dax reserves room on tablet only`() { val placement = EmbellishmentPlacement.of(Embellishment.BobbingDax) From 5834faef8871d0815410828aade71736f0d8a76a Mon Sep 17 00:00:00 2001 From: catalinradoiu Date: Thu, 27 Aug 2026 15:35:03 +0300 Subject: [PATCH 02/10] Update animations, add error state and cleanup comments --- .../orchestrator/NewUserOnboardingEvent.kt | 8 --- .../ui/page/configdriven/ContentConfig.kt | 3 +- .../page/configdriven/DialogConfigResolver.kt | 2 +- .../binders/ImportCompleteBinder.kt | 71 +++++++++++++++---- .../engine/CardArrowController.kt | 2 - .../background_onboarding_import_result.xml | 21 ++++++ .../drawable/ic_cross_onboarding_error_24.xml | 29 ++++++++ .../res/drawable/ic_passwords_alert_96.xml | 57 +++++++++++++++ .../include_brand_design_import_complete.xml | 51 +++++++++---- app/src/main/res/values/donottranslate.xml | 4 +- 10 files changed, 204 insertions(+), 44 deletions(-) create mode 100644 app/src/main/res/drawable/background_onboarding_import_result.xml create mode 100644 app/src/main/res/drawable/ic_cross_onboarding_error_24.xml create mode 100644 app/src/main/res/drawable/ic_passwords_alert_96.xml diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingEvent.kt b/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingEvent.kt index d9a294ef3227..f88027eddfe2 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingEvent.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingEvent.kt @@ -61,16 +61,8 @@ sealed interface NewUserOnboardingEvent : LinearOnboardingEvent { data object PasswordImportSkipped : NewUserOnboardingEvent - /** - * The import web flow returned. [PasswordImportOutcome.SUCCESS] only means the credentials are being - * written; the counts arrive later as [PasswordImportParsed]. - */ data class PasswordImportWebFlowFinished(val outcome: PasswordImportOutcome) : NewUserOnboardingEvent - /** - * Parsing of a successfully returned import finished. Raised on the outcome card, which is already on - * screen showing its parsing state, so it reports the result rather than moving the user anywhere. - */ data class PasswordImportParsed(val outcome: PasswordImportOutcome) : NewUserOnboardingEvent } diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ContentConfig.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ContentConfig.kt index c5bac30d2e5e..645887410f94 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ContentConfig.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ContentConfig.kt @@ -123,13 +123,12 @@ sealed interface ContentConfig { val body: TextConfig, ) : ContentConfig - /** One title/body pair per [ImportCompleteContentState]; [title] is the finished one. */ data class ImportComplete( override val title: TextConfig, val parsingTitle: TextConfig, val parsingBody: TextConfig, val failedTitle: TextConfig, - val failedBody: TextConfig, + val failedRow: TextConfig, ) : ContentConfig, Stateful { override fun initialState(): ImportCompleteContentState = ImportCompleteContentState.Parsing } diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolver.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolver.kt index ba09c62c4bca..956c34735c60 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolver.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolver.kt @@ -231,7 +231,7 @@ class DialogConfigResolver @Inject constructor( parsingTitle = TextConfig.Resource(R.string.preOnboardingImportCompleteParsingTitle), parsingBody = TextConfig.Resource(R.string.preOnboardingImportCompleteParsingBody), failedTitle = TextConfig.Resource(R.string.preOnboardingImportCompleteFailedTitle), - failedBody = TextConfig.Resource(R.string.preOnboardingImportCompleteFailedBody), + failedRow = TextConfig.Resource(R.string.preOnboardingImportCompleteFailed), ), primaryCta = CtaConfig( text = TextConfig.Resource(R.string.preOnboardingImportCompleteCta), diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt index 52b8e36af4f8..f5379ffb7d91 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt @@ -16,6 +16,10 @@ package com.duckduckgo.app.onboarding.ui.page.configdriven.binders +import android.animation.Animator +import android.animation.AnimatorListenerAdapter +import android.animation.AnimatorSet +import android.animation.ObjectAnimator import android.content.Context import android.view.View import androidx.core.view.isVisible @@ -44,11 +48,12 @@ class ImportCompleteBinder( ): ContentHandle = with(binding) { val context = root.context - var rendered = state.value + var rendered: ImportCompleteContentState = state.value importCompleteTitle.setTitle(titleOf(rendered, content).resolve(context)) apply(rendered, content, context) var stateJob: Job? = null + var transition: Animator? = null ContentHandle( title = importCompleteTitle, @@ -57,16 +62,52 @@ class ImportCompleteBinder( stateJob = state.onEach { current -> if (current == rendered) return@onEach rendered = current - importCompleteTitle.setTitle(titleOf(current, content).resolve(context)) - importCompleteTitle.snapTitle() - scope.animateCardBounds(STATE_CHANGE_DURATION_MS) - apply(current, content, context) + transition?.cancel() + val leaving = fadeTargets() + transition = fade(leaving, to = 0f) { + importCompleteTitle.setTitle(titleOf(current, content).resolve(context)) + importCompleteTitle.snapTitle() - fadeTargets().forEach { it.alpha = 1f } + scope.animateCardBounds(STATE_CHANGE_DURATION_MS) + apply(current, content, context) + + val arriving = fadeTargets() + arriving.forEach { it.alpha = 0f } + + leaving.filterNot { it in arriving }.forEach { it.alpha = 1f } + + transition = fade(arriving, to = 1f).also { it.start() } + }.also { it.start() } }.launchIn(scope.coroutineScope) }, - unbind = { stateJob?.cancel() }, + unbind = { + stateJob?.cancel() + transition?.cancel() + }, + ) + } + + private fun fade( + views: List, + to: Float, + onFaded: () -> Unit = {}, + ): Animator = AnimatorSet().apply { + duration = STATE_FADE_DURATION_MS + playTogether(views.map { view -> ObjectAnimator.ofFloat(view, View.ALPHA, to) }) + addListener( + object : AnimatorListenerAdapter() { + private var cancelled = false + + override fun onAnimationCancel(animation: Animator) { + cancelled = true + } + + override fun onAnimationEnd(animation: Animator) { + views.forEach { it.alpha = to } + if (!cancelled) onFaded() + } + }, ) } @@ -79,11 +120,13 @@ class ImportCompleteBinder( importCompletePictogram.setImageResource(pictogramOf(state)) importCompleteImportedRow.isVisible = state is ImportCompleteContentState.Finished importCompleteSkippedRow.isVisible = state is ImportCompleteContentState.Finished && state.skipped > 0 - importCompleteBody.isVisible = state !is ImportCompleteContentState.Finished + importCompleteFailedRow.isVisible = state is ImportCompleteContentState.Failed + importCompleteResultContainer.isVisible = state !is ImportCompleteContentState.Parsing + importCompleteBody.isVisible = state is ImportCompleteContentState.Parsing when (state) { ImportCompleteContentState.Parsing -> importCompleteBody.text = content.parsingBody.resolve(context) - ImportCompleteContentState.Failed -> importCompleteBody.text = content.failedBody.resolve(context) + ImportCompleteContentState.Failed -> importCompleteFailedRow.setPrimaryText(content.failedRow.resolve(context)) is ImportCompleteContentState.Finished -> { importCompleteImportedRow.setPrimaryText( context.getString(R.string.preOnboardingImportCompleteImported, state.imported), @@ -99,9 +142,8 @@ class ImportCompleteBinder( private fun pictogramOf(state: ImportCompleteContentState) = when (state) { is ImportCompleteContentState.Finished -> R.drawable.ic_success_96 - ImportCompleteContentState.Parsing, - ImportCompleteContentState.Failed, - -> R.drawable.ic_passwords_import_96 + ImportCompleteContentState.Failed -> R.drawable.ic_passwords_alert_96 + ImportCompleteContentState.Parsing -> R.drawable.ic_passwords_import_96 } private fun titleOf( @@ -118,12 +160,13 @@ class ImportCompleteBinder( add(importCompletePictogram) if (importCompleteBody.isVisible) add(importCompleteBody) if (importCompleteShimmer.isVisible) add(importCompleteShimmer) - if (importCompleteImportedRow.isVisible) add(importCompleteImportedRow) - if (importCompleteSkippedRow.isVisible) add(importCompleteSkippedRow) + if (importCompleteResultContainer.isVisible) add(importCompleteResultContainer) } } private companion object { const val STATE_CHANGE_DURATION_MS = 300L + + const val STATE_FADE_DURATION_MS = 150L } } diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/CardArrowController.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/CardArrowController.kt index c804355bea84..737f888175cf 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/CardArrowController.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/CardArrowController.kt @@ -52,8 +52,6 @@ class CardArrowControllerImpl( cardView.setArrowMirrored(next.mirrored) val target = if (next.atEnd) 1f else 0f - // Only a change of end actually travels; a mirror-only change would otherwise animate from and to the - // same position. val moves = previous != null && previous.atEnd != next.atEnd && previous != CardArrowConfig.Hidden && next != CardArrowConfig.Hidden if (animate && moves) { diff --git a/app/src/main/res/drawable/background_onboarding_import_result.xml b/app/src/main/res/drawable/background_onboarding_import_result.xml new file mode 100644 index 000000000000..c2f8807ca6de --- /dev/null +++ b/app/src/main/res/drawable/background_onboarding_import_result.xml @@ -0,0 +1,21 @@ + + + + + + diff --git a/app/src/main/res/drawable/ic_cross_onboarding_error_24.xml b/app/src/main/res/drawable/ic_cross_onboarding_error_24.xml new file mode 100644 index 000000000000..412b8f12bcf7 --- /dev/null +++ b/app/src/main/res/drawable/ic_cross_onboarding_error_24.xml @@ -0,0 +1,29 @@ + + + + + + diff --git a/app/src/main/res/drawable/ic_passwords_alert_96.xml b/app/src/main/res/drawable/ic_passwords_alert_96.xml new file mode 100644 index 000000000000..a32f42e5faad --- /dev/null +++ b/app/src/main/res/drawable/ic_passwords_alert_96.xml @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + diff --git a/app/src/main/res/layout/include_brand_design_import_complete.xml b/app/src/main/res/layout/include_brand_design_import_complete.xml index 8dace3b9f455..31f8b85b63ee 100644 --- a/app/src/main/res/layout/include_brand_design_import_complete.xml +++ b/app/src/main/res/layout/include_brand_design_import_complete.xml @@ -86,27 +86,48 @@ - + tools:visibility="visible"> - + + + + + + + diff --git a/app/src/main/res/values/donottranslate.xml b/app/src/main/res/values/donottranslate.xml index 22f9f266d41f..4940f45c56ef 100644 --- a/app/src/main/res/values/donottranslate.xml +++ b/app/src/main/res/values/donottranslate.xml @@ -126,8 +126,8 @@ Got it! Importing passwords This will only take a moment. - Import finished - We couldn\'t confirm how many passwords were imported. + Import failed + Password import failed Passwords imported: %1$d Skipped (duplicate or invalid): %1$d Something went wrong From c90a35eedf369bc373f0424dade7a4343ee4f52c Mon Sep 17 00:00:00 2001 From: catalinradoiu Date: Thu, 27 Aug 2026 15:57:11 +0300 Subject: [PATCH 03/10] Update animations --- .../onboarding/ui/page/configdriven/DialogConfigResolver.kt | 2 +- .../ui/page/configdriven/binders/ImportCompleteBinder.kt | 2 +- .../ui/page/configdriven/binders/ImportPasswordsBinder.kt | 3 ++- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolver.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolver.kt index 2059c5e20e06..ce7e9fe41221 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolver.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolver.kt @@ -262,7 +262,7 @@ class DialogConfigResolver @Inject constructor( ) NewUserOnboardingActivityDialog.ImportComplete -> DialogConfig( - background = OnboardingBackgroundStep.AddWidget, + background = OnboardingBackgroundStep.ImportPasswords, embellishment = Embellishment.RightWing, cardArrow = CardArrowConfig.AtStartMirrored, content = ContentConfig.ImportComplete( diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt index f5379ffb7d91..6381f907d0a0 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt @@ -57,6 +57,7 @@ class ImportCompleteBinder( ContentHandle( title = importCompleteTitle, + preTitleFadeTargets = listOf(importCompletePictogram), fadeTargets = fadeTargets(), onContentReady = { stateJob = state.onEach { current -> @@ -157,7 +158,6 @@ class ImportCompleteBinder( private fun fadeTargets(): List = with(binding) { buildList { - add(importCompletePictogram) if (importCompleteBody.isVisible) add(importCompleteBody) if (importCompleteShimmer.isVisible) add(importCompleteShimmer) if (importCompleteResultContainer.isVisible) add(importCompleteResultContainer) diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportPasswordsBinder.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportPasswordsBinder.kt index 0f079f713a5e..7d13db310894 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportPasswordsBinder.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportPasswordsBinder.kt @@ -37,7 +37,8 @@ class ImportPasswordsBinder( ContentHandle( title = importPasswordsTitle, - fadeTargets = listOf(importPasswordsPictogram, importPasswordsBody), + preTitleFadeTargets = listOf(importPasswordsPictogram), + fadeTargets = listOf(importPasswordsBody), ) } } From 20b09355da113ab1c24ac3b1e16019b56e1859a3 Mon Sep 17 00:00:00 2001 From: catalinradoiu Date: Thu, 27 Aug 2026 17:05:12 +0300 Subject: [PATCH 04/10] Disable primary CTA when password import is in progress and update text --- .../configdriven/binders/ImportCompleteBinder.kt | 12 ++++++++++-- app/src/main/res/values/donottranslate.xml | 2 +- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt index 6381f907d0a0..7dca683bb977 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt @@ -28,11 +28,13 @@ import com.duckduckgo.app.browser.databinding.IncludeBrandDesignImportCompleteBi import com.duckduckgo.app.onboarding.ui.page.configdriven.BindScope import com.duckduckgo.app.onboarding.ui.page.configdriven.ContentConfig import com.duckduckgo.app.onboarding.ui.page.configdriven.ContentHandle +import com.duckduckgo.app.onboarding.ui.page.configdriven.CtaState import com.duckduckgo.app.onboarding.ui.page.configdriven.ImportCompleteContentState import com.duckduckgo.app.onboarding.ui.page.configdriven.StatefulDialogBinder import kotlinx.coroutines.Job import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.launchIn +import kotlinx.coroutines.flow.map import kotlinx.coroutines.flow.onEach class ImportCompleteBinder( @@ -65,7 +67,7 @@ class ImportCompleteBinder( rendered = current transition?.cancel() - val leaving = fadeTargets() + val leaving = stateFadeTargets() transition = fade(leaving, to = 0f) { importCompleteTitle.setTitle(titleOf(current, content).resolve(context)) importCompleteTitle.snapTitle() @@ -73,7 +75,7 @@ class ImportCompleteBinder( scope.animateCardBounds(STATE_CHANGE_DURATION_MS) apply(current, content, context) - val arriving = fadeTargets() + val arriving = stateFadeTargets() arriving.forEach { it.alpha = 0f } leaving.filterNot { it in arriving }.forEach { it.alpha = 1f } @@ -82,6 +84,10 @@ class ImportCompleteBinder( }.also { it.start() } }.launchIn(scope.coroutineScope) }, + primaryCtaState = CtaState( + enabled = state.map { it !is ImportCompleteContentState.Parsing }, + defaultValue = state.value !is ImportCompleteContentState.Parsing, + ), unbind = { stateJob?.cancel() transition?.cancel() @@ -156,6 +162,8 @@ class ImportCompleteBinder( is ImportCompleteContentState.Finished -> content.title } + private fun stateFadeTargets(): List = fadeTargets() + binding.importCompletePictogram + private fun fadeTargets(): List = with(binding) { buildList { if (importCompleteBody.isVisible) add(importCompleteBody) diff --git a/app/src/main/res/values/donottranslate.xml b/app/src/main/res/values/donottranslate.xml index 6d8e64f17318..0e664ce219ff 100644 --- a/app/src/main/res/values/donottranslate.xml +++ b/app/src/main/res/values/donottranslate.xml @@ -143,7 +143,7 @@ Import From Google Skip Import complete - Got it! + Continue Importing passwords This will only take a moment. Import failed From 6564d10b993437ee7945211924655fc8c358613f Mon Sep 17 00:00:00 2001 From: catalinradoiu Date: Thu, 27 Aug 2026 17:39:22 +0300 Subject: [PATCH 05/10] Update --- .../NewUserOnboardingActivityDialog.kt | 2 -- .../NewUserOnboardingActivityStep.kt | 3 +- .../NewUserOnboardingPlanContext.kt | 4 +++ .../ui/page/configdriven/ContentConfig.kt | 5 --- .../binders/ImportCompleteBinder.kt | 31 +++++++++++-------- .../include_brand_design_import_complete.xml | 25 +++++---------- 6 files changed, 30 insertions(+), 40 deletions(-) diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingActivityDialog.kt b/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingActivityDialog.kt index a3f21a13004a..1f3030a9d80e 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingActivityDialog.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingActivityDialog.kt @@ -42,10 +42,8 @@ sealed interface NewUserOnboardingActivityDialog { data object ImportPasswords : NewUserOnboardingActivityDialog - /** Command-only: draws no card, the view model launches the Google web flow when this step is applied. */ data object ImportPasswordsLaunch : NewUserOnboardingActivityDialog - /** Outcome of a successful import. Entered while the counts are still being parsed, so it carries none. */ data object ImportComplete : NewUserOnboardingActivityDialog data class AddressBarPosition(val showSplitOption: Boolean) : NewUserOnboardingActivityDialog data object InputScreen : NewUserOnboardingActivityDialog diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingActivityStep.kt b/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingActivityStep.kt index 62a9db69e38b..869cd0a219ad 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingActivityStep.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingActivityStep.kt @@ -66,8 +66,7 @@ data class StepProgress(val current: Int, val total: Int) * reordering steps keeps the numbering correct without touching hardcoded page numbers. * * Counting up to and including the current index gives a [StepIndicatorMode.COUNTED] step its own position and - * a [StepIndicatorMode.CONTINUES_PREVIOUS] step the position of the counted step before it. A plan that opens - * with a continuing step has nothing to continue, and reports position 0. + * a [StepIndicatorMode.CONTINUES_PREVIOUS] step the position of the counted step before it. */ fun LinearOnboardingState.InProgress.stepIndicatorProgress(): StepProgress? { val step = currentStep as? NewUserOnboardingActivityStep ?: return null diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingPlanContext.kt b/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingPlanContext.kt index ae4008dadc12..4a97f6214a0c 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingPlanContext.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/orchestrator/NewUserOnboardingPlanContext.kt @@ -51,6 +51,10 @@ class NewUserOnboardingPlanContext { @Volatile var passwordImportSucceeded: Boolean = false + /** + * Set true by the [NewUserOnboardingStepIds.PASSWORD_IMPORT] step when the user taps "Skip", + * read by the [NewUserOnboardingStepIds.PASSWORD_IMPORT_LAUNCH] precondition to skip launching the passwords import flow. + */ @Volatile var skipPasswordsImport: Boolean = false diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ContentConfig.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ContentConfig.kt index 9715a55f5a81..92d2b53cb5c5 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ContentConfig.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ContentConfig.kt @@ -172,15 +172,10 @@ sealed interface ContentConfig { } } -/** - * The outcome card is entered as soon as the import web flow returns, before the imported credentials have - * been counted, so its content is state rather than config. - */ sealed interface ImportCompleteContentState { data object Parsing : ImportCompleteContentState data class Finished(val imported: Int, val skipped: Int) : ImportCompleteContentState - /** The import returned successfully but never reported counts, so there is no outcome to show. */ data object Failed : ImportCompleteContentState } diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt index 7dca683bb977..06f9c18e97ea 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt @@ -34,8 +34,8 @@ import com.duckduckgo.app.onboarding.ui.page.configdriven.StatefulDialogBinder import kotlinx.coroutines.Job import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.launchIn -import kotlinx.coroutines.flow.map import kotlinx.coroutines.flow.onEach +import com.duckduckgo.mobile.android.R as CommonR class ImportCompleteBinder( private val binding: IncludeBrandDesignImportCompleteBinding, @@ -50,10 +50,16 @@ class ImportCompleteBinder( ): ContentHandle = with(binding) { val context = root.context + importCompleteImportedRow.resultRowIcon.setImageResource(R.drawable.ic_check_onboarding_success_24) + importCompleteSkippedRow.resultRowIcon.setImageResource(CommonR.drawable.ic_cross_recolorable_gray_24) + importCompleteFailedRow.resultRowIcon.setImageResource(R.drawable.ic_cross_onboarding_error_24) + var rendered: ImportCompleteContentState = state.value importCompleteTitle.setTitle(titleOf(rendered, content).resolve(context)) apply(rendered, content, context) + val outcomeVisible = MutableStateFlow(rendered !is ImportCompleteContentState.Parsing) + var stateJob: Job? = null var transition: Animator? = null @@ -74,6 +80,7 @@ class ImportCompleteBinder( scope.animateCardBounds(STATE_CHANGE_DURATION_MS) apply(current, content, context) + outcomeVisible.value = current !is ImportCompleteContentState.Parsing val arriving = stateFadeTargets() arriving.forEach { it.alpha = 0f } @@ -85,8 +92,8 @@ class ImportCompleteBinder( }.launchIn(scope.coroutineScope) }, primaryCtaState = CtaState( - enabled = state.map { it !is ImportCompleteContentState.Parsing }, - defaultValue = state.value !is ImportCompleteContentState.Parsing, + enabled = outcomeVisible, + defaultValue = outcomeVisible.value, ), unbind = { stateJob?.cancel() @@ -125,23 +132,21 @@ class ImportCompleteBinder( ) = with(binding) { importCompleteShimmer.isVisible = state is ImportCompleteContentState.Parsing importCompletePictogram.setImageResource(pictogramOf(state)) - importCompleteImportedRow.isVisible = state is ImportCompleteContentState.Finished - importCompleteSkippedRow.isVisible = state is ImportCompleteContentState.Finished && state.skipped > 0 - importCompleteFailedRow.isVisible = state is ImportCompleteContentState.Failed + importCompleteImportedRow.root.isVisible = state is ImportCompleteContentState.Finished + importCompleteSkippedRow.root.isVisible = state is ImportCompleteContentState.Finished && state.skipped > 0 + importCompleteFailedRow.root.isVisible = state is ImportCompleteContentState.Failed importCompleteResultContainer.isVisible = state !is ImportCompleteContentState.Parsing importCompleteBody.isVisible = state is ImportCompleteContentState.Parsing when (state) { ImportCompleteContentState.Parsing -> importCompleteBody.text = content.parsingBody.resolve(context) - ImportCompleteContentState.Failed -> importCompleteFailedRow.setPrimaryText(content.failedRow.resolve(context)) + ImportCompleteContentState.Failed -> importCompleteFailedRow.resultRowText.text = content.failedRow.resolve(context) is ImportCompleteContentState.Finished -> { - importCompleteImportedRow.setPrimaryText( - context.getString(R.string.preOnboardingImportCompleteImported, state.imported), - ) + importCompleteImportedRow.resultRowText.text = + context.getString(R.string.preOnboardingImportCompleteImported, state.imported) if (state.skipped > 0) { - importCompleteSkippedRow.setPrimaryText( - context.getString(R.string.preOnboardingImportCompleteSkipped, state.skipped), - ) + importCompleteSkippedRow.resultRowText.text = + context.getString(R.string.preOnboardingImportCompleteSkipped, state.skipped) } } } diff --git a/app/src/main/res/layout/include_brand_design_import_complete.xml b/app/src/main/res/layout/include_brand_design_import_complete.xml index 31f8b85b63ee..412836a29db1 100644 --- a/app/src/main/res/layout/include_brand_design_import_complete.xml +++ b/app/src/main/res/layout/include_brand_design_import_complete.xml @@ -45,6 +45,7 @@ android:layout_height="wrap_content" android:layout_marginTop="@dimen/keyline_2" android:alpha="0" + android:fontFamily="@font/ducksansproduct_regular" android:gravity="center" android:paddingHorizontal="@dimen/keyline_3" app:textType="secondary" @@ -98,34 +99,22 @@ tools:alpha="1" tools:visibility="visible"> - - - From 3fa79b37d2d76c9225527f142d384ff82f1a0cf2 Mon Sep 17 00:00:00 2001 From: catalinradoiu Date: Thu, 27 Aug 2026 17:46:50 +0300 Subject: [PATCH 06/10] Add missing layout --- ...include_brand_design_import_result_row.xml | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 app/src/main/res/layout/include_brand_design_import_result_row.xml diff --git a/app/src/main/res/layout/include_brand_design_import_result_row.xml b/app/src/main/res/layout/include_brand_design_import_result_row.xml new file mode 100644 index 000000000000..d08110345bcd --- /dev/null +++ b/app/src/main/res/layout/include_brand_design_import_result_row.xml @@ -0,0 +1,44 @@ + + + + + + + + + From 7be7cfdbfbbccc74227c2c8a8ac87b32c30399fb Mon Sep 17 00:00:00 2001 From: catalinradoiu Date: Mon, 31 Aug 2026 14:25:03 +0300 Subject: [PATCH 07/10] Address code review feedback --- .../shape/DaxBubbleBottomEdgeTreatment.kt | 25 +++++- ...boardingBubbleBrandDesignUpdateCardView.kt | 14 +++- .../shape/DaxBubbleBottomEdgeTreatmentTest.kt | 26 +++++-- .../ui/page/OnboardingBackgroundAnimator.kt | 2 +- .../ConfigDrivenWelcomePageFragment.kt | 4 - .../binders/ImportCompleteBinder.kt | 72 ++++++++++-------- .../engine/CardArrowController.kt | 47 +++++++----- ...bp => onboarding_island_with_horizon.webp} | Bin ...bp => onboarding_island_with_horizon.webp} | Bin ...bp => onboarding_island_with_horizon.webp} | Bin ...bp => onboarding_island_with_horizon.webp} | Bin ...bp => onboarding_island_with_horizon.webp} | Bin ...bp => onboarding_island_with_horizon.webp} | Bin ...bp => onboarding_island_with_horizon.webp} | Bin ...bp => onboarding_island_with_horizon.webp} | Bin ...bp => onboarding_island_with_horizon.webp} | Bin ...bp => onboarding_island_with_horizon.webp} | Bin 17 files changed, 124 insertions(+), 66 deletions(-) rename app/src/main/res/drawable-hdpi/{onboarding_import_passwords_background.webp => onboarding_island_with_horizon.webp} (100%) rename app/src/main/res/drawable-mdpi/{onboarding_import_passwords_background.webp => onboarding_island_with_horizon.webp} (100%) rename app/src/main/res/drawable-night-hdpi/{onboarding_import_passwords_background.webp => onboarding_island_with_horizon.webp} (100%) rename app/src/main/res/drawable-night-mdpi/{onboarding_import_passwords_background.webp => onboarding_island_with_horizon.webp} (100%) rename app/src/main/res/drawable-night-xhdpi/{onboarding_import_passwords_background.webp => onboarding_island_with_horizon.webp} (100%) rename app/src/main/res/drawable-night-xxhdpi/{onboarding_import_passwords_background.webp => onboarding_island_with_horizon.webp} (100%) rename app/src/main/res/drawable-night-xxxhdpi/{onboarding_import_passwords_background.webp => onboarding_island_with_horizon.webp} (100%) rename app/src/main/res/drawable-xhdpi/{onboarding_import_passwords_background.webp => onboarding_island_with_horizon.webp} (100%) rename app/src/main/res/drawable-xxhdpi/{onboarding_import_passwords_background.webp => onboarding_island_with_horizon.webp} (100%) rename app/src/main/res/drawable-xxxhdpi/{onboarding_import_passwords_background.webp => onboarding_island_with_horizon.webp} (100%) diff --git a/android-design-system/design-system/src/main/java/com/duckduckgo/common/ui/view/shape/DaxBubbleBottomEdgeTreatment.kt b/android-design-system/design-system/src/main/java/com/duckduckgo/common/ui/view/shape/DaxBubbleBottomEdgeTreatment.kt index e8a6b350b382..b99db613e1d2 100644 --- a/android-design-system/design-system/src/main/java/com/duckduckgo/common/ui/view/shape/DaxBubbleBottomEdgeTreatment.kt +++ b/android-design-system/design-system/src/main/java/com/duckduckgo/common/ui/view/shape/DaxBubbleBottomEdgeTreatment.kt @@ -37,8 +37,11 @@ open class DaxBubbleBottomEdgeTreatment( /** * The tail is asymmetric — it hooks towards one side — so a card whose artwork sits on the opposite side * needs the shape reflected rather than just repositioned. + * + * 0 is the default hook direction and 1 is fully reflected. Intermediate values morph between the two so + * the reflection can be animated */ - var mirrored: Boolean = false + var mirrorFraction: Float = 0f override fun getEdgePath( length: Float, @@ -52,7 +55,8 @@ open class DaxBubbleBottomEdgeTreatment( shapePath.lineTo(arrowStart, 0f) - (if (mirrored) MIRRORED_TAIL else TAIL).forEach { curve -> + TAIL.indices.forEach { index -> + val curve = tailCurveAt(index) shapePath.cubicToPoint( arrowStart + curve.control1X * scaleFactor, curve.control1Y * scaleFactor, @@ -66,6 +70,23 @@ open class DaxBubbleBottomEdgeTreatment( shapePath.lineTo(arrowStart + arrowWidth, 0f) } + private fun tailCurveAt(index: Int): Curve { + val plain = TAIL[index] + if (mirrorFraction <= 0f) return plain + val mirrored = MIRRORED_TAIL[index] + if (mirrorFraction >= 1f) return mirrored + return Curve( + control1X = lerp(plain.control1X, mirrored.control1X), + control1Y = lerp(plain.control1Y, mirrored.control1Y), + control2X = lerp(plain.control2X, mirrored.control2X), + control2Y = lerp(plain.control2Y, mirrored.control2Y), + endX = lerp(plain.endX, mirrored.endX), + endY = lerp(plain.endY, mirrored.endY), + ) + } + + private fun lerp(from: Float, to: Float): Float = from + (to - from) * mirrorFraction + /** One cubic of the tail outline, in unscaled dp relative to the tail's leading edge. */ private class Curve( val control1X: Float, diff --git a/android-design-system/design-system/src/main/java/com/duckduckgo/common/ui/view/shape/DaxOnboardingBubbleBrandDesignUpdateCardView.kt b/android-design-system/design-system/src/main/java/com/duckduckgo/common/ui/view/shape/DaxOnboardingBubbleBrandDesignUpdateCardView.kt index 922ed6962306..6d1f64780e7e 100644 --- a/android-design-system/design-system/src/main/java/com/duckduckgo/common/ui/view/shape/DaxOnboardingBubbleBrandDesignUpdateCardView.kt +++ b/android-design-system/design-system/src/main/java/com/duckduckgo/common/ui/view/shape/DaxOnboardingBubbleBrandDesignUpdateCardView.kt @@ -180,10 +180,18 @@ constructor( * Reflects the arrow's shape horizontally, for a card whose artwork sits on the side the tail * would otherwise hook away from. Independent of where along the edge the arrow sits. */ - fun setArrowMirrored(mirrored: Boolean) { + fun setArrowMirrored(mirrored: Boolean) = setArrowMirrorFraction(if (mirrored) 1f else 0f) + + /** + * Drive the reflection as an animation. + * + * @param fraction 0 = default hook direction, 1 = fully reflected. Intermediate values morph the tail + * through a symmetric shape rather than snapping between the two. + */ + fun setArrowMirrorFraction(fraction: Float) { if (!showArrow) return - if (baseBottomEdgeTreatment.mirrored == mirrored) return - baseBottomEdgeTreatment.mirrored = mirrored + if (baseBottomEdgeTreatment.mirrorFraction == fraction) return + baseBottomEdgeTreatment.mirrorFraction = fraction shapeAppearanceModel = shapeAppearanceModel } diff --git a/android-design-system/design-system/src/test/java/com/duckduckgo/common/ui/view/shape/DaxBubbleBottomEdgeTreatmentTest.kt b/android-design-system/design-system/src/test/java/com/duckduckgo/common/ui/view/shape/DaxBubbleBottomEdgeTreatmentTest.kt index e79193ce8053..b6119ab05b30 100644 --- a/android-design-system/design-system/src/test/java/com/duckduckgo/common/ui/view/shape/DaxBubbleBottomEdgeTreatmentTest.kt +++ b/android-design-system/design-system/src/test/java/com/duckduckgo/common/ui/view/shape/DaxBubbleBottomEdgeTreatmentTest.kt @@ -18,7 +18,6 @@ package com.duckduckgo.common.ui.view.shape import com.google.android.material.shape.ShapePath import org.junit.Assert.assertEquals -import org.junit.Assert.assertFalse import org.junit.Assert.assertTrue import org.junit.Test import kotlin.math.abs @@ -99,13 +98,13 @@ class DaxBubbleBottomEdgeTreatmentTest { @Test fun `mirroring is off by default`() { val treatment = DaxBubbleBottomEdgeTreatment(heightPx = 100) - assertFalse(treatment.mirrored) + assertEquals(0f, treatment.mirrorFraction, 0.0001f) } @Test fun `mirroring reflects every tail coordinate about the centre`() { - val plain = tailOf(mirrored = false) - val mirrored = tailOf(mirrored = true) + val plain = tailOf(mirrorFraction = 0f) + val mirrored = tailOf(mirrorFraction = 1f) assertEquals(plain.size, mirrored.size) val reflected = plain.map { (x, y) -> (2 * CENTER - x) to y }.sortedBy { it.first } @@ -117,13 +116,24 @@ class DaxBubbleBottomEdgeTreatmentTest { @Test fun `mirroring moves the tail hook to the other side of the centre`() { - val plainHook = tailOf(mirrored = false).minByOrNull { it.second }!!.first - val mirroredHook = tailOf(mirrored = true).minByOrNull { it.second }!!.first + val plainHook = tailOf(mirrorFraction = 0f).minByOrNull { it.second }!!.first + val mirroredHook = tailOf(mirrorFraction = 1f).minByOrNull { it.second }!!.first assertTrue("Expected the plain hook past the centre, got $plainHook", plainHook > CENTER) assertTrue("Expected the mirrored hook before the centre, got $mirroredHook", mirroredHook < CENTER) } + @Test + fun `a half mirror fraction produces a tail that is symmetric about the centre`() { + val halfway = tailOf(mirrorFraction = 0.5f) + + val reflected = halfway.map { (x, y) -> (2 * CENTER - x) to y }.sortedBy { it.first } + halfway.sortedBy { it.first }.zip(reflected).forEach { (actual, expected) -> + assertEquals(expected.first, actual.first, 0.01f) + assertEquals(expected.second, actual.second, 0.01f) + } + } + @Test fun `depth fraction 0_5 scales y coordinates linearly`() { val fullPath = RecordingShapePath() @@ -142,9 +152,9 @@ class DaxBubbleBottomEdgeTreatmentTest { } } - private fun tailOf(mirrored: Boolean): List> { + private fun tailOf(mirrorFraction: Float): List> { val path = RecordingShapePath() - DaxBubbleBottomEdgeTreatment(heightPx = 100).apply { this.mirrored = mirrored } + DaxBubbleBottomEdgeTreatment(heightPx = 100).apply { this.mirrorFraction = mirrorFraction } .getEdgePath(length = 400f, center = CENTER, interpolation = 1f, shapePath = path) // Distinct because the closing lineTo repeats the last curve's end point, and mirroring moves that // duplicate to the opposite end of the tail. diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/OnboardingBackgroundAnimator.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/OnboardingBackgroundAnimator.kt index 6cb9a1854acd..9c1a91288764 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/OnboardingBackgroundAnimator.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/OnboardingBackgroundAnimator.kt @@ -61,7 +61,7 @@ sealed class OnboardingBackgroundStep( maxHeightDp = 216, ) data object ImportPasswords : OnboardingBackgroundStep( - backgroundRes = R.drawable.onboarding_import_passwords_background, + backgroundRes = R.drawable.onboarding_island_with_horizon, maxHeightDp = 272, ) data object AddressBar : OnboardingBackgroundStep( diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ConfigDrivenWelcomePageFragment.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ConfigDrivenWelcomePageFragment.kt index 8854262aa569..bcf9ac44e3d2 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ConfigDrivenWelcomePageFragment.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/ConfigDrivenWelcomePageFragment.kt @@ -69,7 +69,6 @@ import com.duckduckgo.common.utils.FragmentViewModelFactory import com.duckduckgo.common.utils.device.DeviceInfo import com.duckduckgo.common.utils.device.isTablet import com.duckduckgo.di.scopes.FragmentScope -import com.duckduckgo.navigation.api.GlobalActivityStarter import kotlinx.coroutines.flow.launchIn import kotlinx.coroutines.flow.onEach import logcat.LogPriority.WARN @@ -96,9 +95,6 @@ class ConfigDrivenWelcomePageFragment : OnboardingPageFragment(R.layout.content_ @Inject lateinit var addWidgetLauncher: AddWidgetLauncher - @Inject - lateinit var globalActivityStarter: GlobalActivityStarter - private val binding: ContentOnboardingWelcomePageUpdateBinding by viewBinding() private val viewModel by lazy { ViewModelProvider(this, viewModelFactory)[ConfigDrivenOnboardingPageViewModel::class.java] diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt index 06f9c18e97ea..69e2122958a4 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt @@ -43,6 +43,12 @@ class ImportCompleteBinder( override val view: View = binding.root + private val outcomeVisible = MutableStateFlow(false) + + private var rendered: ImportCompleteContentState? = null + private var stateJob: Job? = null + private var transition: Animator? = null + override fun bind( content: ContentConfig.ImportComplete, state: MutableStateFlow, @@ -54,42 +60,20 @@ class ImportCompleteBinder( importCompleteSkippedRow.resultRowIcon.setImageResource(CommonR.drawable.ic_cross_recolorable_gray_24) importCompleteFailedRow.resultRowIcon.setImageResource(R.drawable.ic_cross_onboarding_error_24) - var rendered: ImportCompleteContentState = state.value - importCompleteTitle.setTitle(titleOf(rendered, content).resolve(context)) - apply(rendered, content, context) - - val outcomeVisible = MutableStateFlow(rendered !is ImportCompleteContentState.Parsing) - - var stateJob: Job? = null - var transition: Animator? = null + val initial = state.value + rendered = initial + importCompleteTitle.setTitle(titleOf(initial, content).resolve(context)) + apply(initial, content, context) + outcomeVisible.value = initial !is ImportCompleteContentState.Parsing ContentHandle( title = importCompleteTitle, preTitleFadeTargets = listOf(importCompletePictogram), fadeTargets = fadeTargets(), onContentReady = { - stateJob = state.onEach { current -> - if (current == rendered) return@onEach - rendered = current - - transition?.cancel() - val leaving = stateFadeTargets() - transition = fade(leaving, to = 0f) { - importCompleteTitle.setTitle(titleOf(current, content).resolve(context)) - importCompleteTitle.snapTitle() - - scope.animateCardBounds(STATE_CHANGE_DURATION_MS) - apply(current, content, context) - outcomeVisible.value = current !is ImportCompleteContentState.Parsing - - val arriving = stateFadeTargets() - arriving.forEach { it.alpha = 0f } - - leaving.filterNot { it in arriving }.forEach { it.alpha = 1f } - - transition = fade(arriving, to = 1f).also { it.start() } - }.also { it.start() } - }.launchIn(scope.coroutineScope) + stateJob = state + .onEach { renderStateChange(it, content, scope) } + .launchIn(scope.coroutineScope) }, primaryCtaState = CtaState( enabled = outcomeVisible, @@ -102,6 +86,34 @@ class ImportCompleteBinder( ) } + private fun renderStateChange( + current: ImportCompleteContentState, + content: ContentConfig.ImportComplete, + scope: BindScope, + ) = with(binding) { + if (current == rendered) return@with + rendered = current + val context = root.context + + transition?.cancel() + val leaving = stateFadeTargets() + transition = fade(leaving, to = 0f) { + importCompleteTitle.setTitle(titleOf(current, content).resolve(context)) + importCompleteTitle.snapTitle() + + scope.animateCardBounds(STATE_CHANGE_DURATION_MS) + apply(current, content, context) + outcomeVisible.value = current !is ImportCompleteContentState.Parsing + + val arriving = stateFadeTargets() + arriving.forEach { it.alpha = 0f } + + leaving.filterNot { it in arriving }.forEach { it.alpha = 1f } + + transition = fade(arriving, to = 1f).also { it.start() } + }.also { it.start() } + } + private fun fade( views: List, to: Float, diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/CardArrowController.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/CardArrowController.kt index 737f888175cf..9052b4ea4a82 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/CardArrowController.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/engine/CardArrowController.kt @@ -29,53 +29,64 @@ interface CardArrowController { } /** - * Owns the card's bubble arrow: whether it shows, and where along the card's edge it sits. The position only - * animates across a transition that actually moves it; every other render snaps it. + * Owns the card's bubble arrow: whether it shows, where along the card's edge it sits, and which way its tail + * hooks. Either property only animates across a transition that actually changes it; every other render snaps + * it. When a transition changes both, one animator drives them so the tail travels and reflects as a single + * gesture instead of the reflection popping before the slide. */ class CardArrowControllerImpl( private val cardView: DaxOnboardingBubbleBrandDesignUpdateCardView, ) : CardArrowController { - private var slide: ValueAnimator? = null + private var transition: ValueAnimator? = null override fun apply( previous: CardArrowConfig?, next: CardArrowConfig, animate: Boolean, ) { - slide?.cancel() - slide = null + transition?.cancel() + transition = null cardView.setShowArrow(next != CardArrowConfig.Hidden) cardView.setArrowAnimationTarget(ARROW_TARGET_OFFSET_END_DP.toPx().toFloat()) - cardView.setArrowMirrored(next.mirrored) + val positionTarget = if (next.atEnd) 1f else 0f + val mirrorTarget = if (next.mirrored) 1f else 0f - val target = if (next.atEnd) 1f else 0f - val moves = previous != null && previous.atEnd != next.atEnd && - previous != CardArrowConfig.Hidden && next != CardArrowConfig.Hidden - if (animate && moves) { - slide = ValueAnimator.ofFloat(1f - target, target).apply { + val from = previous?.takeIf { it != CardArrowConfig.Hidden && next != CardArrowConfig.Hidden } + val moves = animate && from != null && from.atEnd != next.atEnd + val flips = animate && from != null && from.mirrored != next.mirrored + + if (!moves) cardView.setArrowAnimationFraction(positionTarget) + if (!flips) cardView.setArrowMirrorFraction(mirrorTarget) + + if (moves || flips) { + transition = ValueAnimator.ofFloat(0f, 1f).apply { duration = SLIDE_DURATION_MS interpolator = FastOutSlowInInterpolator() - addUpdateListener { cardView.setArrowAnimationFraction(it.animatedValue as Float) } + addUpdateListener { + val progress = it.animatedValue as Float + if (moves) cardView.setArrowAnimationFraction(lerp(1f - positionTarget, positionTarget, progress)) + if (flips) cardView.setArrowMirrorFraction(lerp(1f - mirrorTarget, mirrorTarget, progress)) + } start() } - } else { - cardView.setArrowAnimationFraction(target) } } override fun skipRunning() { - slide?.end() - slide = null + transition?.end() + transition = null } override fun release() { - slide?.cancel() - slide = null + transition?.cancel() + transition = null } + private fun lerp(from: Float, to: Float, fraction: Float): Float = from + (to - from) * fraction + private companion object { const val ARROW_TARGET_OFFSET_END_DP = 80 const val SLIDE_DURATION_MS = 400L diff --git a/app/src/main/res/drawable-hdpi/onboarding_import_passwords_background.webp b/app/src/main/res/drawable-hdpi/onboarding_island_with_horizon.webp similarity index 100% rename from app/src/main/res/drawable-hdpi/onboarding_import_passwords_background.webp rename to app/src/main/res/drawable-hdpi/onboarding_island_with_horizon.webp diff --git a/app/src/main/res/drawable-mdpi/onboarding_import_passwords_background.webp b/app/src/main/res/drawable-mdpi/onboarding_island_with_horizon.webp similarity index 100% rename from app/src/main/res/drawable-mdpi/onboarding_import_passwords_background.webp rename to app/src/main/res/drawable-mdpi/onboarding_island_with_horizon.webp diff --git a/app/src/main/res/drawable-night-hdpi/onboarding_import_passwords_background.webp b/app/src/main/res/drawable-night-hdpi/onboarding_island_with_horizon.webp similarity index 100% rename from app/src/main/res/drawable-night-hdpi/onboarding_import_passwords_background.webp rename to app/src/main/res/drawable-night-hdpi/onboarding_island_with_horizon.webp diff --git a/app/src/main/res/drawable-night-mdpi/onboarding_import_passwords_background.webp b/app/src/main/res/drawable-night-mdpi/onboarding_island_with_horizon.webp similarity index 100% rename from app/src/main/res/drawable-night-mdpi/onboarding_import_passwords_background.webp rename to app/src/main/res/drawable-night-mdpi/onboarding_island_with_horizon.webp diff --git a/app/src/main/res/drawable-night-xhdpi/onboarding_import_passwords_background.webp b/app/src/main/res/drawable-night-xhdpi/onboarding_island_with_horizon.webp similarity index 100% rename from app/src/main/res/drawable-night-xhdpi/onboarding_import_passwords_background.webp rename to app/src/main/res/drawable-night-xhdpi/onboarding_island_with_horizon.webp diff --git a/app/src/main/res/drawable-night-xxhdpi/onboarding_import_passwords_background.webp b/app/src/main/res/drawable-night-xxhdpi/onboarding_island_with_horizon.webp similarity index 100% rename from app/src/main/res/drawable-night-xxhdpi/onboarding_import_passwords_background.webp rename to app/src/main/res/drawable-night-xxhdpi/onboarding_island_with_horizon.webp diff --git a/app/src/main/res/drawable-night-xxxhdpi/onboarding_import_passwords_background.webp b/app/src/main/res/drawable-night-xxxhdpi/onboarding_island_with_horizon.webp similarity index 100% rename from app/src/main/res/drawable-night-xxxhdpi/onboarding_import_passwords_background.webp rename to app/src/main/res/drawable-night-xxxhdpi/onboarding_island_with_horizon.webp diff --git a/app/src/main/res/drawable-xhdpi/onboarding_import_passwords_background.webp b/app/src/main/res/drawable-xhdpi/onboarding_island_with_horizon.webp similarity index 100% rename from app/src/main/res/drawable-xhdpi/onboarding_import_passwords_background.webp rename to app/src/main/res/drawable-xhdpi/onboarding_island_with_horizon.webp diff --git a/app/src/main/res/drawable-xxhdpi/onboarding_import_passwords_background.webp b/app/src/main/res/drawable-xxhdpi/onboarding_island_with_horizon.webp similarity index 100% rename from app/src/main/res/drawable-xxhdpi/onboarding_import_passwords_background.webp rename to app/src/main/res/drawable-xxhdpi/onboarding_island_with_horizon.webp diff --git a/app/src/main/res/drawable-xxxhdpi/onboarding_import_passwords_background.webp b/app/src/main/res/drawable-xxxhdpi/onboarding_island_with_horizon.webp similarity index 100% rename from app/src/main/res/drawable-xxxhdpi/onboarding_import_passwords_background.webp rename to app/src/main/res/drawable-xxxhdpi/onboarding_island_with_horizon.webp From 0140e2a1e38c8feacec9bed4932b437b32494868 Mon Sep 17 00:00:00 2001 From: catalinradoiu Date: Mon, 31 Aug 2026 14:31:21 +0300 Subject: [PATCH 08/10] Remove assets --- .../binders/ImportCompleteBinder.kt | 4 +-- .../ic_check_onboarding_success_24.xml | 29 ------------------- .../drawable/ic_cross_onboarding_error_24.xml | 29 ------------------- ...include_brand_design_import_result_row.xml | 2 +- 4 files changed, 3 insertions(+), 61 deletions(-) delete mode 100644 app/src/main/res/drawable/ic_check_onboarding_success_24.xml delete mode 100644 app/src/main/res/drawable/ic_cross_onboarding_error_24.xml diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt index 69e2122958a4..4a702fbf661b 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/binders/ImportCompleteBinder.kt @@ -56,9 +56,9 @@ class ImportCompleteBinder( ): ContentHandle = with(binding) { val context = root.context - importCompleteImportedRow.resultRowIcon.setImageResource(R.drawable.ic_check_onboarding_success_24) + importCompleteImportedRow.resultRowIcon.setImageResource(CommonR.drawable.ic_cross_recolorable_gray_24) importCompleteSkippedRow.resultRowIcon.setImageResource(CommonR.drawable.ic_cross_recolorable_gray_24) - importCompleteFailedRow.resultRowIcon.setImageResource(R.drawable.ic_cross_onboarding_error_24) + importCompleteFailedRow.resultRowIcon.setImageResource(CommonR.drawable.ic_cross_recolorable_gray_24) val initial = state.value rendered = initial diff --git a/app/src/main/res/drawable/ic_check_onboarding_success_24.xml b/app/src/main/res/drawable/ic_check_onboarding_success_24.xml deleted file mode 100644 index 52e59e4e4375..000000000000 --- a/app/src/main/res/drawable/ic_check_onboarding_success_24.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - diff --git a/app/src/main/res/drawable/ic_cross_onboarding_error_24.xml b/app/src/main/res/drawable/ic_cross_onboarding_error_24.xml deleted file mode 100644 index 412b8f12bcf7..000000000000 --- a/app/src/main/res/drawable/ic_cross_onboarding_error_24.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - diff --git a/app/src/main/res/layout/include_brand_design_import_result_row.xml b/app/src/main/res/layout/include_brand_design_import_result_row.xml index d08110345bcd..ad3791616d43 100644 --- a/app/src/main/res/layout/include_brand_design_import_result_row.xml +++ b/app/src/main/res/layout/include_brand_design_import_result_row.xml @@ -29,7 +29,7 @@ android:layout_width="20dp" android:layout_height="20dp" android:importantForAccessibility="no" - tools:srcCompat="@drawable/ic_check_onboarding_success_24" /> + tools:srcCompat="@drawable/ic_cross_recolorable_gray_24" /> Date: Mon, 31 Aug 2026 18:51:53 +0300 Subject: [PATCH 09/10] Update app/src/main/java/com/duckduckgo/app/onboarding/ui/page/OnboardingBackgroundAnimator.kt MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Łukasz Paczos --- .../app/onboarding/ui/page/OnboardingBackgroundAnimator.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/OnboardingBackgroundAnimator.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/OnboardingBackgroundAnimator.kt index 9c1a91288764..11a67152b0b5 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/OnboardingBackgroundAnimator.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/OnboardingBackgroundAnimator.kt @@ -60,7 +60,7 @@ sealed class OnboardingBackgroundStep( backgroundRes = R.drawable.onboarding_browser_comparison_background, maxHeightDp = 216, ) - data object ImportPasswords : OnboardingBackgroundStep( + data object IslandWithHorizon : OnboardingBackgroundStep( backgroundRes = R.drawable.onboarding_island_with_horizon, maxHeightDp = 272, ) From 0185599bda18c4026b4f18f8dda77bdb1ef85ed8 Mon Sep 17 00:00:00 2001 From: catalinradoiu Date: Mon, 31 Aug 2026 19:02:56 +0300 Subject: [PATCH 10/10] Fix build issue --- .../onboarding/ui/page/configdriven/DialogConfigResolver.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolver.kt b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolver.kt index ce7e9fe41221..47874d86228f 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolver.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/ui/page/configdriven/DialogConfigResolver.kt @@ -244,7 +244,7 @@ class DialogConfigResolver @Inject constructor( ) NewUserOnboardingActivityDialog.ImportPasswords -> DialogConfig( - background = OnboardingBackgroundStep.ImportPasswords, + background = OnboardingBackgroundStep.IslandWithHorizon, embellishment = Embellishment.RightWing, cardArrow = CardArrowConfig.AtStartMirrored, content = ContentConfig.ImportPasswords( @@ -262,7 +262,7 @@ class DialogConfigResolver @Inject constructor( ) NewUserOnboardingActivityDialog.ImportComplete -> DialogConfig( - background = OnboardingBackgroundStep.ImportPasswords, + background = OnboardingBackgroundStep.IslandWithHorizon, embellishment = Embellishment.RightWing, cardArrow = CardArrowConfig.AtStartMirrored, content = ContentConfig.ImportComplete(