From c9141c9ae5cf1b0d82290ac0c13c47659ed1a1a2 Mon Sep 17 00:00:00 2001 From: Roger Yang Date: Thu, 9 Apr 2020 12:31:47 -0400 Subject: [PATCH] Close #9827: Support display cutouts --- .../org/mozilla/fenix/browser/BaseBrowserFragment.kt | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt b/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt index d75425528..97772919c 100644 --- a/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt @@ -6,6 +6,7 @@ package org.mozilla.fenix.browser import android.content.Context import android.content.Intent +import android.os.Build import android.os.Bundle import android.view.Gravity import android.view.LayoutInflater @@ -436,6 +437,7 @@ abstract class BaseBrowserFragment : Fragment(), UserInteractionHandler, Session sessionManager, SessionUseCases(sessionManager), customTabSessionId, + ::viewportFitChange, ::fullScreenChanged ), owner = this, @@ -817,6 +819,14 @@ abstract class BaseBrowserFragment : Fragment(), UserInteractionHandler, Session pipFeature?.onPictureInPictureModeChanged(enabled) } + private fun viewportFitChange(layoutInDisplayCutoutMode: Int) { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) { + val layoutParams = activity?.window?.attributes + layoutParams?.layoutInDisplayCutoutMode = layoutInDisplayCutoutMode + activity?.window?.attributes = layoutParams + } + } + private fun fullScreenChanged(inFullScreen: Boolean) { if (inFullScreen) { FenixSnackbar.make(