From fdd3d29cd40190a1c9dd0c6bb1a8707645701e3b Mon Sep 17 00:00:00 2001 From: Sebastian Kaspari Date: Mon, 24 Feb 2020 11:00:56 +0100 Subject: [PATCH] Implement new feature-tabs API. --- .../java/org/mozilla/fenix/search/SearchController.kt | 8 ++++++++ .../java/org/mozilla/fenix/search/SearchInteractor.kt | 4 ++++ .../mozilla/fenix/search/awesomebar/AwesomeBarView.kt | 9 +++++++++ 3 files changed, 21 insertions(+) diff --git a/app/src/main/java/org/mozilla/fenix/search/SearchController.kt b/app/src/main/java/org/mozilla/fenix/search/SearchController.kt index 0b8521bde..c5835d627 100644 --- a/app/src/main/java/org/mozilla/fenix/search/SearchController.kt +++ b/app/src/main/java/org/mozilla/fenix/search/SearchController.kt @@ -34,6 +34,7 @@ interface SearchController { fun handleSearchShortcutEngineSelected(searchEngine: SearchEngine) fun handleClickSearchEngineSettings() fun handleExistingSessionSelected(session: Session) + fun handleExistingSessionSelected(tabId: String) fun handleSearchShortcutsButtonClicked() } @@ -151,4 +152,11 @@ class DefaultSearchController( from = BrowserDirection.FromSearch ) } + + override fun handleExistingSessionSelected(tabId: String) { + val session = context.components.core.sessionManager.findSessionById(tabId) + if (session != null) { + handleExistingSessionSelected(session) + } + } } diff --git a/app/src/main/java/org/mozilla/fenix/search/SearchInteractor.kt b/app/src/main/java/org/mozilla/fenix/search/SearchInteractor.kt index e9ffc74ca..dc4080aa4 100644 --- a/app/src/main/java/org/mozilla/fenix/search/SearchInteractor.kt +++ b/app/src/main/java/org/mozilla/fenix/search/SearchInteractor.kt @@ -52,4 +52,8 @@ class SearchInteractor( override fun onExistingSessionSelected(session: Session) { searchController.handleExistingSessionSelected(session) } + + override fun onExistingSessionSelected(tabId: String) { + searchController.handleExistingSessionSelected(tabId) + } } diff --git a/app/src/main/java/org/mozilla/fenix/search/awesomebar/AwesomeBarView.kt b/app/src/main/java/org/mozilla/fenix/search/awesomebar/AwesomeBarView.kt index fc739bfbc..fad871517 100644 --- a/app/src/main/java/org/mozilla/fenix/search/awesomebar/AwesomeBarView.kt +++ b/app/src/main/java/org/mozilla/fenix/search/awesomebar/AwesomeBarView.kt @@ -69,6 +69,11 @@ interface AwesomeBarInteractor { */ fun onExistingSessionSelected(session: Session) + /** + * Called whenever an existing session is selected from the sessionSuggestionProvider + */ + fun onExistingSessionSelected(tabId: String) + /** * Called whenever the Shortcuts button is clicked */ @@ -120,6 +125,10 @@ class AwesomeBarView( override fun invoke(session: Session) { interactor.onExistingSessionSelected(session) } + + override fun invoke(tabId: String) { + interactor.onExistingSessionSelected(tabId) + } } init {