#2238 updated lifecycle of bookmark & history viewmodels

This commit is contained in:
HissPirat 2020-07-31 13:54:52 +02:00
parent b6893942dc
commit 2508061c2a
12 changed files with 72 additions and 45 deletions

View File

@ -34,7 +34,7 @@ import kotlinx.android.synthetic.main.activity_kiwix_main.drawer_nav_view
import kotlinx.android.synthetic.main.activity_kiwix_main.navigation_container import kotlinx.android.synthetic.main.activity_kiwix_main.navigation_container
import kotlinx.android.synthetic.main.activity_kiwix_main.reader_drawer_nav_view import kotlinx.android.synthetic.main.activity_kiwix_main.reader_drawer_nav_view
import org.kiwix.kiwixmobile.R import org.kiwix.kiwixmobile.R
import org.kiwix.kiwixmobile.core.base.BaseFragmentActivityExtensions import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions
import org.kiwix.kiwixmobile.core.di.components.CoreComponent import org.kiwix.kiwixmobile.core.di.components.CoreComponent
import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.intent import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.intent
import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.start import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.start
@ -117,7 +117,7 @@ class KiwixMainActivity : CoreMainActivity() {
override fun onNewIntent(intent: Intent) { override fun onNewIntent(intent: Intent) {
super.onNewIntent(intent) super.onNewIntent(intent)
supportFragmentManager.fragments.filterIsInstance<BaseFragmentActivityExtensions>().forEach { supportFragmentManager.fragments.filterIsInstance<FragmentActivityExtensions>().forEach {
it.onNewIntent(intent, this) it.onNewIntent(intent, this)
} }
} }

View File

@ -23,14 +23,14 @@ import android.view.ActionMode
import android.view.Menu import android.view.Menu
import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.app.AppCompatActivity
import androidx.navigation.fragment.NavHostFragment import androidx.navigation.fragment.NavHostFragment
import org.kiwix.kiwixmobile.core.base.BaseFragmentActivityExtensions import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions
import org.kiwix.kiwixmobile.core.base.BaseFragmentActivityExtensions.Super import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions.Super
import org.kiwix.kiwixmobile.core.base.BaseFragmentActivityExtensions.Super.ShouldCall import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions.Super.ShouldCall
import org.kiwix.kiwixmobile.core.base.BaseFragmentActivityExtensions.Super.ShouldNotCall import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions.Super.ShouldNotCall
import org.kiwix.kiwixmobile.core.main.KiwixWebView import org.kiwix.kiwixmobile.core.main.KiwixWebView
import org.kiwix.kiwixmobile.core.main.WebViewProvider import org.kiwix.kiwixmobile.core.main.WebViewProvider
class NavigationHostFragment : NavHostFragment(), WebViewProvider, BaseFragmentActivityExtensions { class NavigationHostFragment : NavHostFragment(), WebViewProvider, FragmentActivityExtensions {
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data) super.onActivityResult(requestCode, resultCode, data)
childFragmentManager.fragments.forEach { it.onActivityResult(requestCode, resultCode, data) } childFragmentManager.fragments.forEach { it.onActivityResult(requestCode, resultCode, data) }
@ -57,7 +57,7 @@ class NavigationHostFragment : NavHostFragment(), WebViewProvider, BaseFragmentA
activity: AppCompatActivity activity: AppCompatActivity
): Super { ): Super {
var result = ShouldCall var result = ShouldCall
childFragmentManager.fragments.filterIsInstance<BaseFragmentActivityExtensions>().forEach { childFragmentManager.fragments.filterIsInstance<FragmentActivityExtensions>().forEach {
if (it.onActionModeStarted(actionMode, activity) == ShouldNotCall) { if (it.onActionModeStarted(actionMode, activity) == ShouldNotCall) {
result = ShouldNotCall result = ShouldNotCall
} }
@ -70,7 +70,7 @@ class NavigationHostFragment : NavHostFragment(), WebViewProvider, BaseFragmentA
activity: AppCompatActivity activity: AppCompatActivity
): Super { ): Super {
var result = ShouldCall var result = ShouldCall
childFragmentManager.fragments.filterIsInstance<BaseFragmentActivityExtensions>().forEach { childFragmentManager.fragments.filterIsInstance<FragmentActivityExtensions>().forEach {
if (it.onActionModeFinished(actionMode, activity) == ShouldNotCall) { if (it.onActionModeFinished(actionMode, activity) == ShouldNotCall) {
result = ShouldNotCall result = ShouldNotCall
} }
@ -80,7 +80,7 @@ class NavigationHostFragment : NavHostFragment(), WebViewProvider, BaseFragmentA
override fun onBackPressed(activity: AppCompatActivity): Super { override fun onBackPressed(activity: AppCompatActivity): Super {
var result = ShouldCall var result = ShouldCall
childFragmentManager.fragments.filterIsInstance<BaseFragmentActivityExtensions>().forEach { childFragmentManager.fragments.filterIsInstance<FragmentActivityExtensions>().forEach {
if (it.onBackPressed(activity) == ShouldNotCall) { if (it.onBackPressed(activity) == ShouldNotCall) {
result = ShouldNotCall result = ShouldNotCall
} }
@ -93,7 +93,7 @@ class NavigationHostFragment : NavHostFragment(), WebViewProvider, BaseFragmentA
activity: AppCompatActivity activity: AppCompatActivity
): Super { ): Super {
var result = ShouldCall var result = ShouldCall
childFragmentManager.fragments.filterIsInstance<BaseFragmentActivityExtensions>().forEach { childFragmentManager.fragments.filterIsInstance<FragmentActivityExtensions>().forEach {
if (it.onNewIntent(intent, activity) == ShouldNotCall) { if (it.onNewIntent(intent, activity) == ShouldNotCall) {
result = ShouldNotCall result = ShouldNotCall
} }
@ -106,7 +106,7 @@ class NavigationHostFragment : NavHostFragment(), WebViewProvider, BaseFragmentA
activity: AppCompatActivity activity: AppCompatActivity
): Super { ): Super {
var result = ShouldCall var result = ShouldCall
childFragmentManager.fragments.filterIsInstance<BaseFragmentActivityExtensions>().forEach { childFragmentManager.fragments.filterIsInstance<FragmentActivityExtensions>().forEach {
if (it.onCreateOptionsMenu(menu, activity) == ShouldNotCall) { if (it.onCreateOptionsMenu(menu, activity) == ShouldNotCall) {
result = ShouldNotCall result = ShouldNotCall
} }

View File

@ -30,7 +30,7 @@ import androidx.appcompat.widget.SearchView
import androidx.appcompat.widget.Toolbar import androidx.appcompat.widget.Toolbar
import org.kiwix.kiwixmobile.R import org.kiwix.kiwixmobile.R
import org.kiwix.kiwixmobile.core.base.BaseActivity import org.kiwix.kiwixmobile.core.base.BaseActivity
import org.kiwix.kiwixmobile.core.base.BaseFragmentActivityExtensions import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions
import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.start import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.start
import org.kiwix.kiwixmobile.core.main.CoreMainActivity import org.kiwix.kiwixmobile.core.main.CoreMainActivity
import org.kiwix.kiwixmobile.core.utils.SimpleTextListener import org.kiwix.kiwixmobile.core.utils.SimpleTextListener
@ -38,7 +38,7 @@ import org.kiwix.kiwixmobile.kiwixActivityComponent
import org.kiwix.kiwixmobile.language.LanguageActivity import org.kiwix.kiwixmobile.language.LanguageActivity
import org.kiwix.kiwixmobile.zim_manager.library_view.LibraryFragment import org.kiwix.kiwixmobile.zim_manager.library_view.LibraryFragment
class OnlineLibraryFragment : LibraryFragment(), BaseFragmentActivityExtensions { class OnlineLibraryFragment : LibraryFragment(), FragmentActivityExtensions {
override fun inject(baseActivity: BaseActivity) { override fun inject(baseActivity: BaseActivity) {
baseActivity.kiwixActivityComponent.inject(this) baseActivity.kiwixActivityComponent.inject(this)
@ -57,9 +57,9 @@ class OnlineLibraryFragment : LibraryFragment(), BaseFragmentActivityExtensions
zimManageViewModel.requestFiltering.onNext("") zimManageViewModel.requestFiltering.onNext("")
} }
override fun onBackPressed(activity: AppCompatActivity): BaseFragmentActivityExtensions.Super { override fun onBackPressed(activity: AppCompatActivity): FragmentActivityExtensions.Super {
getActivity()?.finish() getActivity()?.finish()
return BaseFragmentActivityExtensions.Super.ShouldNotCall return FragmentActivityExtensions.Super.ShouldNotCall
} }
override fun onOptionsItemSelected(item: MenuItem): Boolean { override fun onOptionsItemSelected(item: MenuItem): Boolean {

View File

@ -40,9 +40,9 @@ import org.json.JSONArray
import org.kiwix.kiwixmobile.R import org.kiwix.kiwixmobile.R
import org.kiwix.kiwixmobile.core.R.anim import org.kiwix.kiwixmobile.core.R.anim
import org.kiwix.kiwixmobile.core.base.BaseActivity import org.kiwix.kiwixmobile.core.base.BaseActivity
import org.kiwix.kiwixmobile.core.base.BaseFragmentActivityExtensions.Super import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions.Super
import org.kiwix.kiwixmobile.core.base.BaseFragmentActivityExtensions.Super.ShouldCall import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions.Super.ShouldCall
import org.kiwix.kiwixmobile.core.base.BaseFragmentActivityExtensions.Super.ShouldNotCall import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions.Super.ShouldNotCall
import org.kiwix.kiwixmobile.core.extensions.getAttribute import org.kiwix.kiwixmobile.core.extensions.getAttribute
import org.kiwix.kiwixmobile.core.extensions.setImageDrawableCompat import org.kiwix.kiwixmobile.core.extensions.setImageDrawableCompat
import org.kiwix.kiwixmobile.core.extensions.snack import org.kiwix.kiwixmobile.core.extensions.snack
@ -82,9 +82,7 @@ class KiwixReaderFragment : CoreReaderFragment() {
activity.supportActionBar!!.setDisplayHomeAsUpEnabled(true) activity.supportActionBar!!.setDisplayHomeAsUpEnabled(true)
activity.setupDrawerToggle(toolbar) activity.setupDrawerToggle(toolbar)
setFragmentContainerBottomMarginToSizeOfNavBar() setFragmentContainerBottomMarginToSizeOfNavBar()
if (arguments != null) { openPageInBookFromNavigationArguments()
openPageInBookFromNavigationArguments()
}
} }
private fun openPageInBookFromNavigationArguments() { private fun openPageInBookFromNavigationArguments() {

View File

@ -22,9 +22,9 @@ import android.content.Intent
import android.view.ActionMode import android.view.ActionMode
import android.view.Menu import android.view.Menu
import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.app.AppCompatActivity
import org.kiwix.kiwixmobile.core.base.BaseFragmentActivityExtensions.Super.ShouldCall import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions.Super.ShouldCall
interface BaseFragmentActivityExtensions { interface FragmentActivityExtensions {
enum class Super { enum class Super {
ShouldCall, ShouldCall,
ShouldNotCall ShouldNotCall

View File

@ -0,0 +1,30 @@
/*
* Kiwix Android
* Copyright (c) 2020 Kiwix <android.kiwix.org>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
package org.kiwix.kiwixmobile.core.extensions
import androidx.fragment.app.Fragment
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.ViewModelProviders
inline fun <reified T : ViewModel> Fragment.viewModel(
viewModelFactory: ViewModelProvider.Factory
) =
ViewModelProviders.of(this, viewModelFactory)
.get(T::class.java)

View File

@ -29,7 +29,7 @@ import androidx.navigation.NavController
import androidx.navigation.NavDirections import androidx.navigation.NavDirections
import org.kiwix.kiwixmobile.core.R import org.kiwix.kiwixmobile.core.R
import org.kiwix.kiwixmobile.core.base.BaseActivity import org.kiwix.kiwixmobile.core.base.BaseActivity
import org.kiwix.kiwixmobile.core.base.BaseFragmentActivityExtensions import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions
import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.start import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.start
import org.kiwix.kiwixmobile.core.extensions.browserIntent import org.kiwix.kiwixmobile.core.extensions.browserIntent
import org.kiwix.kiwixmobile.core.help.HelpActivity import org.kiwix.kiwixmobile.core.help.HelpActivity
@ -65,21 +65,21 @@ abstract class CoreMainActivity : BaseActivity(), WebViewProvider {
override fun onActionModeStarted(mode: ActionMode) { override fun onActionModeStarted(mode: ActionMode) {
super.onActionModeStarted(mode) super.onActionModeStarted(mode)
activeFragments().filterIsInstance<BaseFragmentActivityExtensions>().forEach { activeFragments().filterIsInstance<FragmentActivityExtensions>().forEach {
it.onActionModeStarted(mode, this) it.onActionModeStarted(mode, this)
} }
} }
override fun onActionModeFinished(mode: ActionMode) { override fun onActionModeFinished(mode: ActionMode) {
super.onActionModeFinished(mode) super.onActionModeFinished(mode)
activeFragments().filterIsInstance<BaseFragmentActivityExtensions>().forEach { activeFragments().filterIsInstance<FragmentActivityExtensions>().forEach {
it.onActionModeFinished(mode, this) it.onActionModeFinished(mode, this)
} }
} }
override fun onNewIntent(intent: Intent) { override fun onNewIntent(intent: Intent) {
super.onNewIntent(intent) super.onNewIntent(intent)
activeFragments().filterIsInstance<BaseFragmentActivityExtensions>().forEach { activeFragments().filterIsInstance<FragmentActivityExtensions>().forEach {
it.onNewIntent(intent, this) it.onNewIntent(intent, this)
} }
} }
@ -120,11 +120,11 @@ abstract class CoreMainActivity : BaseActivity(), WebViewProvider {
closeNavigationDrawer() closeNavigationDrawer()
return return
} }
if (activeFragments().filterIsInstance<BaseFragmentActivityExtensions>().isEmpty()) { if (activeFragments().filterIsInstance<FragmentActivityExtensions>().isEmpty()) {
return super.onBackPressed() return super.onBackPressed()
} }
activeFragments().filterIsInstance<BaseFragmentActivityExtensions>().forEach { activeFragments().filterIsInstance<FragmentActivityExtensions>().forEach {
if (it.onBackPressed(this) == BaseFragmentActivityExtensions.Super.ShouldCall) { if (it.onBackPressed(this) == FragmentActivityExtensions.Super.ShouldCall) {
super.onBackPressed() super.onBackPressed()
} }
} }
@ -140,7 +140,7 @@ abstract class CoreMainActivity : BaseActivity(), WebViewProvider {
navController.navigate(action) navController.navigate(action)
} }
private fun navigate(fragmentId: Int) { fun navigate(fragmentId: Int) {
navController.navigate(fragmentId) navController.navigate(fragmentId)
} }

View File

@ -99,14 +99,13 @@ import org.kiwix.kiwixmobile.core.R;
import org.kiwix.kiwixmobile.core.R2; import org.kiwix.kiwixmobile.core.R2;
import org.kiwix.kiwixmobile.core.StorageObserver; import org.kiwix.kiwixmobile.core.StorageObserver;
import org.kiwix.kiwixmobile.core.base.BaseFragment; import org.kiwix.kiwixmobile.core.base.BaseFragment;
import org.kiwix.kiwixmobile.core.base.BaseFragmentActivityExtensions; import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions;
import org.kiwix.kiwixmobile.core.dao.NewBookDao; import org.kiwix.kiwixmobile.core.dao.NewBookDao;
import org.kiwix.kiwixmobile.core.dao.NewBookmarksDao; import org.kiwix.kiwixmobile.core.dao.NewBookmarksDao;
import org.kiwix.kiwixmobile.core.dao.entities.BookOnDiskEntity; import org.kiwix.kiwixmobile.core.dao.entities.BookOnDiskEntity;
import org.kiwix.kiwixmobile.core.extensions.ContextExtensionsKt; import org.kiwix.kiwixmobile.core.extensions.ContextExtensionsKt;
import org.kiwix.kiwixmobile.core.extensions.ViewExtensionsKt; import org.kiwix.kiwixmobile.core.extensions.ViewExtensionsKt;
import org.kiwix.kiwixmobile.core.extensions.ViewGroupExtensions; import org.kiwix.kiwixmobile.core.extensions.ViewGroupExtensions;
import org.kiwix.kiwixmobile.core.page.bookmark.BookmarksFragment;
import org.kiwix.kiwixmobile.core.page.bookmark.adapter.BookmarkItem; import org.kiwix.kiwixmobile.core.page.bookmark.adapter.BookmarkItem;
import org.kiwix.kiwixmobile.core.reader.ZimFileReader; import org.kiwix.kiwixmobile.core.reader.ZimFileReader;
import org.kiwix.kiwixmobile.core.reader.ZimReaderContainer; import org.kiwix.kiwixmobile.core.reader.ZimReaderContainer;
@ -153,7 +152,7 @@ import static org.kiwix.kiwixmobile.core.utils.SharedPreferenceUtil.PREF_KIWIX_M
public abstract class CoreReaderFragment extends BaseFragment public abstract class CoreReaderFragment extends BaseFragment
implements WebViewCallback, implements WebViewCallback,
MainMenu.MenuClickListener, BaseFragmentActivityExtensions, WebViewProvider { MainMenu.MenuClickListener, FragmentActivityExtensions, WebViewProvider {
protected final List<KiwixWebView> webViewList = new ArrayList<>(); protected final List<KiwixWebView> webViewList = new ArrayList<>();
private final BehaviorProcessor<String> webUrlsProcessor = BehaviorProcessor.create(); private final BehaviorProcessor<String> webUrlsProcessor = BehaviorProcessor.create();
@ -1030,8 +1029,8 @@ public abstract class CoreReaderFragment extends BaseFragment
@OnLongClick(R2.id.bottom_toolbar_bookmark) @OnLongClick(R2.id.bottom_toolbar_bookmark)
boolean goToBookmarks() { boolean goToBookmarks() {
saveTabStates(); saveTabStates();
Intent intentBookmarks = new Intent(getActivity(), BookmarksFragment.class); CoreMainActivity parentActivity = (CoreMainActivity) requireActivity();
startActivityForResult(intentBookmarks, BOOKMARK_CHOSEN_REQUEST); parentActivity.navigate(parentActivity.getBookmarksFragmentResId());
return true; return true;
} }

View File

@ -41,7 +41,7 @@ import kotlinx.android.synthetic.main.fragment_page.recycler_view
import kotlinx.android.synthetic.main.layout_toolbar.toolbar import kotlinx.android.synthetic.main.layout_toolbar.toolbar
import org.kiwix.kiwixmobile.core.R import org.kiwix.kiwixmobile.core.R
import org.kiwix.kiwixmobile.core.base.BaseFragment import org.kiwix.kiwixmobile.core.base.BaseFragment
import org.kiwix.kiwixmobile.core.base.BaseFragmentActivityExtensions import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions
import org.kiwix.kiwixmobile.core.main.CoreMainActivity import org.kiwix.kiwixmobile.core.main.CoreMainActivity
import org.kiwix.kiwixmobile.core.page.adapter.OnItemClickListener import org.kiwix.kiwixmobile.core.page.adapter.OnItemClickListener
import org.kiwix.kiwixmobile.core.page.adapter.Page import org.kiwix.kiwixmobile.core.page.adapter.Page
@ -53,7 +53,7 @@ import org.kiwix.kiwixmobile.core.utils.SharedPreferenceUtil
import org.kiwix.kiwixmobile.core.utils.SimpleTextListener import org.kiwix.kiwixmobile.core.utils.SimpleTextListener
import javax.inject.Inject import javax.inject.Inject
abstract class PageFragment : OnItemClickListener, BaseFragment(), BaseFragmentActivityExtensions { abstract class PageFragment : OnItemClickListener, BaseFragment(), FragmentActivityExtensions {
abstract val pageViewModel: PageViewModel<*, *> abstract val pageViewModel: PageViewModel<*, *>
@Inject lateinit var viewModelFactory: ViewModelProvider.Factory @Inject lateinit var viewModelFactory: ViewModelProvider.Factory
@Inject lateinit var sharedPreferenceUtil: SharedPreferenceUtil @Inject lateinit var sharedPreferenceUtil: SharedPreferenceUtil

View File

@ -3,7 +3,7 @@ package org.kiwix.kiwixmobile.core.page.bookmark
import org.kiwix.kiwixmobile.core.R import org.kiwix.kiwixmobile.core.R
import org.kiwix.kiwixmobile.core.base.BaseActivity import org.kiwix.kiwixmobile.core.base.BaseActivity
import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.coreActivityComponent import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.coreActivityComponent
import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.viewModel import org.kiwix.kiwixmobile.core.extensions.viewModel
import org.kiwix.kiwixmobile.core.page.PageFragment import org.kiwix.kiwixmobile.core.page.PageFragment
import org.kiwix.kiwixmobile.core.page.adapter.PageAdapter import org.kiwix.kiwixmobile.core.page.adapter.PageAdapter
import org.kiwix.kiwixmobile.core.page.adapter.PageDelegate.PageItemDelegate import org.kiwix.kiwixmobile.core.page.adapter.PageDelegate.PageItemDelegate
@ -11,7 +11,7 @@ import org.kiwix.kiwixmobile.core.page.bookmark.viewmodel.BookmarkViewModel
class BookmarksFragment : PageFragment() { class BookmarksFragment : PageFragment() {
override val pageViewModel by lazy { override val pageViewModel by lazy {
requireActivity().viewModel<BookmarkViewModel>( viewModel<BookmarkViewModel>(
viewModelFactory viewModelFactory
) )
} }

View File

@ -3,7 +3,7 @@ package org.kiwix.kiwixmobile.core.page.history
import org.kiwix.kiwixmobile.core.R import org.kiwix.kiwixmobile.core.R
import org.kiwix.kiwixmobile.core.base.BaseActivity import org.kiwix.kiwixmobile.core.base.BaseActivity
import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.coreActivityComponent import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.coreActivityComponent
import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.viewModel import org.kiwix.kiwixmobile.core.extensions.viewModel
import org.kiwix.kiwixmobile.core.page.PageFragment import org.kiwix.kiwixmobile.core.page.PageFragment
import org.kiwix.kiwixmobile.core.page.adapter.PageAdapter import org.kiwix.kiwixmobile.core.page.adapter.PageAdapter
import org.kiwix.kiwixmobile.core.page.adapter.PageDelegate.HistoryDateDelegate import org.kiwix.kiwixmobile.core.page.adapter.PageDelegate.HistoryDateDelegate
@ -14,7 +14,7 @@ const val USER_CLEARED_HISTORY: String = "user_cleared_history"
class HistoryFragment : PageFragment() { class HistoryFragment : PageFragment() {
override val pageViewModel by lazy { override val pageViewModel by lazy {
requireActivity().viewModel<HistoryViewModel>( viewModel<HistoryViewModel>(
viewModelFactory viewModelFactory
) )
} }

View File

@ -36,8 +36,8 @@ import androidx.core.app.ActivityCompat
import androidx.core.content.ContextCompat import androidx.core.content.ContextCompat
import androidx.drawerlayout.widget.DrawerLayout import androidx.drawerlayout.widget.DrawerLayout
import org.kiwix.kiwixmobile.core.base.BaseActivity import org.kiwix.kiwixmobile.core.base.BaseActivity
import org.kiwix.kiwixmobile.core.base.BaseFragmentActivityExtensions.Super import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions.Super
import org.kiwix.kiwixmobile.core.base.BaseFragmentActivityExtensions.Super.ShouldCall import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions.Super.ShouldCall
import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.start import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.start
import org.kiwix.kiwixmobile.core.main.CoreMainActivity import org.kiwix.kiwixmobile.core.main.CoreMainActivity
import org.kiwix.kiwixmobile.core.main.CoreReaderFragment import org.kiwix.kiwixmobile.core.main.CoreReaderFragment