From 9dbeab34586f334383cc3de6dc9477ea0e795cc7 Mon Sep 17 00:00:00 2001 From: Jays2Kings Date: Tue, 27 Apr 2021 03:01:09 -0400 Subject: [PATCH] Fix options when tapping on a cover in manga details --- .../ui/manga/MangaDetailsController.kt | 29 ++++++++++--------- app/src/main/res/menu/manga_details.xml | 13 --------- app/src/main/res/menu/manga_details_cover.xml | 18 ++++++++++++ 3 files changed, 33 insertions(+), 27 deletions(-) create mode 100644 app/src/main/res/menu/manga_details_cover.xml diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaDetailsController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaDetailsController.kt index 00d66dd667..22b9960399 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaDetailsController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaDetailsController.kt @@ -30,6 +30,7 @@ import androidx.appcompat.view.ActionMode import androidx.appcompat.widget.PopupMenu import androidx.appcompat.widget.SearchView import androidx.core.graphics.ColorUtils +import androidx.core.graphics.drawable.DrawableCompat.setTint import androidx.core.view.iterator import androidx.palette.graphics.Palette import androidx.recyclerview.widget.ItemTouchHelper @@ -88,6 +89,7 @@ import eu.kanade.tachiyomi.util.isLocal import eu.kanade.tachiyomi.util.moveCategories import eu.kanade.tachiyomi.util.storage.getUriCompat import eu.kanade.tachiyomi.util.system.ThemeUtil +import eu.kanade.tachiyomi.util.system.contextCompatDrawable import eu.kanade.tachiyomi.util.system.dpToPx import eu.kanade.tachiyomi.util.system.getPrefTheme import eu.kanade.tachiyomi.util.system.getResourceColor @@ -727,6 +729,19 @@ class MangaDetailsController : //region action bar menu methods override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) { + if (fullCoverActive) { + activityBinding?.toolbar?.navigationIcon = + view?.context?.contextCompatDrawable(R.drawable.ic_arrow_back_24dp)?.apply { + setTint(Color.WHITE) + } + inflater.inflate(R.menu.manga_details_cover, menu) + return + } + activityBinding?.toolbar?.navigationIcon = + activityBinding?.toolbar?.navigationIcon?.mutate()?.apply { + setTint(view?.context?.getResourceColor(R.attr.actionBarTintColor) ?: Color.WHITE) + } + activityBinding?.toolbar?.invalidateDrawable(activityBinding?.toolbar?.navigationIcon!!) inflater.inflate(R.menu.manga_details, menu) val editItem = menu.findItem(R.id.action_edit) editItem.isVisible = presenter.manga.favorite && !presenter.isLockedFromSearch @@ -763,20 +778,6 @@ class MangaDetailsController : searchView.clearFocus() } - val menuItems = menu.iterator() - while (menuItems.hasNext()) { - val menuItem = menuItems.next() - menuItems.next().isVisible = !fullCoverActive && menuItem.isVisible - } - val saveItem = menu.findItem(R.id.save) - val shareItem = menu.findItem(R.id.share) - saveItem.isVisible = fullCoverActive - shareItem.isVisible = fullCoverActive - if (fullCoverActive) { - saveItem.icon.setTint(Color.WHITE) - shareItem.icon.setTint(Color.WHITE) - } - setOnQueryTextChangeListener(searchView) { query = it ?: "" if (query.isNotEmpty()) getHeader()?.collapse() diff --git a/app/src/main/res/menu/manga_details.xml b/app/src/main/res/menu/manga_details.xml index 582d7cce19..e526908064 100644 --- a/app/src/main/res/menu/manga_details.xml +++ b/app/src/main/res/menu/manga_details.xml @@ -78,17 +78,4 @@ android:title="@string/migrate" app:showAsAction="never" /> - - - diff --git a/app/src/main/res/menu/manga_details_cover.xml b/app/src/main/res/menu/manga_details_cover.xml new file mode 100644 index 0000000000..efb4c80943 --- /dev/null +++ b/app/src/main/res/menu/manga_details_cover.xml @@ -0,0 +1,18 @@ + + + + + + + \ No newline at end of file