From 30807f9d8b1c35768ec8d1b285c4a4b42075d6da Mon Sep 17 00:00:00 2001 From: ekager Date: Thu, 23 May 2019 22:07:03 -0700 Subject: [PATCH] [fenix] Cancel pending findBookmarkJob if another is started --- .../main/java/org/mozilla/fenix/browser/BrowserFragment.kt | 5 +++-- 1 file changed, 3 insertions(+), 2 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 401749bcd6..4d35f1311e 100644 --- a/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt @@ -108,6 +108,7 @@ class BrowserFragment : Fragment(), BackHandler, CoroutineScope { private val fullScreenFeature = ViewBoundFeatureWrapper() private val thumbnailsFeature = ViewBoundFeatureWrapper() private val customTabsIntegration = ViewBoundFeatureWrapper() + private var findBookmarkJob: Job? = null private lateinit var job: Job var customTabSessionId: String? = null @@ -742,7 +743,6 @@ class BrowserFragment : Fragment(), BackHandler, CoroutineScope { override fun onUrlChanged(session: Session, url: String) { super.onUrlChanged(session, url) updateBookmarkState(session) - } } getSessionById()?.register(observer) @@ -769,7 +769,8 @@ class BrowserFragment : Fragment(), BackHandler, CoroutineScope { } private fun updateBookmarkState(session: Session) { - launch { + if (findBookmarkJob?.isActive == true) findBookmarkJob?.cancel() + findBookmarkJob = launch { val found = findBookmarkedURL(session) launch(Main) { getManagedEmitter()