mirror of
https://github.com/kiwix/kiwix-android.git
synced 2025-09-11 16:37:18 -04:00
#2253 merge with history bookmarks 2238
This commit is contained in:
commit
c43f1d69be
@ -31,13 +31,11 @@ import org.junit.Test;
|
|||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.kiwix.kiwixmobile.core.R;
|
import org.kiwix.kiwixmobile.core.R;
|
||||||
|
|
||||||
import static androidx.test.espresso.Espresso.onView;
|
|
||||||
import static androidx.test.espresso.action.ViewActions.click;
|
|
||||||
import static androidx.test.espresso.matcher.ViewMatchers.withContentDescription;
|
|
||||||
import static com.schibsted.spain.barista.interaction.BaristaClickInteractions.clickOn;
|
import static com.schibsted.spain.barista.interaction.BaristaClickInteractions.clickOn;
|
||||||
import static org.kiwix.kiwixmobile.testutils.TestUtils.TEST_PAUSE_MS;
|
import static org.kiwix.kiwixmobile.testutils.TestUtils.TEST_PAUSE_MS;
|
||||||
import static org.kiwix.kiwixmobile.testutils.TestUtils.getResourceString;
|
import static org.kiwix.kiwixmobile.testutils.TestUtils.getResourceString;
|
||||||
import static org.kiwix.kiwixmobile.utils.StandardActions.enterSettings;
|
import static org.kiwix.kiwixmobile.utils.StandardActions.enterSettings;
|
||||||
|
import static org.kiwix.kiwixmobile.utils.StandardActions.openDrawer;
|
||||||
|
|
||||||
@LargeTest
|
@LargeTest
|
||||||
@RunWith(AndroidJUnit4.class)
|
@RunWith(AndroidJUnit4.class)
|
||||||
@ -64,10 +62,6 @@ public class MainActivityTest {
|
|||||||
clickOn(R.string.menu_help);
|
clickOn(R.string.menu_help);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void openDrawer() {
|
|
||||||
onView(withContentDescription(R.string.open_drawer)).perform(click());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void navigateSettings() {
|
public void navigateSettings() {
|
||||||
BaristaSleepInteractions.sleep(TEST_PAUSE_MS);
|
BaristaSleepInteractions.sleep(TEST_PAUSE_MS);
|
||||||
|
@ -23,7 +23,10 @@ import com.schibsted.spain.barista.interaction.BaristaSleepInteractions;
|
|||||||
import org.kiwix.kiwixmobile.core.R;
|
import org.kiwix.kiwixmobile.core.R;
|
||||||
|
|
||||||
import static androidx.test.espresso.Espresso.onData;
|
import static androidx.test.espresso.Espresso.onData;
|
||||||
|
import static androidx.test.espresso.Espresso.onView;
|
||||||
|
import static androidx.test.espresso.action.ViewActions.click;
|
||||||
import static androidx.test.espresso.action.ViewActions.longClick;
|
import static androidx.test.espresso.action.ViewActions.longClick;
|
||||||
|
import static androidx.test.espresso.matcher.ViewMatchers.withContentDescription;
|
||||||
import static androidx.test.espresso.matcher.ViewMatchers.withId;
|
import static androidx.test.espresso.matcher.ViewMatchers.withId;
|
||||||
import static com.schibsted.spain.barista.interaction.BaristaDialogInteractions.clickDialogPositiveButton;
|
import static com.schibsted.spain.barista.interaction.BaristaDialogInteractions.clickDialogPositiveButton;
|
||||||
import static org.kiwix.kiwixmobile.testutils.TestUtils.TEST_PAUSE_MS;
|
import static org.kiwix.kiwixmobile.testutils.TestUtils.TEST_PAUSE_MS;
|
||||||
@ -41,6 +44,10 @@ public class StandardActions {
|
|||||||
BaristaMenuClickInteractions.clickMenu(getResourceString(R.string.menu_settings));
|
BaristaMenuClickInteractions.clickMenu(getResourceString(R.string.menu_settings));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void openDrawer() {
|
||||||
|
onView(withContentDescription(R.string.open_drawer)).perform(click());
|
||||||
|
}
|
||||||
|
|
||||||
public static void deleteZimIfExists(String zimName, Integer adapterId) {
|
public static void deleteZimIfExists(String zimName, Integer adapterId) {
|
||||||
try {
|
try {
|
||||||
onData(withContent(zimName)).inAdapterView(withId(adapterId)).perform(longClick());
|
onData(withContent(zimName)).inAdapterView(withId(adapterId)).perform(longClick());
|
||||||
|
@ -40,14 +40,13 @@ 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
|
||||||
import org.kiwix.kiwixmobile.core.main.CoreMainActivity
|
import org.kiwix.kiwixmobile.core.main.CoreMainActivity
|
||||||
|
import org.kiwix.kiwixmobile.core.main.PAGE_URL_KEY
|
||||||
|
import org.kiwix.kiwixmobile.core.main.ZIM_FILE_URI_KEY
|
||||||
import org.kiwix.kiwixmobile.core.utils.REQUEST_PREFERENCES
|
import org.kiwix.kiwixmobile.core.utils.REQUEST_PREFERENCES
|
||||||
import org.kiwix.kiwixmobile.kiwixActivityComponent
|
import org.kiwix.kiwixmobile.kiwixActivityComponent
|
||||||
import org.kiwix.kiwixmobile.settings.KiwixSettingsActivity
|
import org.kiwix.kiwixmobile.settings.KiwixSettingsActivity
|
||||||
import org.kiwix.kiwixmobile.webserver.ZimHostActivity
|
import org.kiwix.kiwixmobile.webserver.ZimHostActivity
|
||||||
|
|
||||||
const val PAGE_URL_KEY = "pageUrl"
|
|
||||||
const val ZIM_FILE_URI_KEY = "zimFileUri"
|
|
||||||
|
|
||||||
class KiwixMainActivity : CoreMainActivity() {
|
class KiwixMainActivity : CoreMainActivity() {
|
||||||
private var actionMode: ActionMode? = null
|
private var actionMode: ActionMode? = null
|
||||||
|
|
||||||
@ -100,11 +99,6 @@ class KiwixMainActivity : CoreMainActivity() {
|
|||||||
actionMode = mode
|
actionMode = mode
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onSupportNavigateUp(): Boolean {
|
|
||||||
return navController.navigateUp() ||
|
|
||||||
super.onSupportNavigateUp()
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun onBackPressed() {
|
override fun onBackPressed() {
|
||||||
if (readerDrawerIsOpen()) {
|
if (readerDrawerIsOpen()) {
|
||||||
closeReaderDrawer()
|
closeReaderDrawer()
|
||||||
|
@ -25,7 +25,6 @@ import android.view.MenuInflater
|
|||||||
import android.view.MenuItem
|
import android.view.MenuItem
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
|
||||||
import androidx.appcompat.widget.Toolbar
|
import androidx.appcompat.widget.Toolbar
|
||||||
import kotlinx.android.synthetic.main.fragment_destination_library.go_to_downloads_button_no_files
|
import kotlinx.android.synthetic.main.fragment_destination_library.go_to_downloads_button_no_files
|
||||||
import org.kiwix.kiwixmobile.R
|
import org.kiwix.kiwixmobile.R
|
||||||
@ -60,11 +59,6 @@ class LocalLibraryFragment : ZimFileSelectFragment() {
|
|||||||
(baseActivity as KiwixMainActivity).cachedComponent.inject(this)
|
(baseActivity as KiwixMainActivity).cachedComponent.inject(this)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onDestroyView() {
|
|
||||||
super.onDestroyView()
|
|
||||||
(activity as AppCompatActivity).setSupportActionBar(null)
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) {
|
override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) {
|
||||||
inflater.inflate(R.menu.menu_zim_manager, menu)
|
inflater.inflate(R.menu.menu_zim_manager, menu)
|
||||||
val searchItem = menu.findItem(R.id.action_search)
|
val searchItem = menu.findItem(R.id.action_search)
|
||||||
@ -88,7 +82,6 @@ class LocalLibraryFragment : ZimFileSelectFragment() {
|
|||||||
): View? {
|
): View? {
|
||||||
LanguageUtils(requireActivity())
|
LanguageUtils(requireActivity())
|
||||||
.changeFont(requireActivity().layoutInflater, sharedPreferenceUtil)
|
.changeFont(requireActivity().layoutInflater, sharedPreferenceUtil)
|
||||||
setHasOptionsMenu(true)
|
|
||||||
val root = inflater.inflate(R.layout.fragment_destination_library, container, false)
|
val root = inflater.inflate(R.layout.fragment_destination_library, container, false)
|
||||||
val toolbar = root.findViewById<Toolbar>(R.id.toolbar)
|
val toolbar = root.findViewById<Toolbar>(R.id.toolbar)
|
||||||
val activity = activity as CoreMainActivity
|
val activity = activity as CoreMainActivity
|
||||||
@ -98,6 +91,7 @@ class LocalLibraryFragment : ZimFileSelectFragment() {
|
|||||||
setTitle(R.string.library)
|
setTitle(R.string.library)
|
||||||
}
|
}
|
||||||
activity.setupDrawerToggle(toolbar)
|
activity.setupDrawerToggle(toolbar)
|
||||||
|
setHasOptionsMenu(true)
|
||||||
return root
|
return root
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -57,11 +57,6 @@ class OnlineLibraryFragment : LibraryFragment(), FragmentActivityExtensions {
|
|||||||
zimManageViewModel.requestFiltering.onNext("")
|
zimManageViewModel.requestFiltering.onNext("")
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onDestroyView() {
|
|
||||||
super.onDestroyView()
|
|
||||||
(activity as AppCompatActivity).setSupportActionBar(null)
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun onBackPressed(activity: AppCompatActivity): FragmentActivityExtensions.Super {
|
override fun onBackPressed(activity: AppCompatActivity): FragmentActivityExtensions.Super {
|
||||||
getActivity()?.finish()
|
getActivity()?.finish()
|
||||||
return FragmentActivityExtensions.Super.ShouldNotCall
|
return FragmentActivityExtensions.Super.ShouldNotCall
|
||||||
|
@ -42,6 +42,7 @@ import org.kiwix.kiwixmobile.core.base.BaseActivity
|
|||||||
import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions.Super
|
import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions.Super
|
||||||
import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions.Super.ShouldCall
|
import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions.Super.ShouldCall
|
||||||
import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions.Super.ShouldNotCall
|
import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions.Super.ShouldNotCall
|
||||||
|
import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.setupDrawerToggle
|
||||||
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
|
||||||
@ -69,8 +70,8 @@ class KiwixReaderFragment : CoreReaderFragment() {
|
|||||||
(baseActivity as KiwixMainActivity).cachedComponent.inject(this)
|
(baseActivity as KiwixMainActivity).cachedComponent.inject(this)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onActivityCreated(savedInstanceState: Bundle?) {
|
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||||
super.onActivityCreated(savedInstanceState)
|
super.onViewCreated(view, savedInstanceState)
|
||||||
|
|
||||||
val activity = activity as CoreMainActivity
|
val activity = activity as CoreMainActivity
|
||||||
noOpenBookButton.setOnClickListener {
|
noOpenBookButton.setOnClickListener {
|
||||||
@ -135,7 +136,7 @@ class KiwixReaderFragment : CoreReaderFragment() {
|
|||||||
override fun hideTabSwitcher() {
|
override fun hideTabSwitcher() {
|
||||||
if (actionBar != null) {
|
if (actionBar != null) {
|
||||||
actionBar.setDisplayShowTitleEnabled(true)
|
actionBar.setDisplayShowTitleEnabled(true)
|
||||||
(activity as CoreMainActivity).setupDrawerToggle(toolbar)
|
activity?.setupDrawerToggle(toolbar)
|
||||||
|
|
||||||
setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED)
|
setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED)
|
||||||
|
|
||||||
@ -258,11 +259,6 @@ class KiwixReaderFragment : CoreReaderFragment() {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onDestroyView() {
|
|
||||||
super.onDestroyView()
|
|
||||||
(activity as AppCompatActivity).setSupportActionBar(null)
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun openFullScreen() {
|
override fun openFullScreen() {
|
||||||
super.openFullScreen()
|
super.openFullScreen()
|
||||||
requireActivity().bottom_nav_view.visibility = GONE
|
requireActivity().bottom_nav_view.visibility = GONE
|
||||||
|
@ -20,12 +20,11 @@ package org.kiwix.kiwixmobile.zim_manager.fileselect_view.effects
|
|||||||
|
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
import androidx.appcompat.app.AppCompatActivity
|
||||||
import org.kiwix.kiwixmobile.core.base.SideEffect
|
import org.kiwix.kiwixmobile.core.base.SideEffect
|
||||||
import org.kiwix.kiwixmobile.core.main.CoreMainActivity
|
import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.navigate
|
||||||
import org.kiwix.kiwixmobile.nav.destination.library.LocalLibraryFragmentDirections
|
import org.kiwix.kiwixmobile.nav.destination.library.LocalLibraryFragmentDirections
|
||||||
|
|
||||||
object NavigateToDownloads : SideEffect<Unit> {
|
object NavigateToDownloads : SideEffect<Unit> {
|
||||||
override fun invokeWith(activity: AppCompatActivity) {
|
override fun invokeWith(activity: AppCompatActivity) {
|
||||||
(activity as CoreMainActivity)
|
activity.navigate(LocalLibraryFragmentDirections.actionNavigationLibraryToNavigationDownloads())
|
||||||
.navigate(LocalLibraryFragmentDirections.actionNavigationLibraryToNavigationDownloads())
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -22,8 +22,8 @@ import androidx.appcompat.app.AppCompatActivity
|
|||||||
import androidx.core.net.toUri
|
import androidx.core.net.toUri
|
||||||
import org.kiwix.kiwixmobile.R
|
import org.kiwix.kiwixmobile.R
|
||||||
import org.kiwix.kiwixmobile.core.base.SideEffect
|
import org.kiwix.kiwixmobile.core.base.SideEffect
|
||||||
|
import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.navigate
|
||||||
import org.kiwix.kiwixmobile.core.extensions.toast
|
import org.kiwix.kiwixmobile.core.extensions.toast
|
||||||
import org.kiwix.kiwixmobile.core.main.CoreMainActivity
|
|
||||||
import org.kiwix.kiwixmobile.core.zim_manager.fileselect_view.adapter.BooksOnDiskListItem
|
import org.kiwix.kiwixmobile.core.zim_manager.fileselect_view.adapter.BooksOnDiskListItem
|
||||||
import org.kiwix.kiwixmobile.nav.destination.library.LocalLibraryFragmentDirections.actionNavigationLibraryToNavigationReader
|
import org.kiwix.kiwixmobile.nav.destination.library.LocalLibraryFragmentDirections.actionNavigationLibraryToNavigationReader
|
||||||
|
|
||||||
@ -35,7 +35,7 @@ data class OpenFileWithNavigation(private val bookOnDisk: BooksOnDiskListItem.Bo
|
|||||||
if (!file.canRead()) {
|
if (!file.canRead()) {
|
||||||
activity.toast(R.string.error_file_not_found)
|
activity.toast(R.string.error_file_not_found)
|
||||||
} else {
|
} else {
|
||||||
(activity as CoreMainActivity).navigate(
|
activity.navigate(
|
||||||
actionNavigationLibraryToNavigationReader().apply { zimFileUri = file.toUri().toString() }
|
actionNavigationLibraryToNavigationReader().apply { zimFileUri = file.toUri().toString() }
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
@ -20,15 +20,20 @@ package org.kiwix.kiwixmobile.core.extensions
|
|||||||
|
|
||||||
import android.app.Activity
|
import android.app.Activity
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
|
import android.os.Bundle
|
||||||
import android.view.Menu
|
import android.view.Menu
|
||||||
import android.view.MenuItem
|
import android.view.MenuItem
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
import androidx.appcompat.app.AppCompatActivity
|
||||||
import androidx.appcompat.view.ActionMode
|
import androidx.appcompat.view.ActionMode
|
||||||
|
import androidx.appcompat.widget.Toolbar
|
||||||
import androidx.fragment.app.FragmentActivity
|
import androidx.fragment.app.FragmentActivity
|
||||||
import androidx.lifecycle.ViewModel
|
import androidx.lifecycle.ViewModel
|
||||||
import androidx.lifecycle.ViewModelProvider
|
import androidx.lifecycle.ViewModelProvider
|
||||||
import androidx.lifecycle.ViewModelProviders
|
import androidx.lifecycle.ViewModelProviders
|
||||||
|
import androidx.navigation.NavDirections
|
||||||
import org.kiwix.kiwixmobile.core.CoreApp
|
import org.kiwix.kiwixmobile.core.CoreApp
|
||||||
|
import org.kiwix.kiwixmobile.core.di.components.CoreActivityComponent
|
||||||
|
import org.kiwix.kiwixmobile.core.main.CoreMainActivity
|
||||||
|
|
||||||
object ActivityExtensions {
|
object ActivityExtensions {
|
||||||
|
|
||||||
@ -75,6 +80,23 @@ object ActivityExtensions {
|
|||||||
ViewModelProviders.of(this, viewModelFactory)
|
ViewModelProviders.of(this, viewModelFactory)
|
||||||
.get(T::class.java)
|
.get(T::class.java)
|
||||||
|
|
||||||
|
fun Activity.navigate(action: NavDirections) {
|
||||||
|
(this as CoreMainActivity).navigate(action)
|
||||||
|
}
|
||||||
|
|
||||||
|
fun Activity.cachedComponent(): CoreActivityComponent = (this as CoreMainActivity).cachedComponent
|
||||||
|
|
||||||
|
fun Activity.setupDrawerToggle(toolbar: Toolbar) =
|
||||||
|
(this as CoreMainActivity).setupDrawerToggle(toolbar)
|
||||||
|
|
||||||
|
fun Activity.navigate(fragmentId: Int) {
|
||||||
|
(this as CoreMainActivity).navigate(fragmentId)
|
||||||
|
}
|
||||||
|
|
||||||
|
fun Activity.navigate(fragmentId: Int, bundle: Bundle) {
|
||||||
|
(this as CoreMainActivity).navigate(fragmentId, bundle)
|
||||||
|
}
|
||||||
|
|
||||||
val Activity.coreActivityComponent
|
val Activity.coreActivityComponent
|
||||||
get() = CoreApp.coreComponent.activityComponentBuilder().activity(this).build()
|
get() = CoreApp.coreComponent.activityComponentBuilder().activity(this).build()
|
||||||
}
|
}
|
||||||
|
@ -25,6 +25,4 @@ import androidx.lifecycle.ViewModelProviders
|
|||||||
|
|
||||||
inline fun <reified T : ViewModel> Fragment.viewModel(
|
inline fun <reified T : ViewModel> Fragment.viewModel(
|
||||||
viewModelFactory: ViewModelProvider.Factory
|
viewModelFactory: ViewModelProvider.Factory
|
||||||
) =
|
) = ViewModelProviders.of(this, viewModelFactory).get(T::class.java)
|
||||||
ViewModelProviders.of(this, viewModelFactory)
|
|
||||||
.get(T::class.java)
|
|
||||||
|
@ -20,6 +20,7 @@ package org.kiwix.kiwixmobile.core.main
|
|||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.view.ActionMode
|
import android.view.ActionMode
|
||||||
|
import android.view.Menu
|
||||||
import android.view.MenuItem
|
import android.view.MenuItem
|
||||||
import androidx.appcompat.app.ActionBarDrawerToggle
|
import androidx.appcompat.app.ActionBarDrawerToggle
|
||||||
import androidx.appcompat.widget.Toolbar
|
import androidx.appcompat.widget.Toolbar
|
||||||
@ -38,6 +39,8 @@ import org.kiwix.kiwixmobile.core.utils.ExternalLinkOpener
|
|||||||
import javax.inject.Inject
|
import javax.inject.Inject
|
||||||
|
|
||||||
const val KIWIX_SUPPORT_URL = "https://www.kiwix.org/support"
|
const val KIWIX_SUPPORT_URL = "https://www.kiwix.org/support"
|
||||||
|
const val PAGE_URL_KEY = "pageUrl"
|
||||||
|
const val ZIM_FILE_URI_KEY = "zimFileUri"
|
||||||
|
|
||||||
abstract class CoreMainActivity : BaseActivity(), WebViewProvider {
|
abstract class CoreMainActivity : BaseActivity(), WebViewProvider {
|
||||||
|
|
||||||
@ -94,6 +97,9 @@ abstract class CoreMainActivity : BaseActivity(), WebViewProvider {
|
|||||||
?.getCurrentWebView()
|
?.getCurrentWebView()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override fun onSupportNavigateUp(): Boolean =
|
||||||
|
navController.navigateUp() || super.onSupportNavigateUp()
|
||||||
|
|
||||||
open fun setupDrawerToggle(toolbar: Toolbar) {
|
open fun setupDrawerToggle(toolbar: Toolbar) {
|
||||||
drawerToggle =
|
drawerToggle =
|
||||||
ActionBarDrawerToggle(
|
ActionBarDrawerToggle(
|
||||||
@ -163,6 +169,20 @@ abstract class CoreMainActivity : BaseActivity(), WebViewProvider {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override fun onCreateOptionsMenu(menu: Menu): Boolean {
|
||||||
|
|
||||||
|
if (activeFragments().filterIsInstance<FragmentActivityExtensions>().isEmpty()) {
|
||||||
|
return super.onCreateOptionsMenu(menu)
|
||||||
|
}
|
||||||
|
var returnValue = true
|
||||||
|
activeFragments().filterIsInstance<FragmentActivityExtensions>().forEach {
|
||||||
|
if (it.onCreateOptionsMenu(menu, this) == FragmentActivityExtensions.Super.ShouldCall) {
|
||||||
|
returnValue = super.onCreateOptionsMenu(menu)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return returnValue
|
||||||
|
}
|
||||||
|
|
||||||
private fun activeFragments(): MutableList<Fragment> =
|
private fun activeFragments(): MutableList<Fragment> =
|
||||||
supportFragmentManager.fragments
|
supportFragmentManager.fragments
|
||||||
|
|
||||||
|
@ -282,15 +282,10 @@ public abstract class CoreReaderFragment extends BaseFragment
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressLint("ClickableViewAccessibility") @Override
|
@SuppressLint("ClickableViewAccessibility")
|
||||||
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
|
@Override public void onViewCreated(View view, Bundle savedInstanceState) {
|
||||||
super.onViewCreated(view, savedInstanceState);
|
super.onViewCreated(view, savedInstanceState);
|
||||||
setHasOptionsMenu(true);
|
setHasOptionsMenu(true);
|
||||||
}
|
|
||||||
|
|
||||||
@SuppressLint("ClickableViewAccessibility")
|
|
||||||
@Override public void onActivityCreated(@Nullable Bundle savedInstanceState) {
|
|
||||||
super.onActivityCreated(savedInstanceState);
|
|
||||||
AppCompatActivity activity = (AppCompatActivity) getActivity();
|
AppCompatActivity activity = (AppCompatActivity) getActivity();
|
||||||
new WebView(activity).destroy(); // Workaround for buggy webViews see #710
|
new WebView(activity).destroy(); // Workaround for buggy webViews see #710
|
||||||
handleLocaleCheck();
|
handleLocaleCheck();
|
||||||
@ -786,11 +781,9 @@ public abstract class CoreReaderFragment extends BaseFragment
|
|||||||
@Override public void onDestroyView() {
|
@Override public void onDestroyView() {
|
||||||
super.onDestroyView();
|
super.onDestroyView();
|
||||||
safeDispose();
|
safeDispose();
|
||||||
super.onDestroy();
|
|
||||||
tabCallback = null;
|
tabCallback = null;
|
||||||
hideBackToTopTimer.cancel();
|
hideBackToTopTimer.cancel();
|
||||||
hideBackToTopTimer = null;
|
hideBackToTopTimer = null;
|
||||||
webViewList.clear();
|
|
||||||
// TODO create a base Activity class that class this.
|
// TODO create a base Activity class that class this.
|
||||||
FileUtils.deleteCachedFiles(getActivity());
|
FileUtils.deleteCachedFiles(getActivity());
|
||||||
tts.shutdown();
|
tts.shutdown();
|
||||||
@ -811,7 +804,7 @@ public abstract class CoreReaderFragment extends BaseFragment
|
|||||||
}
|
}
|
||||||
|
|
||||||
private KiwixWebView initalizeWebView(String url) {
|
private KiwixWebView initalizeWebView(String url) {
|
||||||
AttributeSet attrs = StyleUtils.getAttributes(getActivity(), R.xml.webview);
|
AttributeSet attrs = StyleUtils.getAttributes(requireActivity(), R.xml.webview);
|
||||||
KiwixWebView webView = createWebView(attrs);
|
KiwixWebView webView = createWebView(attrs);
|
||||||
loadUrl(url, webView);
|
loadUrl(url, webView);
|
||||||
return webView;
|
return webView;
|
||||||
@ -1601,7 +1594,7 @@ public abstract class CoreReaderFragment extends BaseFragment
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void webViewProgressChanged(int progress) {
|
public void webViewProgressChanged(int progress) {
|
||||||
if (checkNull(progressBar)) {
|
if (checkNull(progressBar) && isAdded()) {
|
||||||
progressBar.show();
|
progressBar.show();
|
||||||
progressBar.setProgress(progress);
|
progressBar.setProgress(progress);
|
||||||
if (progress == 100) {
|
if (progress == 100) {
|
||||||
|
@ -90,6 +90,11 @@ abstract class PageFragment : OnItemClickListener, BaseFragment(), FragmentActiv
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
|
super.onCreate(savedInstanceState)
|
||||||
|
setHasOptionsMenu(true)
|
||||||
|
}
|
||||||
|
|
||||||
override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) {
|
override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) {
|
||||||
inflater.inflate(R.menu.menu_page, menu)
|
inflater.inflate(R.menu.menu_page, menu)
|
||||||
val search = menu.findItem(R.id.menu_page_search).actionView as SearchView
|
val search = menu.findItem(R.id.menu_page_search).actionView as SearchView
|
||||||
@ -97,7 +102,7 @@ abstract class PageFragment : OnItemClickListener, BaseFragment(), FragmentActiv
|
|||||||
search.setOnQueryTextListener(SimpleTextListener {
|
search.setOnQueryTextListener(SimpleTextListener {
|
||||||
pageViewModel.actions.offer(Action.Filter(it))
|
pageViewModel.actions.offer(Action.Filter(it))
|
||||||
})
|
})
|
||||||
pageViewModel.state.observe(viewLifecycleOwner, Observer(::render))
|
super<BaseFragment>.onCreateOptionsMenu(menu, inflater)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onOptionsItemSelected(item: MenuItem): Boolean {
|
override fun onOptionsItemSelected(item: MenuItem): Boolean {
|
||||||
@ -110,18 +115,16 @@ abstract class PageFragment : OnItemClickListener, BaseFragment(), FragmentActiv
|
|||||||
return super.onOptionsItemSelected(item)
|
return super.onOptionsItemSelected(item)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onActivityCreated(savedInstanceState: Bundle?) {
|
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||||
super.onActivityCreated(savedInstanceState)
|
super.onViewCreated(view, savedInstanceState)
|
||||||
val activity = requireActivity() as CoreMainActivity
|
val activity = requireActivity() as CoreMainActivity
|
||||||
|
recycler_view.layoutManager = LinearLayoutManager(activity, RecyclerView.VERTICAL, false)
|
||||||
|
recycler_view.adapter = pageAdapter
|
||||||
activity.setSupportActionBar(toolbar)
|
activity.setSupportActionBar(toolbar)
|
||||||
|
|
||||||
activity.supportActionBar?.apply {
|
activity.supportActionBar?.apply {
|
||||||
setDisplayHomeAsUpEnabled(true)
|
setDisplayHomeAsUpEnabled(true)
|
||||||
title = title
|
title = title
|
||||||
}
|
}
|
||||||
recycler_view.layoutManager = LinearLayoutManager(activity, RecyclerView.VERTICAL, false)
|
|
||||||
recycler_view.adapter = pageAdapter
|
|
||||||
|
|
||||||
no_page.text = noItemsString
|
no_page.text = noItemsString
|
||||||
|
|
||||||
page_switch.text = switchString
|
page_switch.text = switchString
|
||||||
@ -130,16 +133,14 @@ abstract class PageFragment : OnItemClickListener, BaseFragment(), FragmentActiv
|
|||||||
page_switch.setOnCheckedChangeListener { _, isChecked ->
|
page_switch.setOnCheckedChangeListener { _, isChecked ->
|
||||||
pageViewModel.actions.offer(Action.UserClickedShowAllToggle(isChecked))
|
pageViewModel.actions.offer(Action.UserClickedShowAllToggle(isChecked))
|
||||||
}
|
}
|
||||||
|
pageViewModel.state.observe(viewLifecycleOwner, Observer(::render))
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onCreateView(
|
override fun onCreateView(
|
||||||
inflater: LayoutInflater,
|
inflater: LayoutInflater,
|
||||||
container: ViewGroup?,
|
container: ViewGroup?,
|
||||||
savedInstanceState: Bundle?
|
savedInstanceState: Bundle?
|
||||||
): View? {
|
): View? = inflater.inflate(R.layout.fragment_page, container, false)
|
||||||
setHasOptionsMenu(true)
|
|
||||||
return inflater.inflate(R.layout.fragment_page, container, false)
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun onDestroy() {
|
override fun onDestroy() {
|
||||||
compositeDisposable.clear()
|
compositeDisposable.clear()
|
||||||
|
@ -2,8 +2,8 @@ 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.viewModel
|
import org.kiwix.kiwixmobile.core.extensions.viewModel
|
||||||
import org.kiwix.kiwixmobile.core.main.CoreMainActivity
|
|
||||||
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
|
||||||
@ -20,8 +20,9 @@ class BookmarksFragment : PageFragment() {
|
|||||||
override val noItemsString: String by lazy { getString(R.string.no_bookmarks) }
|
override val noItemsString: String by lazy { getString(R.string.no_bookmarks) }
|
||||||
override val switchString: String by lazy { getString(R.string.bookmarks_from_current_book) }
|
override val switchString: String by lazy { getString(R.string.bookmarks_from_current_book) }
|
||||||
override val switchIsChecked: Boolean by lazy { sharedPreferenceUtil.showBookmarksAllBooks }
|
override val switchIsChecked: Boolean by lazy { sharedPreferenceUtil.showBookmarksAllBooks }
|
||||||
|
|
||||||
override fun inject(baseActivity: BaseActivity) {
|
override fun inject(baseActivity: BaseActivity) {
|
||||||
(requireActivity() as CoreMainActivity).cachedComponent.inject(this)
|
baseActivity.coreActivityComponent.inject(this)
|
||||||
}
|
}
|
||||||
|
|
||||||
override val searchQueryHint: String by lazy { getString(R.string.search_bookmarks) }
|
override val searchQueryHint: String by lazy { getString(R.string.search_bookmarks) }
|
||||||
|
@ -35,11 +35,7 @@ class BookmarkViewModel @Inject constructor(
|
|||||||
) : PageViewModel<BookmarkItem, BookmarkState>(bookmarksDao, sharedPrefs, zimReaderContainer) {
|
) : PageViewModel<BookmarkItem, BookmarkState>(bookmarksDao, sharedPrefs, zimReaderContainer) {
|
||||||
|
|
||||||
override fun initialState(): BookmarkState =
|
override fun initialState(): BookmarkState =
|
||||||
BookmarkState(
|
BookmarkState(emptyList(), sharedPreferenceUtil.showBookmarksAllBooks, zimReaderContainer.id)
|
||||||
emptyList(),
|
|
||||||
sharedPreferenceUtil.showBookmarksAllBooks,
|
|
||||||
zimReaderContainer.id
|
|
||||||
)
|
|
||||||
|
|
||||||
override fun updatePagesBasedOnFilter(
|
override fun updatePagesBasedOnFilter(
|
||||||
state: BookmarkState,
|
state: BookmarkState,
|
||||||
|
@ -22,7 +22,7 @@ import androidx.appcompat.app.AppCompatActivity
|
|||||||
import io.reactivex.processors.PublishProcessor
|
import io.reactivex.processors.PublishProcessor
|
||||||
import org.kiwix.kiwixmobile.core.base.SideEffect
|
import org.kiwix.kiwixmobile.core.base.SideEffect
|
||||||
import org.kiwix.kiwixmobile.core.dao.PageDao
|
import org.kiwix.kiwixmobile.core.dao.PageDao
|
||||||
import org.kiwix.kiwixmobile.core.main.CoreMainActivity
|
import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.cachedComponent
|
||||||
import org.kiwix.kiwixmobile.core.page.bookmark.adapter.BookmarkItem
|
import org.kiwix.kiwixmobile.core.page.bookmark.adapter.BookmarkItem
|
||||||
import org.kiwix.kiwixmobile.core.page.viewmodel.PageState
|
import org.kiwix.kiwixmobile.core.page.viewmodel.PageState
|
||||||
import org.kiwix.kiwixmobile.core.page.viewmodel.effects.DeletePageItems
|
import org.kiwix.kiwixmobile.core.page.viewmodel.effects.DeletePageItems
|
||||||
@ -38,7 +38,7 @@ data class ShowDeleteBookmarksDialog(
|
|||||||
) : SideEffect<Unit> {
|
) : SideEffect<Unit> {
|
||||||
@Inject lateinit var dialogShower: DialogShower
|
@Inject lateinit var dialogShower: DialogShower
|
||||||
override fun invokeWith(activity: AppCompatActivity) {
|
override fun invokeWith(activity: AppCompatActivity) {
|
||||||
(activity as CoreMainActivity).cachedComponent.inject(this)
|
activity.cachedComponent().inject(this)
|
||||||
dialogShower.show(if (state.isInSelectionState) DeleteSelectedBookmarks else DeleteAllBookmarks,
|
dialogShower.show(if (state.isInSelectionState) DeleteSelectedBookmarks else DeleteAllBookmarks,
|
||||||
{ effects.offer(DeletePageItems(state, pageDao)) })
|
{ effects.offer(DeletePageItems(state, pageDao)) })
|
||||||
}
|
}
|
||||||
|
@ -13,11 +13,7 @@ import org.kiwix.kiwixmobile.core.page.history.viewmodel.HistoryViewModel
|
|||||||
const val USER_CLEARED_HISTORY: String = "user_cleared_history"
|
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 { viewModel<HistoryViewModel>(viewModelFactory) }
|
||||||
viewModel<HistoryViewModel>(
|
|
||||||
viewModelFactory
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
override val pageAdapter by lazy {
|
override val pageAdapter by lazy {
|
||||||
PageAdapter(PageItemDelegate(this), HistoryDateDelegate())
|
PageAdapter(PageItemDelegate(this), HistoryDateDelegate())
|
||||||
@ -29,7 +25,7 @@ class HistoryFragment : PageFragment() {
|
|||||||
override val switchIsChecked: Boolean by lazy { sharedPreferenceUtil.showHistoryAllBooks }
|
override val switchIsChecked: Boolean by lazy { sharedPreferenceUtil.showHistoryAllBooks }
|
||||||
|
|
||||||
override fun inject(baseActivity: BaseActivity) {
|
override fun inject(baseActivity: BaseActivity) {
|
||||||
requireActivity().coreActivityComponent.inject(this)
|
baseActivity.coreActivityComponent.inject(this)
|
||||||
}
|
}
|
||||||
|
|
||||||
override val searchQueryHint: String by lazy { getString(R.string.search_history) }
|
override val searchQueryHint: String by lazy { getString(R.string.search_history) }
|
||||||
|
@ -22,7 +22,7 @@ import androidx.appcompat.app.AppCompatActivity
|
|||||||
import io.reactivex.processors.PublishProcessor
|
import io.reactivex.processors.PublishProcessor
|
||||||
import org.kiwix.kiwixmobile.core.base.SideEffect
|
import org.kiwix.kiwixmobile.core.base.SideEffect
|
||||||
import org.kiwix.kiwixmobile.core.dao.PageDao
|
import org.kiwix.kiwixmobile.core.dao.PageDao
|
||||||
import org.kiwix.kiwixmobile.core.main.CoreMainActivity
|
import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.cachedComponent
|
||||||
import org.kiwix.kiwixmobile.core.page.history.viewmodel.HistoryState
|
import org.kiwix.kiwixmobile.core.page.history.viewmodel.HistoryState
|
||||||
import org.kiwix.kiwixmobile.core.page.viewmodel.effects.DeletePageItems
|
import org.kiwix.kiwixmobile.core.page.viewmodel.effects.DeletePageItems
|
||||||
import org.kiwix.kiwixmobile.core.utils.DialogShower
|
import org.kiwix.kiwixmobile.core.utils.DialogShower
|
||||||
@ -37,7 +37,7 @@ data class ShowDeleteHistoryDialog(
|
|||||||
) : SideEffect<Unit> {
|
) : SideEffect<Unit> {
|
||||||
@Inject lateinit var dialogShower: DialogShower
|
@Inject lateinit var dialogShower: DialogShower
|
||||||
override fun invokeWith(activity: AppCompatActivity) {
|
override fun invokeWith(activity: AppCompatActivity) {
|
||||||
(activity as CoreMainActivity).cachedComponent.inject(this)
|
activity.cachedComponent().inject(this)
|
||||||
dialogShower.show(if (state.isInSelectionState) DeleteSelectedHistory else DeleteAllHistory, {
|
dialogShower.show(if (state.isInSelectionState) DeleteSelectedHistory else DeleteAllHistory, {
|
||||||
effects.offer(DeletePageItems(state, pageDao))
|
effects.offer(DeletePageItems(state, pageDao))
|
||||||
})
|
})
|
||||||
|
@ -31,6 +31,7 @@ import kotlinx.android.synthetic.main.activity_main.drawer_nav_view
|
|||||||
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.main.CoreMainActivity
|
import org.kiwix.kiwixmobile.core.main.CoreMainActivity
|
||||||
|
import org.kiwix.kiwixmobile.core.main.ZIM_FILE_URI_KEY
|
||||||
import org.kiwix.kiwixmobile.core.utils.REQUEST_PREFERENCES
|
import org.kiwix.kiwixmobile.core.utils.REQUEST_PREFERENCES
|
||||||
import org.kiwix.kiwixmobile.custom.R
|
import org.kiwix.kiwixmobile.custom.R
|
||||||
import org.kiwix.kiwixmobile.custom.customActivityComponent
|
import org.kiwix.kiwixmobile.custom.customActivityComponent
|
||||||
@ -62,9 +63,6 @@ class CustomMainActivity : CoreMainActivity() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onSupportNavigateUp(): Boolean =
|
|
||||||
navController.navigateUp() || super.onSupportNavigateUp()
|
|
||||||
|
|
||||||
override fun onOptionsItemSelected(item: MenuItem): Boolean {
|
override fun onOptionsItemSelected(item: MenuItem): Boolean {
|
||||||
if (drawerToggle.isDrawerIndicatorEnabled) {
|
if (drawerToggle.isDrawerIndicatorEnabled) {
|
||||||
return drawerToggle.onOptionsItemSelected(item)
|
return drawerToggle.onOptionsItemSelected(item)
|
||||||
@ -87,7 +85,7 @@ class CustomMainActivity : CoreMainActivity() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun openPage(pageUrl: String, zimFilePath: String) {
|
override fun openPage(pageUrl: String, zimFilePath: String) {
|
||||||
val bundle = bundleOf("pageUrl" to pageUrl, "zimFileUri" to zimFilePath)
|
val bundle = bundleOf(PAGE_URL_KEY to pageUrl, ZIM_FILE_URI_KEY to zimFilePath)
|
||||||
navigate(R.id.customReaderFragment, bundle)
|
navigate(R.id.customReaderFragment, bundle)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -30,6 +30,7 @@ import android.os.Bundle
|
|||||||
import android.provider.Settings
|
import android.provider.Settings
|
||||||
import android.view.Menu
|
import android.view.Menu
|
||||||
import android.view.MenuInflater
|
import android.view.MenuInflater
|
||||||
|
import android.view.View
|
||||||
import android.widget.ImageView
|
import android.widget.ImageView
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
import androidx.appcompat.app.AppCompatActivity
|
||||||
import androidx.core.app.ActivityCompat
|
import androidx.core.app.ActivityCompat
|
||||||
@ -38,8 +39,8 @@ 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.FragmentActivityExtensions.Super
|
import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions.Super
|
||||||
import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions.Super.ShouldCall
|
import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions.Super.ShouldCall
|
||||||
|
import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.setupDrawerToggle
|
||||||
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.CoreReaderFragment
|
import org.kiwix.kiwixmobile.core.main.CoreReaderFragment
|
||||||
import org.kiwix.kiwixmobile.core.main.MainMenu
|
import org.kiwix.kiwixmobile.core.main.MainMenu
|
||||||
import org.kiwix.kiwixmobile.core.reader.ZimFileReader.Companion.CONTENT_PREFIX
|
import org.kiwix.kiwixmobile.core.reader.ZimFileReader.Companion.CONTENT_PREFIX
|
||||||
@ -64,8 +65,8 @@ class CustomReaderFragment : CoreReaderFragment() {
|
|||||||
@Inject lateinit var customFileValidator: CustomFileValidator
|
@Inject lateinit var customFileValidator: CustomFileValidator
|
||||||
@Inject lateinit var dialogShower: DialogShower
|
@Inject lateinit var dialogShower: DialogShower
|
||||||
|
|
||||||
override fun onActivityCreated(savedInstanceState: Bundle?) {
|
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||||
super.onActivityCreated(savedInstanceState)
|
super.onViewCreated(view, savedInstanceState)
|
||||||
if (enforcedLanguage()) {
|
if (enforcedLanguage()) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@ -79,8 +80,10 @@ class CustomReaderFragment : CoreReaderFragment() {
|
|||||||
val toolbarToc = activity?.findViewById<ImageView>(R.id.bottom_toolbar_toc)
|
val toolbarToc = activity?.findViewById<ImageView>(R.id.bottom_toolbar_toc)
|
||||||
toolbarToc?.isEnabled = false
|
toolbarToc?.isEnabled = false
|
||||||
}
|
}
|
||||||
(activity as AppCompatActivity).supportActionBar!!.setDisplayHomeAsUpEnabled(true)
|
with(activity as AppCompatActivity) {
|
||||||
(activity as CoreMainActivity).setupDrawerToggle(toolbar)
|
supportActionBar!!.setDisplayHomeAsUpEnabled(true)
|
||||||
|
setupDrawerToggle(toolbar)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun loadPageFromNavigationArguments() {
|
private fun loadPageFromNavigationArguments() {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user