For #5709: Align ETP onboarding popup implementation with original mocks
This commit is contained in:
parent
e1d05f55fc
commit
b82a794908
|
@ -54,6 +54,7 @@ import org.mozilla.fenix.ext.increaseTapArea
|
||||||
import org.mozilla.fenix.ext.nav
|
import org.mozilla.fenix.ext.nav
|
||||||
import org.mozilla.fenix.ext.requireComponents
|
import org.mozilla.fenix.ext.requireComponents
|
||||||
import org.mozilla.fenix.ext.settings
|
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.SessionControlChange
|
||||||
import org.mozilla.fenix.home.sessioncontrol.TabCollection
|
import org.mozilla.fenix.home.sessioncontrol.TabCollection
|
||||||
import org.mozilla.fenix.mvi.getManagedEmitter
|
import org.mozilla.fenix.mvi.getManagedEmitter
|
||||||
|
@ -385,11 +386,12 @@ class BrowserFragment : BaseBrowserFragment(), BackHandler {
|
||||||
layout.measure(spec, spec)
|
layout.measure(spec, spec)
|
||||||
|
|
||||||
val containerHeight = layout.measuredHeight
|
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)
|
val xOffset = it.dimen(R.dimen.tp_onboarding_x_offset)
|
||||||
|
|
||||||
// Positioning the popup above the tp anchor.
|
// 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)
|
trackingOnboarding.showAsDropDown(tpIcon, xOffset, yOffset)
|
||||||
it.settings().incrementTrackingProtectionOnboardingCount()
|
it.settings().incrementTrackingProtectionOnboardingCount()
|
||||||
|
|
|
@ -17,12 +17,15 @@ import android.view.View
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import androidx.annotation.AttrRes
|
import androidx.annotation.AttrRes
|
||||||
import androidx.annotation.ColorInt
|
import androidx.annotation.ColorInt
|
||||||
|
import androidx.annotation.DimenRes
|
||||||
import androidx.annotation.StringRes
|
import androidx.annotation.StringRes
|
||||||
import androidx.fragment.app.FragmentActivity
|
import androidx.fragment.app.FragmentActivity
|
||||||
import mozilla.components.browser.search.SearchEngineManager
|
import mozilla.components.browser.search.SearchEngineManager
|
||||||
import mozilla.components.support.base.log.Log
|
import mozilla.components.support.base.log.Log
|
||||||
import mozilla.components.support.base.log.Log.Priority.WARN
|
import mozilla.components.support.base.log.Log.Priority.WARN
|
||||||
import mozilla.components.support.ktx.android.content.getColorFromAttr
|
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.BuildConfig
|
||||||
import org.mozilla.fenix.Config
|
import org.mozilla.fenix.Config
|
||||||
import org.mozilla.fenix.FenixApplication
|
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) =
|
fun Context.settings(isCrashReportEnabledInBuild: Boolean = BuildConfig.CRASH_REPORTING && Config.channel.isReleased) =
|
||||||
Settings.getInstance(this, isCrashReportEnabledInBuild)
|
Settings.getInstance(this, isCrashReportEnabledInBuild)
|
||||||
|
|
||||||
|
fun Context.getDimenInDip(@DimenRes resource: Int) =
|
||||||
|
this.px2dip(this.dimen(resource))
|
||||||
|
|
|
@ -47,7 +47,7 @@
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:layout_width="16dp"
|
android:layout_width="16dp"
|
||||||
android:layout_height="16dp"
|
android:layout_height="@dimen/tp_onboarding_triangle_height"
|
||||||
android:layout_marginStart="16dp"
|
android:layout_marginStart="16dp"
|
||||||
android:importantForAccessibility="no"
|
android:importantForAccessibility="no"
|
||||||
android:rotation="180"
|
android:rotation="180"
|
||||||
|
|
|
@ -36,7 +36,8 @@
|
||||||
<dimen name="context_menu_height">48dp</dimen>
|
<dimen name="context_menu_height">48dp</dimen>
|
||||||
<dimen name="context_menu_x_offset">8dp</dimen>
|
<dimen name="context_menu_x_offset">8dp</dimen>
|
||||||
<dimen name="tp_onboarding_width">256dp</dimen>
|
<dimen name="tp_onboarding_width">256dp</dimen>
|
||||||
<dimen name="tp_onboarding_x_offset">4dp</dimen>
|
<dimen name="tp_onboarding_x_offset">0dp</dimen>
|
||||||
|
<dimen name="tp_onboarding_triangle_height">16dp</dimen>
|
||||||
|
|
||||||
<!--Quick Settings-->
|
<!--Quick Settings-->
|
||||||
<dimen name="quicksettings_item_height">46dp</dimen>
|
<dimen name="quicksettings_item_height">46dp</dimen>
|
||||||
|
|
Loading…
Reference in New Issue
Block a user