From ca8362f8b38d0fb11d035264a030be8ffc35223b Mon Sep 17 00:00:00 2001 From: HissPirat Date: Sun, 23 Aug 2020 11:39:48 +0200 Subject: [PATCH] #2319 search is popped after item opening --- .../java/org/kiwix/kiwixmobile/main/KiwixMainActivity.kt | 5 +++++ .../org/kiwix/kiwixmobile/core/main/CoreMainActivity.kt | 4 +--- .../core/search/viewmodel/effects/OpenSearchItem.kt | 7 ++----- .../kiwix/kiwixmobile/custom/main/CustomMainActivity.kt | 4 ++++ 4 files changed, 12 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/org/kiwix/kiwixmobile/main/KiwixMainActivity.kt b/app/src/main/java/org/kiwix/kiwixmobile/main/KiwixMainActivity.kt index eed7901b3..be6a18584 100644 --- a/app/src/main/java/org/kiwix/kiwixmobile/main/KiwixMainActivity.kt +++ b/app/src/main/java/org/kiwix/kiwixmobile/main/KiwixMainActivity.kt @@ -44,6 +44,7 @@ import org.kiwix.kiwixmobile.core.main.ZIM_FILE_URI_KEY import org.kiwix.kiwixmobile.core.utils.titleToUrl import org.kiwix.kiwixmobile.core.utils.urlSuffixToParsableUrl import org.kiwix.kiwixmobile.kiwixActivityComponent +import org.kiwix.kiwixmobile.nav.destination.reader.KiwixReaderFragmentDirections const val NAVIGATE_TO_ZIM_HOST_FRAGMENT = "navigate_to_zim_host_fragment" @@ -142,6 +143,10 @@ class KiwixMainActivity : CoreMainActivity() { navigate(R.id.zimHostFragment) } + override fun openSearch() { + navigate(KiwixReaderFragmentDirections.actionReaderFragmentToSearchFragment()) + } + override fun openPage(pageUrl: String, zimFilePath: String, shouldOpenInNewTab: Boolean) { navigate( R.id.readerFragment, diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/main/CoreMainActivity.kt b/core/src/main/java/org/kiwix/kiwixmobile/core/main/CoreMainActivity.kt index 6de28422a..516c7cf53 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/main/CoreMainActivity.kt +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/main/CoreMainActivity.kt @@ -255,9 +255,7 @@ abstract class CoreMainActivity : BaseActivity(), WebViewProvider { navigate(historyFragmentResId) } - fun openSearch() { - navigate(searchFragmentResId) - } + abstract fun openSearch() private fun openBookmarks() { navigate(bookmarksFragmentResId) diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/search/viewmodel/effects/OpenSearchItem.kt b/core/src/main/java/org/kiwix/kiwixmobile/core/search/viewmodel/effects/OpenSearchItem.kt index a2c5ee0ad..d540dd97e 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/search/viewmodel/effects/OpenSearchItem.kt +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/search/viewmodel/effects/OpenSearchItem.kt @@ -20,6 +20,7 @@ package org.kiwix.kiwixmobile.core.search.viewmodel.effects import androidx.appcompat.app.AppCompatActivity import org.kiwix.kiwixmobile.core.base.SideEffect +import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.popNavigationBackstack import org.kiwix.kiwixmobile.core.main.CoreMainActivity import org.kiwix.kiwixmobile.core.search.adapter.SearchListItem @@ -28,11 +29,7 @@ data class OpenSearchItem( private val openInNewTab: Boolean = false ) : SideEffect { override fun invokeWith(activity: AppCompatActivity) { - // activity.setResult( - // Activity.RESULT_OK, - // Intent().putExtra(TAG_FILE_SEARCHED, searchListItem.value) - // .putExtra(TAG_FILE_SEARCHED_NEW_TAB, openInNewTab) - // ) + activity.popNavigationBackstack() (activity as CoreMainActivity).openSearchItem(searchListItem.value, openInNewTab) } } diff --git a/custom/src/main/java/org/kiwix/kiwixmobile/custom/main/CustomMainActivity.kt b/custom/src/main/java/org/kiwix/kiwixmobile/custom/main/CustomMainActivity.kt index f4e18a1ad..81c12605e 100644 --- a/custom/src/main/java/org/kiwix/kiwixmobile/custom/main/CustomMainActivity.kt +++ b/custom/src/main/java/org/kiwix/kiwixmobile/custom/main/CustomMainActivity.kt @@ -82,6 +82,10 @@ class CustomMainActivity : CoreMainActivity() { .isVisible = false } + override fun openSearch() { + TODO("Not yet implemented") + } + override fun openPage(pageUrl: String, zimFilePath: String, shouldOpenInNewTab: Boolean) { val bundle = bundleOf(PAGE_URL_KEY to pageUrl, ZIM_FILE_URI_KEY to zimFilePath) navigate(R.id.customReaderFragment, bundle)