Skip to content

Commit

Permalink
Revert "SplashScreen Animation: Add wink animation (#5565)" (#5666)
Browse files Browse the repository at this point in the history
Task/Issue URL:
https://app.asana.com/0/1207908166761516/1209441074191255

### Description

This reverts commit 1af0d49. There have been some Splashscreen issues
on Android 12L so we're reverting and going to try and fix for the next
release

### Steps to test this PR

_Splashscreen_
- [ ] Open app on a number of different SDK versions, a good sample is
26, 32, 35
- [ ] Check the static logo shows and the app launches (remember there
is a bug if you launch the app from Android Studio on to an Android 12L
device where you only see the logo if you launch from the home screen)

### UI changes

Back to previous static logo
  • Loading branch information
mikescamell authored Feb 19, 2025
1 parent a90a3fd commit 314a226
Show file tree
Hide file tree
Showing 9 changed files with 2 additions and 12,034 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,6 @@ object PixelInterceptorPixelsRequiringDataCleaning : PixelParamRemovalPlugin {
AppPixelName.SET_AS_DEFAULT_PROMPT_CLICK.pixelName to PixelParameter.removeAll(),
AppPixelName.SET_AS_DEFAULT_PROMPT_DISMISSED.pixelName to PixelParameter.removeAll(),
AppPixelName.SET_AS_DEFAULT_IN_MENU_CLICK.pixelName to PixelParameter.removeAll(),
AppPixelName.SPLASHSCREEN_SHOWN.pixelName to PixelParameter.removeAll(),
AppPixelName.MENU_ACTION_NEW_TAB_PRESSED_FROM_SITE.pixelName to PixelParameter.removeAll(),
AppPixelName.MENU_ACTION_NEW_TAB_PRESSED_FROM_SERP.pixelName to PixelParameter.removeAll(),
)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,6 @@ import com.duckduckgo.app.browser.R
import com.duckduckgo.app.onboarding.ui.OnboardingActivity
import com.duckduckgo.common.ui.DuckDuckGoActivity
import com.duckduckgo.di.scopes.ActivityScope
import java.time.Instant
import java.time.temporal.ChronoUnit
import kotlinx.coroutines.delay
import kotlinx.coroutines.launch

@InjectWith(ActivityScope::class)
Expand All @@ -38,25 +35,13 @@ class LaunchBridgeActivity : DuckDuckGoActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
val splashScreen = installSplashScreen()
super.onCreate(savedInstanceState)
splashScreen.setKeepOnScreenCondition { true }

setContentView(R.layout.activity_launch)

configureObservers()

splashScreen.setOnExitAnimationListener { splashScreenView ->
val splashScreenAnimationEndTime =
Instant.ofEpochMilli(splashScreenView.iconAnimationStartMillis + splashScreenView.iconAnimationDurationMillis)
val remainingAnimationTime = Instant.now().until(
splashScreenAnimationEndTime,
ChronoUnit.MILLIS,
)

lifecycleScope.launch {
viewModel.sendWelcomeScreenPixel()
delay(remainingAnimationTime)
viewModel.determineViewToShow()
}
}
lifecycleScope.launch { viewModel.determineViewToShow() }
}

private fun configureObservers() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,8 @@ import androidx.lifecycle.ViewModel
import com.duckduckgo.anvil.annotations.ContributesViewModel
import com.duckduckgo.app.onboarding.store.UserStageStore
import com.duckduckgo.app.onboarding.store.isNewUser
import com.duckduckgo.app.pixels.AppPixelName.SPLASHSCREEN_SHOWN
import com.duckduckgo.app.referral.AppInstallationReferrerStateListener
import com.duckduckgo.app.referral.AppInstallationReferrerStateListener.Companion.MAX_REFERRER_WAIT_TIME_MS
import com.duckduckgo.app.statistics.pixels.Pixel
import com.duckduckgo.common.utils.SingleLiveEvent
import com.duckduckgo.di.scopes.ActivityScope
import javax.inject.Inject
Expand All @@ -34,7 +32,6 @@ import timber.log.Timber
class LaunchViewModel @Inject constructor(
private val userStageStore: UserStageStore,
private val appReferrerStateListener: AppInstallationReferrerStateListener,
private val pixel: Pixel,
) :
ViewModel() {

Expand All @@ -45,10 +42,6 @@ class LaunchViewModel @Inject constructor(
data class Home(val replaceExistingSearch: Boolean = false) : Command()
}

fun sendWelcomeScreenPixel() {
pixel.fire(SPLASHSCREEN_SHOWN)
}

suspend fun determineViewToShow() {
waitForReferrerData()

Expand Down
2 changes: 0 additions & 2 deletions app/src/main/java/com/duckduckgo/app/pixels/AppPixelName.kt
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,6 @@ enum class AppPixelName(override val pixelName: String) : Pixel.PixelName {
BROKEN_SITE_ALLOWLIST_REMOVE("m_broken_site_allowlist_remove"),
PROTECTION_TOGGLE_BROKEN_SITE_REPORT("m_protection-toggled-off-breakage-report"),

SPLASHSCREEN_SHOWN("m_splashscreen_shown"),

PREONBOARDING_INTRO_SHOWN_UNIQUE("m_preonboarding_intro_shown_unique"),
PREONBOARDING_COMPARISON_CHART_SHOWN_UNIQUE("m_preonboarding_comparison_chart_shown_unique"),
PREONBOARDING_CHOOSE_BROWSER_PRESSED("m_preonboarding_choose_browser_pressed"),
Expand Down
24 changes: 0 additions & 24 deletions app/src/test/java/com/duckduckgo/app/launch/LaunchViewModelTest.kt
Original file line number Diff line number Diff line change
Expand Up @@ -22,13 +22,10 @@ import com.duckduckgo.app.launch.LaunchViewModel.Command.Home
import com.duckduckgo.app.launch.LaunchViewModel.Command.Onboarding
import com.duckduckgo.app.onboarding.store.AppStage
import com.duckduckgo.app.onboarding.store.UserStageStore
import com.duckduckgo.app.pixels.AppPixelName
import com.duckduckgo.app.referral.StubAppReferrerFoundStateListener
import com.duckduckgo.common.test.CoroutineTestRule
import com.duckduckgo.fakes.FakePixel
import kotlinx.coroutines.test.runTest
import org.junit.After
import org.junit.Assert.assertEquals
import org.junit.Rule
import org.junit.Test
import org.mockito.kotlin.any
Expand All @@ -48,8 +45,6 @@ class LaunchViewModelTest {
private val userStageStore = mock<UserStageStore>()
private val mockCommandObserver: Observer<LaunchViewModel.Command> = mock()

private val fakePixel: FakePixel = FakePixel()

private lateinit var testee: LaunchViewModel

@After
Expand All @@ -62,7 +57,6 @@ class LaunchViewModelTest {
testee = LaunchViewModel(
userStageStore,
StubAppReferrerFoundStateListener("xx"),
fakePixel,
)
whenever(userStageStore.getUserAppStage()).thenReturn(AppStage.NEW)
testee.command.observeForever(mockCommandObserver)
Expand All @@ -77,7 +71,6 @@ class LaunchViewModelTest {
testee = LaunchViewModel(
userStageStore,
StubAppReferrerFoundStateListener("xx", mockDelayMs = 1_000),
fakePixel,
)
whenever(userStageStore.getUserAppStage()).thenReturn(AppStage.NEW)
testee.command.observeForever(mockCommandObserver)
Expand All @@ -92,7 +85,6 @@ class LaunchViewModelTest {
testee = LaunchViewModel(
userStageStore,
StubAppReferrerFoundStateListener("xx", mockDelayMs = Long.MAX_VALUE),
fakePixel,
)
whenever(userStageStore.getUserAppStage()).thenReturn(AppStage.NEW)
testee.command.observeForever(mockCommandObserver)
Expand All @@ -107,7 +99,6 @@ class LaunchViewModelTest {
testee = LaunchViewModel(
userStageStore,
StubAppReferrerFoundStateListener("xx"),
fakePixel,
)
whenever(userStageStore.getUserAppStage()).thenReturn(AppStage.DAX_ONBOARDING)
testee.command.observeForever(mockCommandObserver)
Expand All @@ -120,7 +111,6 @@ class LaunchViewModelTest {
testee = LaunchViewModel(
userStageStore,
StubAppReferrerFoundStateListener("xx", mockDelayMs = 1_000),
fakePixel,
)
whenever(userStageStore.getUserAppStage()).thenReturn(AppStage.DAX_ONBOARDING)
testee.command.observeForever(mockCommandObserver)
Expand All @@ -133,24 +123,10 @@ class LaunchViewModelTest {
testee = LaunchViewModel(
userStageStore,
StubAppReferrerFoundStateListener("xx", mockDelayMs = Long.MAX_VALUE),
fakePixel,
)
whenever(userStageStore.getUserAppStage()).thenReturn(AppStage.DAX_ONBOARDING)
testee.command.observeForever(mockCommandObserver)
testee.determineViewToShow()
verify(mockCommandObserver).onChanged(any<Home>())
}

@Test
fun whenSendingWelcomeScreenPixelThenSplashScreenShownPixelIsSent() = runTest {
testee = LaunchViewModel(
userStageStore,
StubAppReferrerFoundStateListener("xx", mockDelayMs = Long.MAX_VALUE),
fakePixel,
)

testee.sendWelcomeScreenPixel()

assertEquals(AppPixelName.SPLASHSCREEN_SHOWN.pixelName, fakePixel.firedPixels.first())
}
}
Loading

0 comments on commit 314a226

Please sign in to comment.