From b82a794908151dc13e2023b2c2399c0c73ade6c9 Mon Sep 17 00:00:00 2001 From: mcarare Date: Tue, 15 Oct 2019 17:07:47 +0300 Subject: [PATCH] For #5709: Align ETP onboarding popup implementation with original mocks --- .../main/java/org/mozilla/fenix/browser/BrowserFragment.kt | 4 +++- app/src/main/java/org/mozilla/fenix/ext/Context.kt | 6 ++++++ .../res/layout/tracking_protection_onboarding_popup.xml | 2 +- app/src/main/res/values/dimens.xml | 3 ++- 4 files changed, 12 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt b/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt index 75be77686..ecf5e057a 100644 --- a/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt @@ -54,6 +54,7 @@ import org.mozilla.fenix.ext.increaseTapArea import org.mozilla.fenix.ext.nav import org.mozilla.fenix.ext.requireComponents import org.mozilla.fenix.ext.settings +import org.mozilla.fenix.ext.getDimenInDip import org.mozilla.fenix.home.sessioncontrol.SessionControlChange import org.mozilla.fenix.home.sessioncontrol.TabCollection import org.mozilla.fenix.mvi.getManagedEmitter @@ -385,11 +386,12 @@ class BrowserFragment : BaseBrowserFragment(), BackHandler { layout.measure(spec, spec) val containerHeight = layout.measuredHeight + val triangleHeight = it.getDimenInDip(R.dimen.tp_onboarding_triangle_height).toInt() val xOffset = it.dimen(R.dimen.tp_onboarding_x_offset) // Positioning the popup above the tp anchor. - val yOffset = -containerHeight - (browserToolbarView.view.height / THREE * 2) + val yOffset = -containerHeight - (browserToolbarView.view.height / THREE * 2) + triangleHeight trackingOnboarding.showAsDropDown(tpIcon, xOffset, yOffset) it.settings().incrementTrackingProtectionOnboardingCount() diff --git a/app/src/main/java/org/mozilla/fenix/ext/Context.kt b/app/src/main/java/org/mozilla/fenix/ext/Context.kt index 921a1a257..d1f72a1af 100644 --- a/app/src/main/java/org/mozilla/fenix/ext/Context.kt +++ b/app/src/main/java/org/mozilla/fenix/ext/Context.kt @@ -17,12 +17,15 @@ import android.view.View import android.view.ViewGroup import androidx.annotation.AttrRes import androidx.annotation.ColorInt +import androidx.annotation.DimenRes import androidx.annotation.StringRes import androidx.fragment.app.FragmentActivity import mozilla.components.browser.search.SearchEngineManager import mozilla.components.support.base.log.Log import mozilla.components.support.base.log.Log.Priority.WARN import mozilla.components.support.ktx.android.content.getColorFromAttr +import org.jetbrains.anko.dimen +import org.jetbrains.anko.px2dip import org.mozilla.fenix.BuildConfig import org.mozilla.fenix.Config import org.mozilla.fenix.FenixApplication @@ -109,3 +112,6 @@ fun Context.getColorFromAttr(@AttrRes attr: Int) = getColorFromAttr(attr) fun Context.settings(isCrashReportEnabledInBuild: Boolean = BuildConfig.CRASH_REPORTING && Config.channel.isReleased) = Settings.getInstance(this, isCrashReportEnabledInBuild) + +fun Context.getDimenInDip(@DimenRes resource: Int) = + this.px2dip(this.dimen(resource)) diff --git a/app/src/main/res/layout/tracking_protection_onboarding_popup.xml b/app/src/main/res/layout/tracking_protection_onboarding_popup.xml index f42e5fa11..d4d8bf0af 100644 --- a/app/src/main/res/layout/tracking_protection_onboarding_popup.xml +++ b/app/src/main/res/layout/tracking_protection_onboarding_popup.xml @@ -47,7 +47,7 @@ 48dp 8dp 256dp - 4dp + 0dp + 16dp 46dp