From bf4916418aaac592177828bc2c27b89ef7cd0532 Mon Sep 17 00:00:00 2001 From: Emily Kager Date: Fri, 7 Jun 2019 13:32:23 -0700 Subject: [PATCH] For #1998 - Removes stable flag in entering fullscreen navigation --- .../mozilla/fenix/browser/BrowserFragment.kt | 2 +- .../java/org/mozilla/fenix/ext/Activity.kt | 21 +++++++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 app/src/main/java/org/mozilla/fenix/ext/Activity.kt 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 2ddd5bc379..509fff5c77 100644 --- a/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt @@ -51,7 +51,6 @@ import mozilla.components.feature.sitepermissions.SitePermissionsFeature import mozilla.components.feature.sitepermissions.SitePermissionsRules import mozilla.components.support.base.feature.BackHandler import mozilla.components.support.base.feature.ViewBoundFeatureWrapper -import mozilla.components.support.ktx.android.view.enterToImmersiveMode import mozilla.components.support.ktx.android.view.exitImmersiveModeIfNeeded import mozilla.components.support.ktx.kotlin.toUri import org.mozilla.fenix.BrowsingModeManager @@ -77,6 +76,7 @@ import org.mozilla.fenix.components.toolbar.ToolbarUIView import org.mozilla.fenix.components.toolbar.ToolbarViewModel import org.mozilla.fenix.customtabs.CustomTabsIntegration import org.mozilla.fenix.ext.components +import org.mozilla.fenix.ext.enterToImmersiveMode import org.mozilla.fenix.ext.nav import org.mozilla.fenix.ext.requireComponents import org.mozilla.fenix.ext.urlToTrimmedHost diff --git a/app/src/main/java/org/mozilla/fenix/ext/Activity.kt b/app/src/main/java/org/mozilla/fenix/ext/Activity.kt new file mode 100644 index 0000000000..85b9a98f97 --- /dev/null +++ b/app/src/main/java/org/mozilla/fenix/ext/Activity.kt @@ -0,0 +1,21 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + License, v. 2.0. If a copy of the MPL was not distributed with this + file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +package org.mozilla.fenix.ext + +import android.app.Activity +import android.view.View +import android.view.WindowManager + +/** + * Attempts to call immersive mode using the View to hide the status bar and navigation buttons. + */ +fun Activity.enterToImmersiveMode() { + window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON) + window.decorView.systemUiVisibility = (View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION + or View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN + or View.SYSTEM_UI_FLAG_HIDE_NAVIGATION + or View.SYSTEM_UI_FLAG_FULLSCREEN + or View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY) +}