From 9463029335e0ed69118d40e3aa4a869b957ab308 Mon Sep 17 00:00:00 2001 From: Colin Lee Date: Wed, 12 Jun 2019 10:08:39 -0500 Subject: [PATCH] [fenix] For https://github.com/mozilla-mobile/fenix/issues/3314: Toolbar and QAB unresponsive after Android 6 perms check (https://github.com/mozilla-mobile/fenix/pull/3373) --- .../mozilla/fenix/browser/BrowserFragment.kt | 13 ++++---- .../org/mozilla/fenix/home/HomeFragment.kt | 31 +++++++++---------- .../mozilla/fenix/search/SearchFragment.kt | 9 ++---- 3 files changed, 24 insertions(+), 29 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 f85ec2ba6..a22ec4b4b 100644 --- a/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt @@ -449,7 +449,12 @@ class BrowserFragment : Fragment(), BackHandler, CoroutineScope { } } + @SuppressWarnings("ComplexMethod") override fun onResume() { + sessionObserver = subscribeToSession() + sessionManagerObserver = subscribeToSessions() + getSessionById()?.let { updateBookmarkState(it) } + if (getSessionById() == null) findNavController(this).popBackStack(R.id.homeFragment, false) super.onResume() context?.components?.core?.let { @@ -461,14 +466,7 @@ class BrowserFragment : Fragment(), BackHandler, CoroutineScope { } getSessionById()?.let { (activity as HomeActivity).updateThemeForSession(it) } (activity as AppCompatActivity).supportActionBar?.hide() - } - @Suppress("ComplexMethod") - override fun onStart() { - super.onStart() - sessionObserver = subscribeToSession() - sessionManagerObserver = subscribeToSessions() - getSessionById()?.let { updateBookmarkState(it) } getAutoDisposeObservable() .subscribe { when (it) { @@ -551,6 +549,7 @@ class BrowserFragment : Fragment(), BackHandler, CoroutineScope { } } } + assignSitePermissionsRules() } 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 c01061dd0..6ff6c8ebc 100644 --- a/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt @@ -266,24 +266,15 @@ class HomeFragment : Fragment(), CoroutineScope, AccountObserver { override fun onResume() { super.onResume() - (activity as AppCompatActivity).supportActionBar?.hide() - requireComponents.backgroundServices.accountManager.register(this, owner = this) - } - - @SuppressWarnings("ComplexMethod") - override fun onStart() { - super.onStart() - if (isAdded) { - getAutoDisposeObservable() - .subscribe { - when (it) { - is SessionControlAction.Tab -> handleTabAction(it.action) - is SessionControlAction.Collection -> handleCollectionAction(it.action) - is SessionControlAction.Onboarding -> handleOnboardingAction(it.action) - } + getAutoDisposeObservable() + .subscribe { + when (it) { + is SessionControlAction.Tab -> handleTabAction(it.action) + is SessionControlAction.Collection -> handleCollectionAction(it.action) + is SessionControlAction.Onboarding -> handleOnboardingAction(it.action) } - } + } getManagedEmitter().onNext( SessionControlChange.Change( @@ -293,6 +284,14 @@ class HomeFragment : Fragment(), CoroutineScope, AccountObserver { ) ) + (activity as AppCompatActivity).supportActionBar?.hide() + + requireComponents.backgroundServices.accountManager.register(this, owner = this) + } + + @SuppressWarnings("ComplexMethod") + override fun onStart() { + super.onStart() requireComponents.core.tabCollectionStorage.register(collectionStorageObserver, this) sessionObserver.onStart() tabCollectionObserver = subscribeToTabCollections() diff --git a/app/src/main/java/org/mozilla/fenix/search/SearchFragment.kt b/app/src/main/java/org/mozilla/fenix/search/SearchFragment.kt index ab63ff369..aa3fdc1f1 100644 --- a/app/src/main/java/org/mozilla/fenix/search/SearchFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/search/SearchFragment.kt @@ -194,6 +194,9 @@ class SearchFragment : Fragment(), BackHandler { override fun onResume() { super.onResume() + subscribeToSearchActions() + subscribeToAwesomeBarActions() + if (!permissionDidUpdate) { getManagedEmitter().onNext(SearchChange.ToolbarRequestedFocus) } @@ -206,12 +209,6 @@ class SearchFragment : Fragment(), BackHandler { getManagedEmitter().onNext(SearchChange.ToolbarClearedFocus) } - override fun onStart() { - super.onStart() - subscribeToSearchActions() - subscribeToAwesomeBarActions() - } - override fun onBackPressed(): Boolean { return when { qrFeature.onBackPressed() -> {