From 47e16f8445db9fa21c486bb5f755e7c524be3be7 Mon Sep 17 00:00:00 2001 From: Jays2Kings Date: Mon, 29 Aug 2022 00:21:29 -0400 Subject: [PATCH] Add ripple/padding to show all categories button + change categories hopper arrow direction when toggling on this setting --- .../eu/kanade/tachiyomi/ui/library/LibraryController.kt | 6 +++++- .../eu/kanade/tachiyomi/util/system/ContextExtensions.kt | 7 +++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt index f168dbe607..b775142e58 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt @@ -96,6 +96,7 @@ import eu.kanade.tachiyomi.util.moveCategories import eu.kanade.tachiyomi.util.system.contextCompatDrawable import eu.kanade.tachiyomi.util.system.dpToPx import eu.kanade.tachiyomi.util.system.getResourceColor +import eu.kanade.tachiyomi.util.system.getResourceDrawable import eu.kanade.tachiyomi.util.system.ignoredSystemInsets import eu.kanade.tachiyomi.util.system.isImeVisible import eu.kanade.tachiyomi.util.system.launchUI @@ -1183,7 +1184,7 @@ class LibraryController( showMiniBar() } updateHopperAlpha() - val isSingleCategory = !presenter.showAllCategories || presenter.forceShowAllCategories + val isSingleCategory = !presenter.showAllCategories && !presenter.forceShowAllCategories val context = binding.roundedCategoryHopper.root.context binding.roundedCategoryHopper.upCategory.setImageDrawable( context.contextCompatDrawable( @@ -1825,7 +1826,10 @@ class LibraryController( presenter.getLibrary() isSelected = presenter.forceShowAllCategories } + val pad = 12.dpToPx + setPadding(pad, 0, pad, 0) setImageResource(R.drawable.ic_show_all_categories_24dp) + background = context.getResourceDrawable(R.attr.selectableItemBackgroundBorderless) imageTintList = ColorStateList.valueOf(context.getResourceColor(R.attr.actionBarTintColor)) compatToolTipText = resources?.getText(R.string.show_all_categories) } diff --git a/app/src/main/java/eu/kanade/tachiyomi/util/system/ContextExtensions.kt b/app/src/main/java/eu/kanade/tachiyomi/util/system/ContextExtensions.kt index 4c8276b3e6..1e3136c7ee 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/util/system/ContextExtensions.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/util/system/ContextExtensions.kt @@ -117,6 +117,13 @@ fun Context.getResourceColor(@AttrRes resource: Int): Int { return attrValue } +fun Context.getResourceDrawable(@AttrRes resource: Int): Drawable? { + val typedArray = obtainStyledAttributes(intArrayOf(resource)) + val attrValue = typedArray.getDrawable(0) + typedArray.recycle() + return attrValue +} + /** * Returns the color from ContextCompat *