diff --git a/app/src/main/java/org/kiwix/kiwixmobile/zim_manager/ZimManageViewModel.kt b/app/src/main/java/org/kiwix/kiwixmobile/zim_manager/ZimManageViewModel.kt index b6f7b5412..b81e71806 100644 --- a/app/src/main/java/org/kiwix/kiwixmobile/zim_manager/ZimManageViewModel.kt +++ b/app/src/main/java/org/kiwix/kiwixmobile/zim_manager/ZimManageViewModel.kt @@ -110,7 +110,7 @@ class ZimManageViewModel @Inject constructor( val requestFiltering = BehaviorProcessor.createDefault("") val currentPage = PublishProcessor.create() - val libraryFragmentIsVisible = currentPage.filter { it == 1 } + val libraryTabIsVisible = currentPage.filter { it == 1 } private val compositeDisposable = CompositeDisposable() diff --git a/app/src/main/java/org/kiwix/kiwixmobile/zim_manager/fileselect_view/ZimFileSelectFragment.kt b/app/src/main/java/org/kiwix/kiwixmobile/zim_manager/fileselect_view/ZimFileSelectFragment.kt index c12c8a604..86becaa26 100644 --- a/app/src/main/java/org/kiwix/kiwixmobile/zim_manager/fileselect_view/ZimFileSelectFragment.kt +++ b/app/src/main/java/org/kiwix/kiwixmobile/zim_manager/fileselect_view/ZimFileSelectFragment.kt @@ -112,7 +112,11 @@ class ZimFileSelectFragment : BaseFragment() { zimManageViewModel.fileSelectActions.offer(FileSelectActions.RestartActionMode) } - disposable.add(zimManageViewModel.libraryFragmentIsVisible.subscribe { actionMode?.finish() }) + disposable.add(zimManageViewModel.libraryTabIsVisible.subscribe { finishActionMode() }) + } + + fun finishActionMode() { + actionMode?.finish() } private fun sideEffects() = zimManageViewModel.sideEffects.subscribe( diff --git a/app/src/test/java/org/kiwix/kiwixmobile/zim_manager/ZimManageViewModelTest.kt b/app/src/test/java/org/kiwix/kiwixmobile/zim_manager/ZimManageViewModelTest.kt index ec7eb8ef2..5c45d0f54 100644 --- a/app/src/test/java/org/kiwix/kiwixmobile/zim_manager/ZimManageViewModelTest.kt +++ b/app/src/test/java/org/kiwix/kiwixmobile/zim_manager/ZimManageViewModelTest.kt @@ -517,4 +517,18 @@ class ZimManageViewModelTest { .assertValues(StartMultiSelection(viewModel.fileSelectActions)) } } + + @Test + fun `finish actionMode on tab change to online section`() { + viewModel.libraryTabIsVisible.test() + .also { viewModel.currentPage.offer(1) } + .assertValue(1) + } + + @Test + fun `no change in actionMode`() { + viewModel.libraryTabIsVisible.test() + .also { viewModel.currentPage.offer(0) } + .assertEmpty() + } }