diff --git a/app/src/androidTest/java/com/duckduckgo/app/browser/BrowserTabViewModelTest.kt b/app/src/androidTest/java/com/duckduckgo/app/browser/BrowserTabViewModelTest.kt index 7b66a31c4abf..03056cc97315 100644 --- a/app/src/androidTest/java/com/duckduckgo/app/browser/BrowserTabViewModelTest.kt +++ b/app/src/androidTest/java/com/duckduckgo/app/browser/BrowserTabViewModelTest.kt @@ -670,7 +670,6 @@ class BrowserTabViewModelTest { subscriptions = subscriptions, duckPlayer = mockDuckPlayer, brokenSitePrompt = mockBrokenSitePrompt, - userBrowserProperties = mockUserBrowserProperties, senseOfProtectionExperiment = mockSenseOfProtectionExperiment, onboardingHomeScreenWidgetExperiment = mockOnboardingHomeScreenWidgetExperiment, ) diff --git a/app/src/androidTest/java/com/duckduckgo/app/cta/ui/CtaViewModelTest.kt b/app/src/androidTest/java/com/duckduckgo/app/cta/ui/CtaViewModelTest.kt index 931b8cd66882..458436820c9d 100644 --- a/app/src/androidTest/java/com/duckduckgo/app/cta/ui/CtaViewModelTest.kt +++ b/app/src/androidTest/java/com/duckduckgo/app/cta/ui/CtaViewModelTest.kt @@ -53,7 +53,6 @@ import com.duckduckgo.app.trackerdetection.model.TrackingEvent import com.duckduckgo.app.widget.ui.WidgetCapabilities import com.duckduckgo.brokensite.api.BrokenSitePrompt import com.duckduckgo.brokensite.api.RefreshPattern -import com.duckduckgo.browser.api.UserBrowserProperties import com.duckduckgo.common.test.CoroutineTestRule import com.duckduckgo.common.test.InstantSchedulersRule import com.duckduckgo.duckplayer.api.DuckPlayer @@ -121,8 +120,6 @@ class CtaViewModelTest { private val mockBrokenSitePrompt: BrokenSitePrompt = mock() - private val mockUserBrowserProperties: UserBrowserProperties = mock() - private val mockSenseOfProtectionExperiment: SenseOfProtectionExperiment = mock() private val mockOnboardingHomeScreenWidgetExperiment: OnboardingHomeScreenWidgetExperiment = mock() @@ -179,7 +176,6 @@ class CtaViewModelTest { subscriptions = mockSubscriptions, duckPlayer = mockDuckPlayer, brokenSitePrompt = mockBrokenSitePrompt, - userBrowserProperties = mockUserBrowserProperties, senseOfProtectionExperiment = mockSenseOfProtectionExperiment, onboardingHomeScreenWidgetExperiment = mockOnboardingHomeScreenWidgetExperiment, ) diff --git a/app/src/main/java/com/duckduckgo/app/cta/ui/CtaViewModel.kt b/app/src/main/java/com/duckduckgo/app/cta/ui/CtaViewModel.kt index dfa7d0b9f121..2990e8813a6e 100644 --- a/app/src/main/java/com/duckduckgo/app/cta/ui/CtaViewModel.kt +++ b/app/src/main/java/com/duckduckgo/app/cta/ui/CtaViewModel.kt @@ -38,7 +38,6 @@ import com.duckduckgo.app.onboarding.store.OnboardingStore import com.duckduckgo.app.onboarding.store.UserStageStore import com.duckduckgo.app.onboarding.store.daxOnboardingActive import com.duckduckgo.app.onboarding.ui.page.extendedonboarding.ExtendedOnboardingFeatureToggles -import com.duckduckgo.app.pixels.AppPixelName import com.duckduckgo.app.privacy.db.UserAllowListRepository import com.duckduckgo.app.settings.db.SettingsDataStore import com.duckduckgo.app.statistics.pixels.Pixel @@ -46,7 +45,6 @@ import com.duckduckgo.app.tabs.model.TabRepository import com.duckduckgo.app.widget.ui.WidgetCapabilities import com.duckduckgo.brokensite.api.BrokenSitePrompt import com.duckduckgo.brokensite.api.RefreshPattern -import com.duckduckgo.browser.api.UserBrowserProperties import com.duckduckgo.common.utils.DispatcherProvider import com.duckduckgo.di.scopes.AppScope import com.duckduckgo.duckplayer.api.DuckPlayer @@ -86,7 +84,6 @@ class CtaViewModel @Inject constructor( private val subscriptions: Subscriptions, private val duckPlayer: DuckPlayer, private val brokenSitePrompt: BrokenSitePrompt, - private val userBrowserProperties: UserBrowserProperties, private val senseOfProtectionExperiment: SenseOfProtectionExperiment, private val onboardingHomeScreenWidgetExperiment: OnboardingHomeScreenWidgetExperiment, ) { @@ -153,18 +150,6 @@ class CtaViewModel @Inject constructor( if (cta is BrokenSitePromptDialogCta) { brokenSitePrompt.ctaShown() } - - // Temporary pixel - val isVisitSiteSuggestionsCta = cta is DaxBubbleCta.DaxIntroVisitSiteOptionsCta || cta is OnboardingDaxDialogCta.DaxSiteSuggestionsCta - if (isVisitSiteSuggestionsCta) { - if (userBrowserProperties.daysSinceInstalled() <= MIN_DAYS_TO_COUNT_ONBOARDING_CTA_SHOWN) { - val count = onboardingStore.visitSiteCtaDisplayCount ?: 0 - pixel.fire(AppPixelName.ONBOARDING_VISIT_SITE_CTA_SHOWN, mapOf("count" to count.toString())) - onboardingStore.visitSiteCtaDisplayCount = count + 1 - } else { - onboardingStore.clearVisitSiteCtaDisplayCount() - } - } } } @@ -501,6 +486,5 @@ class CtaViewModel @Inject constructor( companion object { private const val MAX_TABS_OPEN_FIRE_EDUCATION = 2 - private const val MIN_DAYS_TO_COUNT_ONBOARDING_CTA_SHOWN = 3 } } diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/store/OnboardingStore.kt b/app/src/main/java/com/duckduckgo/app/onboarding/store/OnboardingStore.kt index 101039ebe1ba..ff66d067fd55 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/store/OnboardingStore.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/store/OnboardingStore.kt @@ -20,11 +20,9 @@ import com.duckduckgo.app.cta.ui.DaxBubbleCta.DaxDialogIntroOption interface OnboardingStore { var onboardingDialogJourney: String? - var visitSiteCtaDisplayCount: Int @Deprecated(message = "Parameter used for a temporary pixel") fun getSearchOptions(): List fun getSitesOptions(): List fun getExperimentSearchOptions(): List - fun clearVisitSiteCtaDisplayCount() } diff --git a/app/src/main/java/com/duckduckgo/app/onboarding/store/OnboardingStoreImpl.kt b/app/src/main/java/com/duckduckgo/app/onboarding/store/OnboardingStoreImpl.kt index d573e8a03479..9d1e66f50935 100644 --- a/app/src/main/java/com/duckduckgo/app/onboarding/store/OnboardingStoreImpl.kt +++ b/app/src/main/java/com/duckduckgo/app/onboarding/store/OnboardingStoreImpl.kt @@ -35,10 +35,6 @@ class OnboardingStoreImpl @Inject constructor( get() = preferences.getString(ONBOARDING_JOURNEY, null) set(dialogJourney) = preferences.edit { putString(ONBOARDING_JOURNEY, dialogJourney) } - override var visitSiteCtaDisplayCount: Int - get() = preferences.getInt(VISIT_SITE_CTA_DISPLAY_COUNT, 0) - set(count) = preferences.edit { putInt(VISIT_SITE_CTA_DISPLAY_COUNT, count) } - override fun getSearchOptions(): List { val country = Locale.getDefault().country val language = Locale.getDefault().language @@ -211,13 +207,8 @@ class OnboardingStoreImpl @Inject constructor( ) } - override fun clearVisitSiteCtaDisplayCount() { - preferences.edit { remove(VISIT_SITE_CTA_DISPLAY_COUNT) } - } - companion object { const val FILENAME = "com.duckduckgo.app.onboarding.settings" const val ONBOARDING_JOURNEY = "onboardingJourney" - const val VISIT_SITE_CTA_DISPLAY_COUNT = "visitSiteCtaDisplayCount" } } diff --git a/app/src/main/java/com/duckduckgo/app/pixels/AppPixelName.kt b/app/src/main/java/com/duckduckgo/app/pixels/AppPixelName.kt index fa799920915b..24408a9a52fd 100644 --- a/app/src/main/java/com/duckduckgo/app/pixels/AppPixelName.kt +++ b/app/src/main/java/com/duckduckgo/app/pixels/AppPixelName.kt @@ -53,7 +53,6 @@ enum class AppPixelName(override val pixelName: String) : Pixel.PixelName { ONBOARDING_DAX_ALL_CTA_HIDDEN("m_odc_h"), ONBOARDING_DAX_CTA_OK_BUTTON("m_odc_ok"), ONBOARDING_DAX_CTA_DISMISS_BUTTON("m_onboarding_dax_cta_dismiss"), - ONBOARDING_VISIT_SITE_CTA_SHOWN("onboarding_visit_site_cta_shown"), BROWSER_MENU_ALLOWLIST_ADD("mb_wla"), BROWSER_MENU_ALLOWLIST_REMOVE("mb_wlr"), diff --git a/app/src/test/java/com/duckduckgo/app/cta/ui/OnboardingDaxDialogTests.kt b/app/src/test/java/com/duckduckgo/app/cta/ui/OnboardingDaxDialogTests.kt index 48c4a70addf6..542f8a5d1562 100644 --- a/app/src/test/java/com/duckduckgo/app/cta/ui/OnboardingDaxDialogTests.kt +++ b/app/src/test/java/com/duckduckgo/app/cta/ui/OnboardingDaxDialogTests.kt @@ -41,7 +41,6 @@ import com.duckduckgo.app.statistics.pixels.Pixel import com.duckduckgo.app.tabs.model.TabRepository import com.duckduckgo.app.widget.ui.WidgetCapabilities import com.duckduckgo.brokensite.api.BrokenSitePrompt -import com.duckduckgo.browser.api.UserBrowserProperties import com.duckduckgo.common.test.CoroutineTestRule import com.duckduckgo.duckplayer.api.DuckPlayer import com.duckduckgo.feature.toggles.api.Toggle @@ -82,7 +81,6 @@ class OnboardingDaxDialogTests { private val mockDuckPlayer: DuckPlayer = mock() private val mockBrokenSitePrompt: BrokenSitePrompt = mock() private val mockRefreshPixelSender: RefreshPixelSender = mock() - private val mockUserBrowserProperties: UserBrowserProperties = mock() private val mockSubscriptions: Subscriptions = mock() private val mockSenseOfProtectionExperiment: SenseOfProtectionExperiment = mock() private val mockOnboardingHomeScreenWidgetExperiment: OnboardingHomeScreenWidgetExperiment = mock() @@ -112,7 +110,6 @@ class OnboardingDaxDialogTests { mockSubscriptions, mockDuckPlayer, mockBrokenSitePrompt, - mockUserBrowserProperties, mockSenseOfProtectionExperiment, mockOnboardingHomeScreenWidgetExperiment, )