diff --git a/app/src/main/java/com/duckduckgo/app/browser/BrowserTabFragment.kt b/app/src/main/java/com/duckduckgo/app/browser/BrowserTabFragment.kt index be0e9cf6ac92..5549312f0a37 100644 --- a/app/src/main/java/com/duckduckgo/app/browser/BrowserTabFragment.kt +++ b/app/src/main/java/com/duckduckgo/app/browser/BrowserTabFragment.kt @@ -955,6 +955,9 @@ class BrowserTabFragment : if (scrollFraction == 0.0f) { binding.trackersBlockedSlidingView.gone() } else { + if (binding.trackersBurstAnimationView.isAnimating) { + binding.trackersBurstAnimationView.cancelAnimation() + } binding.trackersBlockedSlidingView.show() } binding.trackers.text = viewModel.trackersCount() diff --git a/app/src/main/java/com/duckduckgo/app/browser/omnibar/TrackersBlockedViewSlideBehavior.kt b/app/src/main/java/com/duckduckgo/app/browser/omnibar/TrackersBlockedViewSlideBehavior.kt index 3d0be290a6f2..adb4dfc640a9 100644 --- a/app/src/main/java/com/duckduckgo/app/browser/omnibar/TrackersBlockedViewSlideBehavior.kt +++ b/app/src/main/java/com/duckduckgo/app/browser/omnibar/TrackersBlockedViewSlideBehavior.kt @@ -23,6 +23,7 @@ import android.view.View import androidx.coordinatorlayout.widget.CoordinatorLayout import androidx.core.view.ViewCompat import androidx.lifecycle.MutableLiveData +import com.airbnb.lottie.LottieAnimationView import com.duckduckgo.app.browser.R import com.duckduckgo.app.global.model.PrivacyShield import com.duckduckgo.app.global.model.Site @@ -46,9 +47,12 @@ class TrackersBlockedViewSlideBehavior( private var gravity: Int? = null private var trackers: DaxTextView? = null private var website: DaxTextView? = null + private var trackersBurstAnimationView: LottieAnimationView? = null override fun layoutDependsOn(parent: CoordinatorLayout, child: View, dependency: View): Boolean { - if (dependency.id == R.id.newOmnibarBottom) { + if (dependency.id == R.id.trackersBurstAnimationView) { + trackersBurstAnimationView = dependency as LottieAnimationView + } else if (dependency.id == R.id.newOmnibarBottom) { if (gravity == null) { val layoutParams = child.layoutParams as? CoordinatorLayout.LayoutParams gravity = layoutParams?.gravity @@ -80,6 +84,9 @@ class TrackersBlockedViewSlideBehavior( val site = siteLiveData.value trackers?.text = site?.trackerCount.toString() website?.text = site?.url?.extractDomain() + if (trackersBurstAnimationView?.isAnimating == true) { + trackersBurstAnimationView?.cancelAnimation() + } child.show() } super.onNestedPreScroll(coordinatorLayout, child, target, dx, dy, consumed, type)