diff --git a/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt b/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt index 77fed6fe3..9cd7ba53f 100644 --- a/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt @@ -13,6 +13,8 @@ import android.view.Gravity import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.view.Window +import android.view.WindowManager import android.widget.Button import android.widget.LinearLayout import android.widget.PopupWindow @@ -210,9 +212,28 @@ class HomeFragment : Fragment() { activity.themeManager.applyStatusBarTheme(activity) + setFragmentFullScreen(this.activity?.window, view.homeLayout) + return view } + private fun setFragmentFullScreen(window: Window?, homeScreen: View) { + + window?.decorView?.setOnApplyWindowInsetsListener { _, insets -> + + homeScreen.setPadding( + homeScreen.paddingLeft, + homeScreen.paddingTop + insets.stableInsetTop, + homeScreen.paddingRight, + homeScreen.paddingBottom + insets.stableInsetBottom + ) + + window.decorView.setOnApplyWindowInsetsListener(null) + + insets.consumeSystemWindowInsets() + } + } + @ExperimentalCoroutinesApi @SuppressWarnings("LongMethod") override fun onViewCreated(view: View, savedInstanceState: Bundle?) { @@ -249,7 +270,7 @@ class HomeFragment : Fragment() { if (menu == null) { menu = homeMenu?.menuBuilder?.build(requireContext())?.show( anchor = it, - orientation = BrowserMenu.Orientation.DOWN, + orientation = BrowserMenu.Orientation.UP, onDismiss = { menu = null } ) } else { @@ -438,6 +459,8 @@ class HomeFragment : Fragment() { override fun onResume() { super.onResume() + this.activity?.window?.setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, + WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS) hideToolbar() } @@ -773,6 +796,11 @@ class HomeFragment : Fragment() { } } + override fun onPause() { + this.activity?.window?.clearFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS) + super.onPause() + } + companion object { private const val NON_TAB_ITEM_NUM = 3 private const val ANIM_SCROLL_DELAY = 100L diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index ade49adf8..c67722961 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -140,7 +140,7 @@ @drawable/ic_logo_wordmark_private @drawable/private_home_background_gradient - @drawable/private_home_bottom_bar_background_gradient + @android:color/transparent @color/primary_text_private_theme @color/above_private_theme @raw/shield_json_dark