diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/source/filter/GroupItem.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/source/filter/GroupItem.kt index f0c6d368a3..9cbe8ba005 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/source/filter/GroupItem.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/source/filter/GroupItem.kt @@ -11,7 +11,7 @@ import eu.davidea.flexibleadapter.items.ISectionable import eu.davidea.viewholders.ExpandableViewHolder import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.source.model.Filter -import eu.kanade.tachiyomi.util.view.setVectorCompat +import eu.kanade.tachiyomi.util.view.setAnimVectorCompat class GroupItem(val filter: Filter.Group<*>) : AbstractExpandableHeaderItem>() { @@ -34,11 +34,11 @@ class GroupItem(val filter: Filter.Group<*>) : AbstractExpandableHeaderItem>, holder: Holder, position: Int, payloads: MutableList?) { holder.title.text = filter.name - holder.icon.setVectorCompat( + holder.icon.setAnimVectorCompat( if (isExpanded) { - R.drawable.ic_expand_less_24dp + R.drawable.expand_more_to_less } else { - R.drawable.ic_expand_more_24dp + R.drawable.expand_less_to_more } ) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/source/filter/SortGroup.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/source/filter/SortGroup.kt index 3f0d0f5626..a23223150b 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/source/filter/SortGroup.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/source/filter/SortGroup.kt @@ -8,7 +8,7 @@ import eu.davidea.flexibleadapter.items.IFlexible import eu.davidea.flexibleadapter.items.ISectionable import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.source.model.Filter -import eu.kanade.tachiyomi.util.view.setVectorCompat +import eu.kanade.tachiyomi.util.view.setAnimVectorCompat class SortGroup(val filter: Filter.Sort) : AbstractExpandableHeaderItem>() { @@ -31,11 +31,11 @@ class SortGroup(val filter: Filter.Sort) : AbstractExpandableHeaderItem>, holder: Holder, position: Int, payloads: MutableList?) { holder.title.text = filter.name - holder.icon.setVectorCompat( + holder.icon.setAnimVectorCompat( if (isExpanded) { - R.drawable.ic_expand_less_24dp + R.drawable.expand_more_to_less } else { - R.drawable.ic_expand_more_24dp + R.drawable.expand_less_to_more } ) diff --git a/app/src/main/java/eu/kanade/tachiyomi/util/view/ImageViewExtensions.kt b/app/src/main/java/eu/kanade/tachiyomi/util/view/ImageViewExtensions.kt index 69335bc5b5..17780e7342 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/util/view/ImageViewExtensions.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/util/view/ImageViewExtensions.kt @@ -2,6 +2,7 @@ package eu.kanade.tachiyomi.util.view import android.widget.ImageView import androidx.annotation.DrawableRes +import androidx.vectordrawable.graphics.drawable.AnimatedVectorDrawableCompat import androidx.vectordrawable.graphics.drawable.VectorDrawableCompat /** @@ -17,3 +18,13 @@ fun ImageView.setVectorCompat(@DrawableRes drawable: Int, tint: Int? = null) { } setImageDrawable(vector) } + +fun ImageView.setAnimVectorCompat(@DrawableRes drawable: Int, tint: Int? = null) { + val vector = AnimatedVectorDrawableCompat.create(context, drawable) + if (tint != null) { + vector?.mutate() + vector?.setTint(tint) + } + setImageDrawable(vector) + vector?.start() +} diff --git a/app/src/main/res/drawable/expand_less_to_more.xml b/app/src/main/res/drawable/expand_less_to_more.xml new file mode 100644 index 0000000000..80edd325f5 --- /dev/null +++ b/app/src/main/res/drawable/expand_less_to_more.xml @@ -0,0 +1,28 @@ + + + + + + + + + + + + diff --git a/app/src/main/res/drawable/expand_more_to_less.xml b/app/src/main/res/drawable/expand_more_to_less.xml new file mode 100644 index 0000000000..458d6039bd --- /dev/null +++ b/app/src/main/res/drawable/expand_more_to_less.xml @@ -0,0 +1,28 @@ + + + + + + + + + + + + diff --git a/app/src/main/res/layout/navigation_view_group.xml b/app/src/main/res/layout/navigation_view_group.xml index 5281b7513a..884375a1df 100644 --- a/app/src/main/res/layout/navigation_view_group.xml +++ b/app/src/main/res/layout/navigation_view_group.xml @@ -5,7 +5,7 @@ android:layout_width="match_parent" android:layout_height="?attr/listPreferredItemHeightSmall" android:gravity="center_vertical" - android:background="?android:attr/colorBackground" + android:background="@drawable/rect_ripple" android:orientation="horizontal" android:paddingStart="?attr/listPreferredItemPaddingStart" android:paddingEnd="?attr/listPreferredItemPaddingEnd"> diff --git a/app/src/main/res/layout/navigation_view_spinner.xml b/app/src/main/res/layout/navigation_view_spinner.xml index 8f1dd7587a..852e5d8795 100644 --- a/app/src/main/res/layout/navigation_view_spinner.xml +++ b/app/src/main/res/layout/navigation_view_spinner.xml @@ -10,7 +10,7 @@