For #15402: Hide ETP pop-up if the toolbar is not visible (#15667)

For #15402: Hide ETP pop-up when top or bottom toolbar is not visible
pull/216/head
Sijan Rijal 4 years ago committed by GitHub
parent 70908307fc
commit 127d006d66
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -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

Loading…
Cancel
Save