From 0758241e0637da69095f42d3b4c37d31e2da7eea Mon Sep 17 00:00:00 2001 From: rebelonion <87634197+rebelonion@users.noreply.github.com> Date: Thu, 8 Feb 2024 00:56:14 -0600 Subject: [PATCH] fix: download button orientation --- .../java/ani/dantotsu/media/anime/EpisodeAdapters.kt | 9 +++++---- .../java/ani/dantotsu/media/manga/MangaChapterAdapter.kt | 9 +++++---- app/src/main/res/layout/item_chapter_list.xml | 2 +- app/src/main/res/layout/item_episode_list.xml | 2 +- 4 files changed, 12 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/ani/dantotsu/media/anime/EpisodeAdapters.kt b/app/src/main/java/ani/dantotsu/media/anime/EpisodeAdapters.kt index 78f4fbef..7a3d8aec 100644 --- a/app/src/main/java/ani/dantotsu/media/anime/EpisodeAdapters.kt +++ b/app/src/main/java/ani/dantotsu/media/anime/EpisodeAdapters.kt @@ -372,18 +372,18 @@ class EpisodeAdapter( if (activeDownloads.contains(episodeNumber)) { // Show spinner binding.itemDownload.setImageResource(R.drawable.ic_sync) - startOrContinueRotation(episodeNumber) + startOrContinueRotation(episodeNumber) { + binding.itemDownload.rotation = 0f + } binding.itemEpisodeDesc.visibility = View.GONE } else if (downloadedEpisodes.contains(episodeNumber)) { binding.itemEpisodeDesc.visibility = View.GONE binding.itemDownloadStatus.visibility = View.VISIBLE // Show checkmark binding.itemDownload.setImageResource(R.drawable.ic_circle_check) - //binding.itemDownload.setColorFilter(typedValue2.data) //TODO: colors go to wrong places binding.itemDownload.postDelayed({ binding.itemDownload.setImageResource(R.drawable.ic_round_delete_24) binding.itemDownload.rotation = 0f - //binding.itemDownload.setColorFilter(typedValue2.data) }, 1000) } else { binding.itemDownloadStatus.visibility = View.GONE @@ -396,7 +396,7 @@ class EpisodeAdapter( } - private fun startOrContinueRotation(episodeNumber: String) { + private fun startOrContinueRotation(episodeNumber: String, resetRotation: () -> Unit) { if (!isRotationCoroutineRunningFor(episodeNumber)) { val scope = fragment.lifecycle.coroutineScope scope.launch { @@ -411,6 +411,7 @@ class EpisodeAdapter( } // Remove chapter number from active coroutines set activeCoroutines.remove(episodeNumber) + resetRotation() } } } diff --git a/app/src/main/java/ani/dantotsu/media/manga/MangaChapterAdapter.kt b/app/src/main/java/ani/dantotsu/media/manga/MangaChapterAdapter.kt index 54676765..6cad3b90 100644 --- a/app/src/main/java/ani/dantotsu/media/manga/MangaChapterAdapter.kt +++ b/app/src/main/java/ani/dantotsu/media/manga/MangaChapterAdapter.kt @@ -154,15 +154,15 @@ class MangaChapterAdapter( if (activeDownloads.contains(chapterNumber)) { // Show spinner binding.itemDownload.setImageResource(R.drawable.ic_sync) - startOrContinueRotation(chapterNumber) + startOrContinueRotation(chapterNumber) { + binding.itemDownload.rotation = 0f + } } else if (downloadedChapters.contains(chapterNumber)) { // Show checkmark binding.itemDownload.setImageResource(R.drawable.ic_circle_check) - //binding.itemDownload.setColorFilter(typedValue2.data) //TODO: colors go to wrong places binding.itemDownload.postDelayed({ binding.itemDownload.setImageResource(R.drawable.ic_round_delete_24) binding.itemDownload.rotation = 0f - //binding.itemDownload.setColorFilter(typedValue2.data) }, 1000) } else { // Show download icon @@ -172,7 +172,7 @@ class MangaChapterAdapter( } - private fun startOrContinueRotation(chapterNumber: String) { + private fun startOrContinueRotation(chapterNumber: String, resetRotation: () -> Unit) { if (!isRotationCoroutineRunningFor(chapterNumber)) { val scope = fragment.lifecycle.coroutineScope scope.launch { @@ -187,6 +187,7 @@ class MangaChapterAdapter( } // Remove chapter number from active coroutines set activeCoroutines.remove(chapterNumber) + resetRotation() } } } diff --git a/app/src/main/res/layout/item_chapter_list.xml b/app/src/main/res/layout/item_chapter_list.xml index 515ce0cd..fe263d01 100644 --- a/app/src/main/res/layout/item_chapter_list.xml +++ b/app/src/main/res/layout/item_chapter_list.xml @@ -48,7 +48,7 @@ android:layout_width="24dp" android:layout_height="48dp" android:layout_marginEnd="5dp" - android:background="?android:attr/selectableItemBackground" + android:background="@android:color/transparent" app:srcCompat="@drawable/ic_download_24" app:tint="?attr/colorOnBackground" /> diff --git a/app/src/main/res/layout/item_episode_list.xml b/app/src/main/res/layout/item_episode_list.xml index 041da9b8..c198234c 100644 --- a/app/src/main/res/layout/item_episode_list.xml +++ b/app/src/main/res/layout/item_episode_list.xml @@ -150,7 +150,7 @@ android:layout_width="24dp" android:layout_height="48dp" android:layout_marginEnd="5dp" - android:background="?android:attr/selectableItemBackground" + android:background="@android:color/transparent" app:srcCompat="@drawable/ic_download_24" app:tint="?attr/colorOnBackground" tools:ignore="ContentDescription" />