diff --git a/app/src/main/java/org/mozilla/fenix/trackingprotection/TrackingProtectionOverlay.kt b/app/src/main/java/org/mozilla/fenix/trackingprotection/TrackingProtectionOverlay.kt index 2902b2392..e3719304a 100644 --- a/app/src/main/java/org/mozilla/fenix/trackingprotection/TrackingProtectionOverlay.kt +++ b/app/src/main/java/org/mozilla/fenix/trackingprotection/TrackingProtectionOverlay.kt @@ -15,6 +15,7 @@ import android.view.View import android.widget.ImageView import androidx.core.view.isVisible import androidx.core.view.marginTop +import com.google.android.material.appbar.AppBarLayout import kotlinx.android.synthetic.main.tracking_protection_onboarding_popup.* import kotlinx.android.synthetic.main.tracking_protection_onboarding_popup.view.* import mozilla.components.browser.session.Session @@ -44,13 +45,32 @@ class TrackingProtectionOverlay( private fun shouldShowTrackingProtectionOnboarding(session: Session) = session.trackerBlockingEnabled && - session.trackersBlocked.isNotEmpty() && - settings.shouldShowTrackingProtectionCfr + session.trackersBlocked.isNotEmpty() && + settings.shouldShowTrackingProtectionCfr @Suppress("MagicNumber", "InflateParams") private fun showTrackingProtectionOnboarding() { + if (!getToolbar().hasWindowFocus()) return + val toolbarPosition = settings.toolbarPosition + + when (toolbarPosition) { + ToolbarPosition.BOTTOM -> { + if (getToolbar().translationY > 0) { + return + } + } + ToolbarPosition.TOP -> { + val appBarLayout = getToolbar().parent as? AppBarLayout + appBarLayout?.let { appBar -> + if (appBar.y != 0.toFloat()) { + return + } + } + } + } + val trackingOnboardingDialog = object : Dialog(context) { override fun onTouchEvent(event: MotionEvent): Boolean { @@ -63,7 +83,6 @@ class TrackingProtectionOverlay( val layout = LayoutInflater.from(context) .inflate(R.layout.tracking_protection_onboarding_popup, null) - val toolbarPosition = settings.toolbarPosition layout.drop_down_triangle.isVisible = toolbarPosition == ToolbarPosition.TOP layout.pop_up_triangle.isVisible = toolbarPosition == ToolbarPosition.BOTTOM