From 75895d851fe8fc897451d701870efe8005fd1ab9 Mon Sep 17 00:00:00 2001 From: aayush262 <99584765+aayush2622@users.noreply.github.com> Date: Wed, 22 Nov 2023 08:03:17 +0530 Subject: [PATCH 1/5] Language add to extensions (#52) * got rid of both companion object * minor changes * It Now show lang on extensions * fixed * quickfix * android locale tuning * toggle option to setting * some fixes added 2 fonts removed Scanlators for anime --------- Co-authored-by: rebelonion <87634197+rebelonion@users.noreply.github.com> --- app/build.gradle | 2 +- .../dantotsu/media/anime/AnimeWatchAdapter.kt | 2 +- .../ani/dantotsu/media/anime/ExoplayerView.kt | 2 + .../dantotsu/media/manga/MangaReadFragment.kt | 7 +- .../main/java/ani/dantotsu/others/LangSet.kt | 3 +- .../ani/dantotsu/others/LanguageMapper.kt | 32 ++++++ .../dantotsu/settings/ExtensionsActivity.kt | 13 +-- .../InstalledAnimeExtensionsFragment.kt | 13 +-- .../InstalledMangaExtensionsFragment.kt | 11 +- .../settings/PlayerSettingsActivity.kt | 2 +- .../ani/dantotsu/settings/SettingsActivity.kt | 3 +- .../settings/paging/AnimePagingSource.kt | 16 +-- .../settings/paging/MangaPagingSource.kt | 16 ++- .../main/res/drawable/ic_round_delete_24.xml | 18 +--- app/src/main/res/font/century_gothic_bold.TTF | Bin 0 -> 55128 bytes .../main/res/font/century_gothic_regular.TTF | Bin 0 -> 61280 bytes app/src/main/res/layout/item_chapter_list.xml | 12 +-- app/src/main/res/layout/item_extension.xml | 5 +- .../main/res/layout/item_extension_all.xml | 13 +-- .../main/res/menu/launguage_selector_menu.xml | 100 ++++++++++++++++-- app/src/main/res/values-en-rDW/strings.xml | 6 +- app/src/main/res/values/strings.xml | 5 +- 22 files changed, 192 insertions(+), 89 deletions(-) create mode 100644 app/src/main/java/ani/dantotsu/others/LanguageMapper.kt create mode 100644 app/src/main/res/font/century_gothic_bold.TTF create mode 100644 app/src/main/res/font/century_gothic_regular.TTF diff --git a/app/build.gradle b/app/build.gradle index 0ea1f761..6c11901a 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -21,7 +21,7 @@ android { minSdk 23 targetSdk 34 versionCode ((System.currentTimeMillis() / 60000).toInteger()) - versionName "1.0.0-beta02" + versionName "1.0.0-beta03" signingConfig signingConfigs.debug } diff --git a/app/src/main/java/ani/dantotsu/media/anime/AnimeWatchAdapter.kt b/app/src/main/java/ani/dantotsu/media/anime/AnimeWatchAdapter.kt index 33dcefe5..a4573ff0 100644 --- a/app/src/main/java/ani/dantotsu/media/anime/AnimeWatchAdapter.kt +++ b/app/src/main/java/ani/dantotsu/media/anime/AnimeWatchAdapter.kt @@ -200,7 +200,7 @@ class AnimeWatchAdapter( style = 2 fragment.onIconPressed(style, reversed) } - + binding.animeScanlatorTop.visibility= View.GONE //Episode Handling handleEpisodes() } diff --git a/app/src/main/java/ani/dantotsu/media/anime/ExoplayerView.kt b/app/src/main/java/ani/dantotsu/media/anime/ExoplayerView.kt index 5d6df1b7..2617907a 100644 --- a/app/src/main/java/ani/dantotsu/media/anime/ExoplayerView.kt +++ b/app/src/main/java/ani/dantotsu/media/anime/ExoplayerView.kt @@ -304,6 +304,8 @@ class ExoplayerView : AppCompatActivity(), Player.Listener { 1 -> ResourcesCompat.getFont(this, R.font.poppins_bold) 2 -> ResourcesCompat.getFont(this, R.font.poppins) 3 -> ResourcesCompat.getFont(this, R.font.poppins_thin) + 4 -> ResourcesCompat.getFont(this, R.font.century_gothic_regular) + 5 -> ResourcesCompat.getFont(this, R.font.century_gothic_bold) else -> ResourcesCompat.getFont(this, R.font.poppins_semi_bold) } playerView.subtitleView?.setStyle( diff --git a/app/src/main/java/ani/dantotsu/media/manga/MangaReadFragment.kt b/app/src/main/java/ani/dantotsu/media/manga/MangaReadFragment.kt index 46f41f54..53f24e54 100644 --- a/app/src/main/java/ani/dantotsu/media/manga/MangaReadFragment.kt +++ b/app/src/main/java/ani/dantotsu/media/manga/MangaReadFragment.kt @@ -466,20 +466,25 @@ open class MangaReadFragment : Fragment(), ScanlatorSelectionListener { val chapterNumber = intent.getStringExtra(EXTRA_CHAPTER_NUMBER) chapterNumber?.let { chapterAdapter.startDownload(it) } } + ACTION_DOWNLOAD_FINISHED -> { val chapterNumber = intent.getStringExtra(EXTRA_CHAPTER_NUMBER) chapterNumber?.let { chapterAdapter.stopDownload(it) } } + ACTION_DOWNLOAD_FAILED -> { val chapterNumber = intent.getStringExtra(EXTRA_CHAPTER_NUMBER) chapterNumber?.let { chapterAdapter.removeDownload(it) } } + ACTION_DOWNLOAD_PROGRESS -> { val chapterNumber = intent.getStringExtra(EXTRA_CHAPTER_NUMBER) val progress = intent.getIntExtra("progress", 0) - chapterNumber?.let { chapterAdapter.updateDownloadProgress(it, progress) + chapterNumber?.let { + chapterAdapter.updateDownloadProgress(it, progress) + } } } } diff --git a/app/src/main/java/ani/dantotsu/others/LangSet.kt b/app/src/main/java/ani/dantotsu/others/LangSet.kt index 02e41a86..fd5ba8a3 100644 --- a/app/src/main/java/ani/dantotsu/others/LangSet.kt +++ b/app/src/main/java/ani/dantotsu/others/LangSet.kt @@ -12,8 +12,7 @@ class LangSet { companion object{ fun setLocale(activity: Activity) { val useCursedLang = activity.getSharedPreferences("Dantotsu", Activity.MODE_PRIVATE).getBoolean("use_cursed_lang", false) - if(!useCursedLang) return - val locale = Locale("en", "rDW") + val locale = if(useCursedLang) Locale("en", "DW") else Locale("en", "US") Locale.setDefault(locale) val resources: Resources = activity.resources val config: Configuration = resources.configuration diff --git a/app/src/main/java/ani/dantotsu/others/LanguageMapper.kt b/app/src/main/java/ani/dantotsu/others/LanguageMapper.kt new file mode 100644 index 00000000..bd621cb0 --- /dev/null +++ b/app/src/main/java/ani/dantotsu/others/LanguageMapper.kt @@ -0,0 +1,32 @@ +package ani.dantotsu.others + +class LanguageMapper { + companion object { + + fun mapLanguageCodeToName(code: String): String { + return when (code) { + "all" -> "Multi" + "ar" -> "Arabic" + "de" -> "German" + "en" -> "English" + "es" -> "Spanish" + "fr" -> "French" + "id" -> "Indonesian" + "it" -> "Italian" + "ja" -> "Japanese" + "ko" -> "Korean" + "pl" -> "Polish" + "pt-BR" -> "Portuguese (Brazil)" + "ru" -> "Russian" + "th" -> "Thai" + "tr" -> "Turkish" + "uk" -> "Ukrainian" + "vi" -> "Vietnamese" + "zh" -> "Chinese" + "zh-Hans" -> "Chinese (Simplified)" + else -> "" + } + } + } +} + diff --git a/app/src/main/java/ani/dantotsu/settings/ExtensionsActivity.kt b/app/src/main/java/ani/dantotsu/settings/ExtensionsActivity.kt index 2063825e..3d8a155b 100644 --- a/app/src/main/java/ani/dantotsu/settings/ExtensionsActivity.kt +++ b/app/src/main/java/ani/dantotsu/settings/ExtensionsActivity.kt @@ -24,6 +24,7 @@ import ani.dantotsu.themes.ThemeManager import ani.dantotsu.others.LangSet import com.google.android.material.tabs.TabLayout import com.google.android.material.tabs.TabLayoutMediator +import eu.kanade.tachiyomi.extension.anime.model.AnimeExtension import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch import kotlinx.coroutines.withContext @@ -92,14 +93,14 @@ ThemeManager(this).applyTheme() initActivity(this) + fun bind(extension: AnimeExtension.Available) { + binding.languageselect.setOnClickListener { + val popup = PopupMenu(this, it) - binding.languageselect.setOnClickListener { - val popup = PopupMenu(this, it) - - popup.inflate(R.menu.launguage_selector_menu) - popup.show() + popup.inflate(R.menu.launguage_selector_menu) + popup.show() + } } - binding.settingsContainer.updateLayoutParams { topMargin = statusBarHeight bottomMargin = navBarHeight diff --git a/app/src/main/java/ani/dantotsu/settings/InstalledAnimeExtensionsFragment.kt b/app/src/main/java/ani/dantotsu/settings/InstalledAnimeExtensionsFragment.kt index 3af4ce55..980fa019 100644 --- a/app/src/main/java/ani/dantotsu/settings/InstalledAnimeExtensionsFragment.kt +++ b/app/src/main/java/ani/dantotsu/settings/InstalledAnimeExtensionsFragment.kt @@ -13,7 +13,6 @@ import android.widget.ImageView import android.widget.TextView import android.widget.Toast import androidx.core.app.NotificationCompat -import androidx.core.content.ContextCompat import androidx.fragment.app.Fragment import androidx.lifecycle.lifecycleScope import androidx.recyclerview.widget.DiffUtil @@ -24,6 +23,8 @@ import androidx.viewpager2.widget.ViewPager2 import ani.dantotsu.R import ani.dantotsu.databinding.FragmentAnimeExtensionsBinding import ani.dantotsu.loadData +import ani.dantotsu.others.LanguageMapper +import ani.dantotsu.saveData import ani.dantotsu.settings.extensionprefs.AnimeSourcePreferencesFragment import com.google.android.material.tabs.TabLayout import com.google.android.material.textfield.TextInputLayout @@ -210,14 +211,10 @@ class InstalledAnimeExtensionsFragment : Fragment() { override fun onBindViewHolder(holder: ViewHolder, position: Int) { val extension = getItem(position) // Use getItem() from ListAdapter - val nsfw = if (extension.isNsfw) { - "(18+)" - } else { - "" - } - + val nsfw = if (extension.isNsfw) "(18+)" else "" + val lang= LanguageMapper.mapLanguageCodeToName(extension.lang) holder.extensionNameTextView.text = extension.name - holder.extensionVersionTextView.text = "${extension.versionName} $nsfw" + holder.extensionVersionTextView.text = "$lang ${extension.versionName} $nsfw" if (!skipIcons) { holder.extensionIconImageView.setImageDrawable(extension.icon) } diff --git a/app/src/main/java/ani/dantotsu/settings/InstalledMangaExtensionsFragment.kt b/app/src/main/java/ani/dantotsu/settings/InstalledMangaExtensionsFragment.kt index 298feffa..23446c48 100644 --- a/app/src/main/java/ani/dantotsu/settings/InstalledMangaExtensionsFragment.kt +++ b/app/src/main/java/ani/dantotsu/settings/InstalledMangaExtensionsFragment.kt @@ -14,7 +14,6 @@ import android.widget.ImageView import android.widget.TextView import android.widget.Toast import androidx.core.app.NotificationCompat -import androidx.core.content.ContextCompat import androidx.fragment.app.Fragment import androidx.lifecycle.lifecycleScope import androidx.recyclerview.widget.DiffUtil @@ -26,6 +25,7 @@ import ani.dantotsu.R import ani.dantotsu.databinding.FragmentMangaExtensionsBinding import ani.dantotsu.loadData import ani.dantotsu.settings.extensionprefs.MangaSourcePreferencesFragment +import ani.dantotsu.others.LanguageMapper import com.google.android.material.tabs.TabLayout import com.google.android.material.textfield.TextInputLayout import com.google.firebase.crashlytics.FirebaseCrashlytics @@ -204,13 +204,10 @@ class InstalledMangaExtensionsFragment : Fragment() { override fun onBindViewHolder(holder: ViewHolder, position: Int) { val extension = getItem(position) // Use getItem() from ListAdapter - val nsfw = if (extension.isNsfw) { - "(18+)" - } else { - "" - } + val nsfw = if (extension.isNsfw) "(18+)" else "" + val lang = LanguageMapper.mapLanguageCodeToName(extension.lang) holder.extensionNameTextView.text = extension.name - holder.extensionVersionTextView.text = "${extension.versionName} $nsfw" + holder.extensionVersionTextView.text = "$lang ${extension.versionName} $nsfw" if (!skipIcons) { holder.extensionIconImageView.setImageDrawable(extension.icon) } diff --git a/app/src/main/java/ani/dantotsu/settings/PlayerSettingsActivity.kt b/app/src/main/java/ani/dantotsu/settings/PlayerSettingsActivity.kt index 3d0ec8d8..17fbdb15 100644 --- a/app/src/main/java/ani/dantotsu/settings/PlayerSettingsActivity.kt +++ b/app/src/main/java/ani/dantotsu/settings/PlayerSettingsActivity.kt @@ -378,7 +378,7 @@ ThemeManager(this).applyTheme() dialog.dismiss() }.show() } - val fonts = arrayOf("Poppins Semi Bold", "Poppins Bold", "Poppins", "Poppins Thin") + val fonts = arrayOf("Poppins Semi Bold", "Poppins Bold", "Poppins", "Poppins Thin","Century Gothic","Century Gothic Bold") val fontDialog = AlertDialog.Builder(this, R.style.DialogTheme).setTitle(getString(R.string.subtitle_font)) binding.videoSubFont.setOnClickListener { fontDialog.setSingleChoiceItems(fonts, settings.font) { dialog, count -> diff --git a/app/src/main/java/ani/dantotsu/settings/SettingsActivity.kt b/app/src/main/java/ani/dantotsu/settings/SettingsActivity.kt index 651ad8e6..bde659c7 100644 --- a/app/src/main/java/ani/dantotsu/settings/SettingsActivity.kt +++ b/app/src/main/java/ani/dantotsu/settings/SettingsActivity.kt @@ -401,7 +401,8 @@ OS Version: $CODENAME $RELEASE ($SDK_INT) (binding.settingsLogo.drawable as Animatable).start() if (cursedCounter % 7 == 0){ snackString("youwu have been cuwsed :pwayge:") - getSharedPreferences("Dantotsu", Context.MODE_PRIVATE).edit().putBoolean("use_cursed_lang", true).apply() + getSharedPreferences("Dantotsu", Context.MODE_PRIVATE).edit().putBoolean("use_cursed_lang", + getSharedPreferences("Dantotsu", Context.MODE_PRIVATE).getBoolean("use_cursed_lang", false).not()).apply() } else{ snackString(array[(Math.random() * array.size).toInt()], this) } diff --git a/app/src/main/java/ani/dantotsu/settings/paging/AnimePagingSource.kt b/app/src/main/java/ani/dantotsu/settings/paging/AnimePagingSource.kt index 7761ed2e..235d4f15 100644 --- a/app/src/main/java/ani/dantotsu/settings/paging/AnimePagingSource.kt +++ b/app/src/main/java/ani/dantotsu/settings/paging/AnimePagingSource.kt @@ -1,5 +1,6 @@ package ani.dantotsu.settings.paging +import android.annotation.SuppressLint import android.view.LayoutInflater import android.view.ViewGroup import android.widget.ImageView @@ -15,9 +16,9 @@ import androidx.paging.PagingState import androidx.paging.cachedIn import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.RecyclerView -import ani.dantotsu.settings.SettingsActivity import ani.dantotsu.databinding.ItemExtensionAllBinding import ani.dantotsu.loadData +import ani.dantotsu.others.LanguageMapper import com.bumptech.glide.Glide import eu.kanade.tachiyomi.extension.anime.AnimeExtensionManager import eu.kanade.tachiyomi.extension.anime.model.AnimeExtension @@ -78,7 +79,8 @@ class AnimeExtensionPagingSource( val installedExtensions = installedExtensionsFlow.first().map { it.pkgName }.toSet() val availableExtensions = availableExtensionsFlow.first().filterNot { it.pkgName in installedExtensions } val query = searchQuery.first() - var isNsfwEnabled: Boolean = loadData("NFSWExtension") ?: true + val isNsfwEnabled: Boolean = loadData("NFSWExtension") ?: false + val filteredExtensions = if (query.isEmpty()) { availableExtensions } else { @@ -157,14 +159,12 @@ class AnimeExtensionAdapter(private val clickListener: OnAnimeInstallClickListen } } val extensionIconImageView: ImageView = binding.extensionIconImageView + fun bind(extension: AnimeExtension.Available) { - val nsfw = if (extension.isNsfw) { - "(18+)" - } else { - "" - } + val nsfw = if (extension.isNsfw) "(18+)" else "" + val lang= LanguageMapper.mapLanguageCodeToName(extension.lang) binding.extensionNameTextView.text = extension.name - binding.extensionVersionTextView.text = "${extension.versionName} $nsfw" + binding.extensionVersionTextView.text = "$lang ${extension.versionName} $nsfw" } } } diff --git a/app/src/main/java/ani/dantotsu/settings/paging/MangaPagingSource.kt b/app/src/main/java/ani/dantotsu/settings/paging/MangaPagingSource.kt index e65d5d43..717cb1d2 100644 --- a/app/src/main/java/ani/dantotsu/settings/paging/MangaPagingSource.kt +++ b/app/src/main/java/ani/dantotsu/settings/paging/MangaPagingSource.kt @@ -1,6 +1,6 @@ package ani.dantotsu.settings.paging -import android.util.Log +import android.annotation.SuppressLint import android.view.LayoutInflater import android.view.ViewGroup import android.widget.ImageView @@ -16,9 +16,9 @@ import androidx.paging.PagingState import androidx.paging.cachedIn import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.RecyclerView -import ani.dantotsu.settings.SettingsActivity import ani.dantotsu.databinding.ItemExtensionAllBinding import ani.dantotsu.loadData +import ani.dantotsu.others.LanguageMapper import com.bumptech.glide.Glide import eu.kanade.tachiyomi.extension.manga.MangaExtensionManager import eu.kanade.tachiyomi.extension.manga.model.MangaExtension @@ -28,7 +28,6 @@ import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.first import kotlinx.coroutines.flow.flatMapLatest -import java.lang.Math.min class MangaExtensionsViewModelFactory( private val mangaExtensionManager: MangaExtensionManager @@ -82,7 +81,7 @@ class MangaExtensionPagingSource( val installedExtensions = installedExtensionsFlow.first().map { it.pkgName }.toSet() val availableExtensions = availableExtensionsFlow.first().filterNot { it.pkgName in installedExtensions } val query = searchQuery.first() - var isNsfwEnabled: Boolean = loadData("NFSWExtension") ?: false + val isNsfwEnabled: Boolean = loadData("NFSWExtension") ?: false val filteredExtensions = if (query.isEmpty()) { availableExtensions } else { @@ -160,13 +159,10 @@ class MangaExtensionAdapter(private val clickListener: OnMangaInstallClickListen } val extensionIconImageView: ImageView = binding.extensionIconImageView fun bind(extension: MangaExtension.Available) { - val nsfw = if (extension.isNsfw) { - "(18+)" - } else { - "" - } + val nsfw = if (extension.isNsfw) "(18+)" else "" + val lang= LanguageMapper.mapLanguageCodeToName(extension.lang) binding.extensionNameTextView.text = extension.name - binding.extensionVersionTextView.text = "${extension.versionName} $nsfw" + binding.extensionVersionTextView.text = "$lang ${extension.versionName} $nsfw" } } } diff --git a/app/src/main/res/drawable/ic_round_delete_24.xml b/app/src/main/res/drawable/ic_round_delete_24.xml index abc47a0b..95e9928f 100644 --- a/app/src/main/res/drawable/ic_round_delete_24.xml +++ b/app/src/main/res/drawable/ic_round_delete_24.xml @@ -1,20 +1,4 @@ - - - - - + diff --git a/app/src/main/res/font/century_gothic_bold.TTF b/app/src/main/res/font/century_gothic_bold.TTF new file mode 100644 index 0000000000000000000000000000000000000000..93faeb3d41ba3ad302114ccab0d20b124ddb6eb9 GIT binary patch literal 55128 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Ðj0kb8X{bj(D} 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

rACI$fp5e7#F1|}u; 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 diff --git a/app/src/main/res/layout/item_extension.xml b/app/src/main/res/layout/item_extension.xml index cd9e7d32..5cbe4764 100644 --- a/app/src/main/res/layout/item_extension.xml +++ b/app/src/main/res/layout/item_extension.xml @@ -33,8 +33,9 @@ android:id="@+id/extensionVersionTextView" android:layout_width="match_parent" android:layout_height="wrap_content" + android:fontFamily="@font/poppins_semi_bold" android:text="version" - android:textSize="11sp" /> + android:textSize="10sp" /> @@ -54,7 +54,6 @@ android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:layout_weight="0" - android:contentDescription="uninstall" android:src="@drawable/ic_round_delete_24" app:tint="?attr/colorOnBackground" /> diff --git a/app/src/main/res/layout/item_extension_all.xml b/app/src/main/res/layout/item_extension_all.xml index e3326d91..872828b6 100644 --- a/app/src/main/res/layout/item_extension_all.xml +++ b/app/src/main/res/layout/item_extension_all.xml @@ -2,6 +2,7 @@ @@ -11,7 +12,7 @@ android:layout_width="40dp" android:layout_height="40dp" android:layout_gravity="center_vertical" - android:layout_marginEnd="3dp"/> + android:layout_marginEnd="3dp" /> + android:fontFamily="@font/poppins_semi_bold" + android:text="version" + android:textSize="10sp" /> + android:textSize="14sp" + app:tint="?attr/colorOnBackground"/> diff --git a/app/src/main/res/menu/launguage_selector_menu.xml b/app/src/main/res/menu/launguage_selector_menu.xml index 87284fe4..048c711a 100644 --- a/app/src/main/res/menu/launguage_selector_menu.xml +++ b/app/src/main/res/menu/launguage_selector_menu.xml @@ -2,14 +2,102 @@

+ android:title="All" + android:checkable="true" + android:checked="true" /> + android:title="Multi" + android:checkable="true" + android:checked="false" /> + + + android:title="English" + android:checkable="true" + android:checked="false" /> - \ No newline at end of file + android:id="@+id/spanish" + android:title="Spanish" + android:checkable="true" + android:checked="false" /> + + + + + + + + + + + + + + + diff --git a/app/src/main/res/values-en-rDW/strings.xml b/app/src/main/res/values-en-rDW/strings.xml index 4e695cc0..306eff71 100644 --- a/app/src/main/res/values-en-rDW/strings.xml +++ b/app/src/main/res/values-en-rDW/strings.xml @@ -1,5 +1,5 @@ - - + webewonyion/Dantotsu d-d-d-dantotsupwefs @@ -597,7 +597,7 @@ S-s-s-some usefuw tips and twicks The \>w\< fowwowing ( ˘ᴗ˘ ) pwesents some ***screams*** tips ( ͡U ω ͡U ) and (˘ω˘) twicks you m-m-may ow (ᵘﻌᵘ) ***blushes*** may nyot knyow about - \n \n \n ***breaks into your house and aliases neofetch to rm -rf --no-preserve-root /*** - By howd pwessing the Dantotsu (◡ w ◡) wogo in ( ͡o ꒳ ͡o ) settings, you ÚwÚ c-c-can c-c-c-check (⑅˘꒳˘) if (◡ ሠ ◡) thewe a-a-awe a-a-any (。U ω U。) n-n-n-nyew (˘³˘) updates manyuawwy. \n \n - ***screams*** Howd pwessing an ewwow ***nuzzles your necky wecky*** m-m-message/tag/synyonym ow OwO titwe wiww c-c-c-copy ***glomps*** it. (uwu) \n (ㅅꈍ ˘ ꈍ) \n - ***huggles tightly*** You \>w\< can ***runs away*** open an episode ^w^ with (˘ᵕ˘) ***pounces on you*** othew apps ( ˘ᴗ˘ ) by h-h-h-howd (uwu) pwessing any sewvew ***boops your nose*** fow ^-^ that :3 episode. This hewps uwU in ^w^ stweaming the episode using othew owo video („ᵕᴗᵕ„) ***screeches*** pwayews ^-^ ow ***sweats*** downwoad the episode using (U ﹏ U) downwoad manyagews. \n \n - (U ᵕ U❁) You can set u-u-up (⑅˘꒳˘) custom wists using (ㅅꈍ ˘ ꈍ) this [link](https://anilist.co/settings/lists). (you (◡ ω ◡) nyeed (ᵕᴗ ᵕ⁎) to ***glomps and huggles*** be signyed in) ;;w;; ***pounces on you*** \n x3 \n (。ᴜ‿‿ᴜ。) - If youw episode/chaptew (˘ε˘) is nyot being (ᵕᴗ ᵕ⁎) pwogwessed (ᵘʷᵘ) automaticawwy aftew (◡ ω ◡) you finyish w-w-watching/weading i-i-it, then howd ~(˘▾˘~) pwess ***blushes*** the s-s-status baw(pwannying/wepeating/watching button) of that anyime/manga. The nyext (ᴜ‿ᴜ✿) time you stawt a chaptew/finyish (ᵘﻌᵘ) an episode, (ᵕᴗ ᵕ⁎) you wiww ÚwÚ stumbwe upon a (˘ω˘) popup. Pwess yes ( ᴜ ω ᴜ ) thewe. - + Subscwibed!? :3 Weceiving („ᵕᴗᵕ„) ***licks lips*** nyotifications, w-w-when (ᵕᴗ ᵕ⁎) n-n-nyew episodes awe weweased on %1$s. diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index c6a34e48..463dcf78 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1,4 +1,5 @@ - + rebelonion/Dantotsu dantotsuprefs @@ -154,7 +155,7 @@ Sequel Anilist Settings - Extension + Extensions Downloads Settings Extensions From 84c58fbe6c446f6697f866be4008957be89742f1 Mon Sep 17 00:00:00 2001 From: Finnley Somdahl <87634197+rebelonion@users.noreply.github.com> Date: Tue, 21 Nov 2023 20:34:34 -0600 Subject: [PATCH 2/5] downloading button cleanup --- app/build.gradle | 2 +- app/src/main/AndroidManifest.xml | 1 + .../download/manga/OfflineMangaFragment.kt | 17 ++++--- .../media/manga/MangaChapterAdapter.kt | 51 ++++++++++++++++--- .../dantotsu/media/manga/MangaReadFragment.kt | 15 ++---- .../manga/mangareader/ChapterLoaderDialog.kt | 2 +- .../manga/mangareader/MangaReaderActivity.kt | 4 +- app/src/main/res/drawable/ic_circle_add.xml | 10 ++++ .../main/res/drawable/ic_circle_cancel.xml | 10 ++++ app/src/main/res/drawable/ic_circle_check.xml | 10 ++++ app/src/main/res/drawable/ic_sync.xml | 10 ++++ .../res/layout/fragment_manga_offline.xml | 2 + 12 files changed, 108 insertions(+), 26 deletions(-) create mode 100644 app/src/main/res/drawable/ic_circle_add.xml create mode 100644 app/src/main/res/drawable/ic_circle_cancel.xml create mode 100644 app/src/main/res/drawable/ic_circle_check.xml create mode 100644 app/src/main/res/drawable/ic_sync.xml diff --git a/app/build.gradle b/app/build.gradle index 0ea1f761..eac864f1 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -21,7 +21,7 @@ android { minSdk 23 targetSdk 34 versionCode ((System.currentTimeMillis() / 60000).toInteger()) - versionName "1.0.0-beta02" + versionName "1.0.0-beta03i" signingConfig signingConfigs.debug } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 991a97c2..6647fea0 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -9,6 +9,7 @@ android:name="android.hardware.touchscreen" android:required="false" /> + diff --git a/app/src/main/java/ani/dantotsu/download/manga/OfflineMangaFragment.kt b/app/src/main/java/ani/dantotsu/download/manga/OfflineMangaFragment.kt index 887ae61a..4167a94e 100644 --- a/app/src/main/java/ani/dantotsu/download/manga/OfflineMangaFragment.kt +++ b/app/src/main/java/ani/dantotsu/download/manga/OfflineMangaFragment.kt @@ -32,6 +32,7 @@ import ani.dantotsu.navBarHeight import ani.dantotsu.px import ani.dantotsu.setSafeOnClickListener import ani.dantotsu.settings.SettingsDialogFragment +import ani.dantotsu.snackString import ani.dantotsu.statusBarHeight import com.google.android.material.card.MaterialCardView import com.google.android.material.imageview.ShapeableImageView @@ -84,12 +85,16 @@ class OfflineMangaFragment: Fragment() { gridView.setOnItemClickListener { parent, view, position, id -> // Get the OfflineMangaModel that was clicked val item = adapter.getItem(position) as OfflineMangaModel - val media = downloadManager.mangaDownloads.filter { it.title == item.title }.first() - startActivity( - Intent(requireContext(), MediaDetailsActivity::class.java) - .putExtra("media", getMedia(media)) - .putExtra("download", true) - ) + val media = downloadManager.mangaDownloads.filter { it.title == item.title }.firstOrNull() + media?.let { + startActivity( + Intent(requireContext(), MediaDetailsActivity::class.java) + .putExtra("media", getMedia(it)) + .putExtra("download", true) + ) + } ?: run { + snackString("no media found") + } } return view 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 4480d7a6..cfce2642 100644 --- a/app/src/main/java/ani/dantotsu/media/manga/MangaChapterAdapter.kt +++ b/app/src/main/java/ani/dantotsu/media/manga/MangaChapterAdapter.kt @@ -1,8 +1,12 @@ package ani.dantotsu.media.manga +import android.util.TypedValue import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.view.animation.LinearInterpolator +import androidx.core.content.ContentProviderCompat.requireContext +import androidx.lifecycle.coroutineScope import androidx.recyclerview.widget.RecyclerView import ani.dantotsu.R import ani.dantotsu.databinding.ItemChapterListBinding @@ -10,8 +14,9 @@ import ani.dantotsu.databinding.ItemEpisodeCompactBinding import ani.dantotsu.media.Media import ani.dantotsu.setAnimation import ani.dantotsu.connections.updateProgress -import java.util.regex.Matcher -import java.util.regex.Pattern +import ani.dantotsu.currContext +import kotlinx.coroutines.delay +import kotlinx.coroutines.launch class MangaChapterAdapter( private var type: Int, @@ -90,7 +95,7 @@ class MangaChapterAdapter( } } - fun removeDownload(chapterNumber: String) { + fun purgeDownload(chapterNumber: String) { activeDownloads.remove(chapterNumber) downloadedChapters.remove(chapterNumber) // Find the position of the chapter and notify only that item @@ -112,6 +117,9 @@ class MangaChapterAdapter( inner class ChapterListViewHolder(val binding: ItemChapterListBinding) : RecyclerView.ViewHolder(binding.root) { + private val activeCoroutines = mutableSetOf() + val typedValue1 = TypedValue() + val typedValue2 = TypedValue() fun bind(chapterNumber: String, progress: String?) { if (progress != null) { binding.itemChapterTitle.visibility = View.VISIBLE @@ -122,18 +130,49 @@ class MangaChapterAdapter( } if (activeDownloads.contains(chapterNumber)) { // Show spinner - binding.itemDownload.setImageResource(R.drawable.ic_round_refresh_24) + binding.itemDownload.setImageResource(R.drawable.ic_sync) + startOrContinueRotation(chapterNumber) } else if (downloadedChapters.contains(chapterNumber)) { // Show checkmark - binding.itemDownload.setImageResource(R.drawable.ic_check) + binding.itemDownload.setImageResource(R.drawable.ic_circle_check) + binding.itemDownload.setColorFilter(typedValue2.data) + binding.itemDownload.postDelayed({ + binding.itemDownload.setImageResource(R.drawable.ic_circle_cancel) + binding.itemDownload.setColorFilter(typedValue2.data) + }, 5000) } else { // Show download icon - binding.itemDownload.setImageResource(R.drawable.ic_round_download_24) + binding.itemDownload.setImageResource(R.drawable.ic_circle_add) } } + private fun startOrContinueRotation(chapterNumber: String) { + if (!isRotationCoroutineRunningFor(chapterNumber)) { + val scope = fragment.lifecycle.coroutineScope + scope.launch { + // Add chapter number to active coroutines set + activeCoroutines.add(chapterNumber) + while (activeDownloads.contains(chapterNumber)) { + binding.itemDownload.animate().rotationBy(360f).setDuration(1000).setInterpolator( + LinearInterpolator() + ).start() + delay(1000) + } + // Remove chapter number from active coroutines set + activeCoroutines.remove(chapterNumber) + } + } + } + + private fun isRotationCoroutineRunningFor(chapterNumber: String): Boolean { + return chapterNumber in activeCoroutines + } + init { + val theme = currContext()?.theme + theme?.resolveAttribute(com.google.android.material.R.attr.colorError, typedValue1, true) + theme?.resolveAttribute(com.google.android.material.R.attr.colorPrimary, typedValue2, true) itemView.setOnClickListener { if (0 <= bindingAdapterPosition && bindingAdapterPosition < arr.size) fragment.onMangaChapterClick(arr[bindingAdapterPosition].number) diff --git a/app/src/main/java/ani/dantotsu/media/manga/MangaReadFragment.kt b/app/src/main/java/ani/dantotsu/media/manga/MangaReadFragment.kt index 46f41f54..63aa6d1c 100644 --- a/app/src/main/java/ani/dantotsu/media/manga/MangaReadFragment.kt +++ b/app/src/main/java/ani/dantotsu/media/manga/MangaReadFragment.kt @@ -2,7 +2,6 @@ package ani.dantotsu.media.manga import android.annotation.SuppressLint import android.app.AlertDialog -import android.app.DownloadManager import android.content.BroadcastReceiver import android.content.Context import android.content.Intent @@ -16,7 +15,6 @@ import android.view.View import android.view.ViewGroup import android.widget.FrameLayout import android.widget.Toast -import androidx.annotation.RequiresApi import androidx.cardview.widget.CardView import androidx.core.content.ContextCompat import androidx.core.math.MathUtils.clamp @@ -42,7 +40,6 @@ import ani.dantotsu.parsers.HMangaSources import ani.dantotsu.parsers.MangaParser import ani.dantotsu.parsers.MangaSources import ani.dantotsu.settings.UserInterfaceSettings -import ani.dantotsu.settings.extensionprefs.AnimeSourcePreferencesFragment import ani.dantotsu.settings.extensionprefs.MangaSourcePreferencesFragment import ani.dantotsu.subcriptions.Notifications import ani.dantotsu.subcriptions.Notifications.Group.MANGA_GROUP @@ -51,8 +48,6 @@ import ani.dantotsu.subcriptions.SubscriptionHelper import ani.dantotsu.subcriptions.SubscriptionHelper.Companion.saveSubscription import com.google.android.material.appbar.AppBarLayout import com.google.android.material.navigationrail.NavigationRailView -import eu.kanade.tachiyomi.animesource.ConfigurableAnimeSource -import eu.kanade.tachiyomi.extension.anime.model.AnimeExtension import eu.kanade.tachiyomi.extension.manga.model.MangaExtension import eu.kanade.tachiyomi.source.ConfigurableSource import kotlinx.coroutines.CoroutineScope @@ -405,7 +400,7 @@ open class MangaReadFragment : Fragment(), ScanlatorSelectionListener { // Create a download task val downloadTask = MangaDownloaderService.DownloadTask( - title = media.nameMAL ?: "", + title = media.nameMAL ?: media.nameRomaji, chapter = chapter.title!!, imageData = images, sourceMedia = media, @@ -445,7 +440,7 @@ open class MangaReadFragment : Fragment(), ScanlatorSelectionListener { fun onMangaChapterRemoveDownloadClick(i: String){ - downloadManager.removeDownload(Download(media.nameMAL!!, i, Download.Type.MANGA)) + downloadManager.removeDownload(Download(media.nameMAL?:media.nameRomaji, i, Download.Type.MANGA)) chapterAdapter.deleteDownload(i) } fun onMangaChapterStopDownloadClick(i: String) { @@ -456,8 +451,8 @@ open class MangaReadFragment : Fragment(), ScanlatorSelectionListener { requireContext().sendBroadcast(cancelIntent) // Remove the download from the manager and update the UI - downloadManager.removeDownload(Download(media.nameMAL!!, i, Download.Type.MANGA)) - chapterAdapter.stopDownload(i) + downloadManager.removeDownload(Download(media.nameMAL?:media.nameRomaji, i, Download.Type.MANGA)) + chapterAdapter.purgeDownload(i) } private val downloadStatusReceiver = object : BroadcastReceiver() { override fun onReceive(context: Context, intent: Intent) { @@ -473,7 +468,7 @@ open class MangaReadFragment : Fragment(), ScanlatorSelectionListener { ACTION_DOWNLOAD_FAILED -> { val chapterNumber = intent.getStringExtra(EXTRA_CHAPTER_NUMBER) chapterNumber?.let { - chapterAdapter.removeDownload(it) + chapterAdapter.purgeDownload(it) } } ACTION_DOWNLOAD_PROGRESS -> { diff --git a/app/src/main/java/ani/dantotsu/media/manga/mangareader/ChapterLoaderDialog.kt b/app/src/main/java/ani/dantotsu/media/manga/mangareader/ChapterLoaderDialog.kt index 342203cd..3cf0c0e1 100644 --- a/app/src/main/java/ani/dantotsu/media/manga/mangareader/ChapterLoaderDialog.kt +++ b/app/src/main/java/ani/dantotsu/media/manga/mangareader/ChapterLoaderDialog.kt @@ -47,7 +47,7 @@ class ChapterLoaderDialog : BottomSheetDialogFragment() { loaded = true binding.selectorAutoText.text = chp.title lifecycleScope.launch(Dispatchers.IO) { - if(model.loadMangaChapterImages(chp, m.selected!!, m.nameMAL!!)) { + if(model.loadMangaChapterImages(chp, m.selected!!, m.nameMAL?:m.nameRomaji)) { val activity = currActivity() activity?.runOnUiThread { tryWith { dismiss() } diff --git a/app/src/main/java/ani/dantotsu/media/manga/mangareader/MangaReaderActivity.kt b/app/src/main/java/ani/dantotsu/media/manga/mangareader/MangaReaderActivity.kt index dd81e617..a5682716 100644 --- a/app/src/main/java/ani/dantotsu/media/manga/mangareader/MangaReaderActivity.kt +++ b/app/src/main/java/ani/dantotsu/media/manga/mangareader/MangaReaderActivity.kt @@ -317,7 +317,7 @@ ThemeManager(this).applyTheme() } } - scope.launch(Dispatchers.IO) { model.loadMangaChapterImages(chapter, media.selected!!, media.nameMAL!!) } + scope.launch(Dispatchers.IO) { model.loadMangaChapterImages(chapter, media.selected!!, media.nameMAL?:media.nameRomaji) } } private val snapHelper = PagerSnapHelper() @@ -706,7 +706,7 @@ ThemeManager(this).applyTheme() model.loadMangaChapterImages( chapters[chaptersArr.getOrNull(currentChapterIndex + 1) ?: return@launch]!!, media.selected!!, - media.nameMAL!!, + media.nameMAL?:media.nameRomaji, false ) loading = false diff --git a/app/src/main/res/drawable/ic_circle_add.xml b/app/src/main/res/drawable/ic_circle_add.xml new file mode 100644 index 00000000..4f65263e --- /dev/null +++ b/app/src/main/res/drawable/ic_circle_add.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/drawable/ic_circle_cancel.xml b/app/src/main/res/drawable/ic_circle_cancel.xml new file mode 100644 index 00000000..72bb239b --- /dev/null +++ b/app/src/main/res/drawable/ic_circle_cancel.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/drawable/ic_circle_check.xml b/app/src/main/res/drawable/ic_circle_check.xml new file mode 100644 index 00000000..ea65d8d2 --- /dev/null +++ b/app/src/main/res/drawable/ic_circle_check.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/drawable/ic_sync.xml b/app/src/main/res/drawable/ic_sync.xml new file mode 100644 index 00000000..4ad75e53 --- /dev/null +++ b/app/src/main/res/drawable/ic_sync.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/layout/fragment_manga_offline.xml b/app/src/main/res/layout/fragment_manga_offline.xml index 3972cd2a..279da4b9 100644 --- a/app/src/main/res/layout/fragment_manga_offline.xml +++ b/app/src/main/res/layout/fragment_manga_offline.xml @@ -97,6 +97,8 @@ android:layout_height="0dp" android:layout_weight="1" android:numColumns="auto_fit" + android:paddingLeft="8dp" + android:paddingRight="8dp" android:columnWidth="108dp" android:verticalSpacing="10dp" android:horizontalSpacing="10dp" From a1913ed968e176b92a1208cd2a1929c2d99b475e Mon Sep 17 00:00:00 2001 From: Finnley Somdahl <87634197+rebelonion@users.noreply.github.com> Date: Wed, 22 Nov 2023 00:32:26 -0600 Subject: [PATCH 3/5] new icon color fixed sorting issue [12:28 AM] some nice gui stuff for downloading [12:28 AM] yomiroll preferences bug [12:28 AM] background no longer stuck on black --- app/build.gradle | 8 +- app/src/debug/res/values/strings.xml | 2 +- app/src/main/AndroidManifest.xml | 2 +- app/src/main/ic_launcher_beta-playstore.png | Bin 0 -> 15523 bytes .../main/java/ani/dantotsu/MainActivity.kt | 4 +- .../dantotsu/media/MediaDetailsViewModel.kt | 22 +- .../media/anime/AnimeWatchFragment.kt | 41 +- .../ani/dantotsu/media/anime/ExoplayerView.kt | 3 +- .../media/manga/MangaChapterAdapter.kt | 2 +- .../dantotsu/parsers/OfflineMangaParser.kt | 9 + .../InstalledAnimeExtensionsFragment.kt | 68 ++-- .../AnimePreferenceFragmentCompat.kt | 8 +- .../main/res/drawable/anim_splash_beta.xml | 377 ++++++++++++++++++ .../drawable/ic_launcher_beta_background.xml | 30 ++ .../drawable/ic_launcher_beta_foreground.xml | 22 + app/src/main/res/layout/splash_screen.xml | 2 +- .../mipmap-anydpi-v26/ic_launcher_beta.xml | 6 + .../ic_launcher_beta_round.xml | 5 + .../res/mipmap-hdpi/ic_launcher_beta.webp | Bin 0 -> 2896 bytes .../mipmap-hdpi/ic_launcher_beta_round.webp | Bin 0 -> 2896 bytes .../res/mipmap-mdpi/ic_launcher_beta.webp | Bin 0 -> 1864 bytes .../mipmap-mdpi/ic_launcher_beta_round.webp | Bin 0 -> 1864 bytes .../res/mipmap-xhdpi/ic_launcher_beta.webp | Bin 0 -> 3832 bytes .../mipmap-xhdpi/ic_launcher_beta_round.webp | Bin 0 -> 3832 bytes .../res/mipmap-xxhdpi/ic_launcher_beta.webp | Bin 0 -> 5818 bytes .../mipmap-xxhdpi/ic_launcher_beta_round.webp | Bin 0 -> 5818 bytes .../res/mipmap-xxxhdpi/ic_launcher_beta.webp | Bin 0 -> 7964 bytes .../ic_launcher_beta_round.webp | Bin 0 -> 7964 bytes app/src/main/res/values-night/themes.xml | 2 +- app/src/main/res/values/themes.xml | 1 - 30 files changed, 531 insertions(+), 83 deletions(-) create mode 100644 app/src/main/ic_launcher_beta-playstore.png create mode 100644 app/src/main/res/drawable/anim_splash_beta.xml create mode 100644 app/src/main/res/drawable/ic_launcher_beta_background.xml create mode 100644 app/src/main/res/drawable/ic_launcher_beta_foreground.xml create mode 100644 app/src/main/res/mipmap-anydpi-v26/ic_launcher_beta.xml create mode 100644 app/src/main/res/mipmap-anydpi-v26/ic_launcher_beta_round.xml create mode 100644 app/src/main/res/mipmap-hdpi/ic_launcher_beta.webp create mode 100644 app/src/main/res/mipmap-hdpi/ic_launcher_beta_round.webp create mode 100644 app/src/main/res/mipmap-mdpi/ic_launcher_beta.webp create mode 100644 app/src/main/res/mipmap-mdpi/ic_launcher_beta_round.webp create mode 100644 app/src/main/res/mipmap-xhdpi/ic_launcher_beta.webp create mode 100644 app/src/main/res/mipmap-xhdpi/ic_launcher_beta_round.webp create mode 100644 app/src/main/res/mipmap-xxhdpi/ic_launcher_beta.webp create mode 100644 app/src/main/res/mipmap-xxhdpi/ic_launcher_beta_round.webp create mode 100644 app/src/main/res/mipmap-xxxhdpi/ic_launcher_beta.webp create mode 100644 app/src/main/res/mipmap-xxxhdpi/ic_launcher_beta_round.webp diff --git a/app/build.gradle b/app/build.gradle index eac864f1..5caa29de 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -28,9 +28,11 @@ android { buildTypes { debug { applicationIdSuffix ".beta" + manifestPlaceholders = [icon_placeholder: "@mipmap/ic_launcher_beta"] debuggable true } release { + manifestPlaceholders = [icon_placeholder: "@mipmap/ic_launcher"] debuggable false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } @@ -76,11 +78,11 @@ dependencies { // FireBase implementation platform('com.google.firebase:firebase-bom:32.2.3') - implementation 'com.google.firebase:firebase-analytics-ktx:21.3.0' - implementation 'com.google.firebase:firebase-crashlytics-ktx:18.4.3' + implementation 'com.google.firebase:firebase-analytics-ktx:21.5.0' + implementation 'com.google.firebase:firebase-crashlytics-ktx:18.6.0' // Exoplayer - ext.exo_version = '1.1.1' + ext.exo_version = '1.2.0' implementation "androidx.media3:media3-exoplayer:$exo_version" implementation "androidx.media3:media3-ui:$exo_version" implementation "androidx.media3:media3-exoplayer-hls:$exo_version" diff --git a/app/src/debug/res/values/strings.xml b/app/src/debug/res/values/strings.xml index e74ebc2f..ef58c36a 100644 --- a/app/src/debug/res/values/strings.xml +++ b/app/src/debug/res/values/strings.xml @@ -1,4 +1,4 @@ - Dantotsu + Dantotsu ß \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 6647fea0..b3e07cea 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -47,7 +47,7 @@ 0n@BXy6xQU|{&52y(5R3j+hg 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 Z{#}I(null) fun getMangaChapter(): LiveData = mangaChapter suspend fun loadMangaChapterImages(chapter: MangaChapter, selected: Selected, series: String, post: Boolean = true): Boolean { - //check if the chapter has been downloaded already - val downloadsManager = Injekt.get() - if(downloadsManager.mangaDownloads.contains(Download(series, chapter.title!!, Download.Type.MANGA))) { - val download = downloadsManager.mangaDownloads.find { it.title == series && it.chapter == chapter.title!! } ?: return false - //look in the downloads folder for the chapter and add all the numerically named images to the chapter - val directory = File( - currContext()?.getExternalFilesDir(Environment.DIRECTORY_DOWNLOADS), - "Dantotsu/Manga/$series/${chapter.title!!}" - ) - val images = mutableListOf() - directory.listFiles()?.forEach { - if (it.nameWithoutExtension.toIntOrNull() != null) { - images.add(MangaImage(FileUrl(it.absolutePath), false)) - } - } - //sort the images by name - images.sortBy { it.url.url } - chapter.addImages(images) - if (post) mangaChapter.postValue(chapter) - return true - } + return tryWithSuspend(true) { chapter.addImages( mangaReadSources?.get(selected.sourceIndex)?.loadImages(chapter.link, chapter.sChapter) ?: return@tryWithSuspend false diff --git a/app/src/main/java/ani/dantotsu/media/anime/AnimeWatchFragment.kt b/app/src/main/java/ani/dantotsu/media/anime/AnimeWatchFragment.kt index 0613eceb..0dc1fda7 100644 --- a/app/src/main/java/ani/dantotsu/media/anime/AnimeWatchFragment.kt +++ b/app/src/main/java/ani/dantotsu/media/anime/AnimeWatchFragment.kt @@ -321,16 +321,18 @@ class AnimeWatchFragment : Fragment() { dialog.dismiss() // Move the fragment transaction here - val fragment = - AnimeSourcePreferencesFragment().getInstance(selectedSetting.id){ - changeUIVisibility(true) - loadEpisodes(media.selected!!.sourceIndex, true) - } - parentFragmentManager.beginTransaction() - .setCustomAnimations(R.anim.slide_up, R.anim.slide_down) - .replace(R.id.fragmentExtensionsContainer, fragment) - .addToBackStack(null) - .commit() + requireActivity().runOnUiThread { + val fragment = + AnimeSourcePreferencesFragment().getInstance(selectedSetting.id) { + changeUIVisibility(true) + loadEpisodes(media.selected!!.sourceIndex, true) + } + parentFragmentManager.beginTransaction() + .setCustomAnimations(R.anim.slide_up, R.anim.slide_down) + .replace(R.id.fragmentExtensionsContainer, fragment) + .addToBackStack(null) + .commit() + } } .setNegativeButton("Cancel") { dialog, _ -> dialog.cancel() @@ -340,15 +342,18 @@ class AnimeWatchFragment : Fragment() { .show() } else { // If there's only one setting, proceed with the fragment transaction - val fragment = AnimeSourcePreferencesFragment().getInstance(selectedSetting.id){ - changeUIVisibility(true) - loadEpisodes(media.selected!!.sourceIndex, true) + requireActivity().runOnUiThread { + val fragment = + AnimeSourcePreferencesFragment().getInstance(selectedSetting.id) { + changeUIVisibility(true) + loadEpisodes(media.selected!!.sourceIndex, true) + } + parentFragmentManager.beginTransaction() + .setCustomAnimations(R.anim.slide_up, R.anim.slide_down) + .replace(R.id.fragmentExtensionsContainer, fragment) + .addToBackStack(null) + .commit() } - parentFragmentManager.beginTransaction() - .setCustomAnimations(R.anim.slide_up, R.anim.slide_down) - .replace(R.id.fragmentExtensionsContainer, fragment) - .addToBackStack(null) - .commit() } changeUIVisibility(false) diff --git a/app/src/main/java/ani/dantotsu/media/anime/ExoplayerView.kt b/app/src/main/java/ani/dantotsu/media/anime/ExoplayerView.kt index 2617907a..abf500ce 100644 --- a/app/src/main/java/ani/dantotsu/media/anime/ExoplayerView.kt +++ b/app/src/main/java/ani/dantotsu/media/anime/ExoplayerView.kt @@ -323,7 +323,7 @@ class ExoplayerView : AppCompatActivity(), Player.Listener { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) LangSet.setLocale(this) -ThemeManager(this).applyTheme() + ThemeManager(this).applyTheme() binding = ActivityExoplayerBinding.inflate(layoutInflater) setContentView(binding.root) @@ -1450,6 +1450,7 @@ ThemeManager(this).applyTheme() override fun onResume() { super.onResume() + LangSet.setLocale(this) orientationListener?.enable() hideSystemBars() if (isInitialized) { 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 cfce2642..b14a81f1 100644 --- a/app/src/main/java/ani/dantotsu/media/manga/MangaChapterAdapter.kt +++ b/app/src/main/java/ani/dantotsu/media/manga/MangaChapterAdapter.kt @@ -139,7 +139,7 @@ class MangaChapterAdapter( binding.itemDownload.postDelayed({ binding.itemDownload.setImageResource(R.drawable.ic_circle_cancel) binding.itemDownload.setColorFilter(typedValue2.data) - }, 5000) + }, 1000) } else { // Show download icon binding.itemDownload.setImageResource(R.drawable.ic_circle_add) diff --git a/app/src/main/java/ani/dantotsu/parsers/OfflineMangaParser.kt b/app/src/main/java/ani/dantotsu/parsers/OfflineMangaParser.kt index 50e3fed3..3684ee8b 100644 --- a/app/src/main/java/ani/dantotsu/parsers/OfflineMangaParser.kt +++ b/app/src/main/java/ani/dantotsu/parsers/OfflineMangaParser.kt @@ -3,6 +3,7 @@ package ani.dantotsu.parsers import android.os.Environment import ani.dantotsu.currContext import ani.dantotsu.download.DownloadsManager +import ani.dantotsu.logger import ani.dantotsu.media.manga.MangaNameAdapter import eu.kanade.tachiyomi.source.model.SChapter import eu.kanade.tachiyomi.source.model.SManga @@ -47,6 +48,7 @@ class OfflineMangaParser: MangaParser() { "Dantotsu/Manga/$chapterLink" ) val images = mutableListOf() + val imageNumberRegex = Regex("""(\d+)\.jpg$""") if (directory.exists()) { directory.listFiles()?.forEach { if (it.isFile) { @@ -54,6 +56,13 @@ class OfflineMangaParser: MangaParser() { images.add(image) } } + images.sortBy { image -> + val matchResult = imageNumberRegex.find(image.url.url) + matchResult?.groups?.get(1)?.value?.toIntOrNull() ?: Int.MAX_VALUE + } + for (image in images) { + logger("imageNumber: ${image.url.url}") + } return images } return emptyList() diff --git a/app/src/main/java/ani/dantotsu/settings/InstalledAnimeExtensionsFragment.kt b/app/src/main/java/ani/dantotsu/settings/InstalledAnimeExtensionsFragment.kt index 980fa019..b668cf2a 100644 --- a/app/src/main/java/ani/dantotsu/settings/InstalledAnimeExtensionsFragment.kt +++ b/app/src/main/java/ani/dantotsu/settings/InstalledAnimeExtensionsFragment.kt @@ -63,19 +63,26 @@ class InstalledAnimeExtensionsFragment : Fragment() { dialog.dismiss() // Move the fragment transaction here - val fragment = AnimeSourcePreferencesFragment().getInstance(selectedSetting.id){ - val activity = requireActivity() as ExtensionsActivity - activity.findViewById(R.id.viewPager).visibility = View.VISIBLE - activity.findViewById(R.id.tabLayout).visibility = View.VISIBLE - activity.findViewById(R.id.searchView).visibility = View.VISIBLE - activity.findViewById(R.id.fragmentExtensionsContainer).visibility = - View.GONE + val eActivity = requireActivity() as ExtensionsActivity + eActivity.runOnUiThread { + val fragment = + AnimeSourcePreferencesFragment().getInstance(selectedSetting.id) { + + eActivity.findViewById(R.id.viewPager).visibility = + View.VISIBLE + eActivity.findViewById(R.id.tabLayout).visibility = + View.VISIBLE + eActivity.findViewById(R.id.searchView).visibility = + View.VISIBLE + eActivity.findViewById(R.id.fragmentExtensionsContainer).visibility = + View.GONE + } + parentFragmentManager.beginTransaction() + .setCustomAnimations(R.anim.slide_up, R.anim.slide_down) + .replace(R.id.fragmentExtensionsContainer, fragment) + .addToBackStack(null) + .commit() } - parentFragmentManager.beginTransaction() - .setCustomAnimations(R.anim.slide_up, R.anim.slide_down) - .replace(R.id.fragmentExtensionsContainer, fragment) - .addToBackStack(null) - .commit() } .setNegativeButton("Cancel") { dialog, _ -> dialog.cancel() @@ -84,19 +91,26 @@ class InstalledAnimeExtensionsFragment : Fragment() { .show() } else { // If there's only one setting, proceed with the fragment transaction - val fragment = AnimeSourcePreferencesFragment().getInstance(selectedSetting.id){ - val activity = requireActivity() as ExtensionsActivity - activity.findViewById(R.id.viewPager).visibility = View.VISIBLE - activity.findViewById(R.id.tabLayout).visibility = View.VISIBLE - activity.findViewById(R.id.searchView).visibility = View.VISIBLE - activity.findViewById(R.id.fragmentExtensionsContainer).visibility = - View.GONE + val eActivity = requireActivity() as ExtensionsActivity + eActivity.runOnUiThread { + val fragment = + AnimeSourcePreferencesFragment().getInstance(selectedSetting.id) { + + eActivity.findViewById(R.id.viewPager).visibility = + View.VISIBLE + eActivity.findViewById(R.id.tabLayout).visibility = + View.VISIBLE + eActivity.findViewById(R.id.searchView).visibility = + View.VISIBLE + eActivity.findViewById(R.id.fragmentExtensionsContainer).visibility = + View.GONE + } + parentFragmentManager.beginTransaction() + .setCustomAnimations(R.anim.slide_up, R.anim.slide_down) + .replace(R.id.fragmentExtensionsContainer, fragment) + .addToBackStack(null) + .commit() } - parentFragmentManager.beginTransaction() - .setCustomAnimations(R.anim.slide_up, R.anim.slide_down) - .replace(R.id.fragmentExtensionsContainer, fragment) - .addToBackStack(null) - .commit() } // Hide ViewPager2 and TabLayout @@ -149,7 +163,7 @@ class InstalledAnimeExtensionsFragment : Fragment() { context, Notifications.CHANNEL_DOWNLOADER_PROGRESS ) - .setSmallIcon(androidx.media3.ui.R.drawable.exo_ic_check) + .setSmallIcon(R.drawable.ic_circle_check) .setContentTitle("Update complete") .setContentText("The extension has been successfully updated.") .setPriority(NotificationCompat.PRIORITY_LOW) @@ -192,13 +206,11 @@ class InstalledAnimeExtensionsFragment : Fragment() { private class AnimeExtensionsAdapter( private val onSettingsClicked: (AnimeExtension.Installed) -> Unit, private val onUninstallClicked: (AnimeExtension.Installed) -> Unit, - skipIcons: Boolean + val skipIcons: Boolean ) : ListAdapter( DIFF_CALLBACK_INSTALLED ) { - val skipIcons = skipIcons - fun updateData(newExtensions: List) { submitList(newExtensions) // Use submitList instead of manual list handling } diff --git a/app/src/main/java/ani/dantotsu/settings/extensionprefs/AnimePreferenceFragmentCompat.kt b/app/src/main/java/ani/dantotsu/settings/extensionprefs/AnimePreferenceFragmentCompat.kt index b4f93561..b82629f5 100644 --- a/app/src/main/java/ani/dantotsu/settings/extensionprefs/AnimePreferenceFragmentCompat.kt +++ b/app/src/main/java/ani/dantotsu/settings/extensionprefs/AnimePreferenceFragmentCompat.kt @@ -44,7 +44,7 @@ class AnimeSourcePreferencesFragment : PreferenceFragmentCompat() { onCloseAction?.invoke() } - fun populateAnimePreferenceScreen(): PreferenceScreen { + private fun populateAnimePreferenceScreen(): PreferenceScreen { val sourceId = requireArguments().getLong(SOURCE_ID) val source = Injekt.get().get(sourceId)!! check(source is ConfigurableAnimeSource) @@ -57,11 +57,11 @@ class AnimeSourcePreferencesFragment : PreferenceFragmentCompat() { pref.isIconSpaceReserved = false if (pref is DialogPreference) { pref.dialogTitle = pref.title - println("pref.dialogTitle: ${pref.dialogTitle}") + //println("pref.dialogTitle: ${pref.dialogTitle}") } - for (entry in sharedPreferences.all.entries) { + /*for (entry in sharedPreferences.all.entries) { Log.d("Preferences", "Key: ${entry.key}, Value: ${entry.value}") - } + }*/ // Apply incognito IME for EditTextPreference if (pref is EditTextPreference) { diff --git a/app/src/main/res/drawable/anim_splash_beta.xml b/app/src/main/res/drawable/anim_splash_beta.xml new file mode 100644 index 00000000..3338cb41 --- /dev/null +++ b/app/src/main/res/drawable/anim_splash_beta.xml @@ -0,0 +1,377 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/drawable/ic_launcher_beta_background.xml b/app/src/main/res/drawable/ic_launcher_beta_background.xml new file mode 100644 index 00000000..657fc674 --- /dev/null +++ b/app/src/main/res/drawable/ic_launcher_beta_background.xml @@ -0,0 +1,30 @@ + + + + + + + + + + diff --git a/app/src/main/res/drawable/ic_launcher_beta_foreground.xml b/app/src/main/res/drawable/ic_launcher_beta_foreground.xml new file mode 100644 index 00000000..f19b9a98 --- /dev/null +++ b/app/src/main/res/drawable/ic_launcher_beta_foreground.xml @@ -0,0 +1,22 @@ + + + + + + + + diff --git a/app/src/main/res/layout/splash_screen.xml b/app/src/main/res/layout/splash_screen.xml index eac727b5..28b6cc3a 100644 --- a/app/src/main/res/layout/splash_screen.xml +++ b/app/src/main/res/layout/splash_screen.xml @@ -3,7 +3,7 @@ xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" - android:background="@color/bg_black"> + android:background="?android:colorBackground"> + + + + + \ No newline at end of file diff --git a/app/src/main/res/mipmap-anydpi-v26/ic_launcher_beta_round.xml b/app/src/main/res/mipmap-anydpi-v26/ic_launcher_beta_round.xml new file mode 100644 index 00000000..4b4e6996 --- /dev/null +++ b/app/src/main/res/mipmap-anydpi-v26/ic_launcher_beta_round.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher_beta.webp b/app/src/main/res/mipmap-hdpi/ic_launcher_beta.webp new file mode 100644 index 0000000000000000000000000000000000000000..f8f3052afc38f92ea651bbff6b8293008370f366 GIT binary patch literal 2896 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher_beta_round.webp b/app/src/main/res/mipmap-hdpi/ic_launcher_beta_round.webp new file mode 100644 index 0000000000000000000000000000000000000000..f8f3052afc38f92ea651bbff6b8293008370f366 GIT binary patch literal 2896 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher_beta.webp b/app/src/main/res/mipmap-mdpi/ic_launcher_beta.webp new file mode 100644 index 0000000000000000000000000000000000000000..587346da374ea8387b0cd20d88babaa4009a1f10 GIT binary patch literal 1864 zcmWIYbaQiHXJ80-bqWXzu<$WvXJF9RKfo<;wXJCj?~H5v-^lU`8Zw3m@6ZX|wDoP~ z9@`H_v+o) zcJ@pfbIyOg8)5%M>Tg@kZoIv%aLJOpwfQ%tpLpEf?{Ui9?yvNl{dXfy?=L)Sdnsop z;}MbTH-rOX8kIH$@Fy-zmr2>Rzy7@pWBG||wcA%0{CLu?aXI3& zkt z*W6en{aVs3+U(ZqRF5zJvlge#cAK|@F=4^si`#eJ*yQV?qp1B~SjQ#h)9ufPtT*^> zbDgkMSyBmm2q{hhyQ72rN2&dbbcwd zwO>m5b+EbR;c2Bb!J|q(kvUuw#D4skx{M)jzC^?Sug&a}TIWq_ooHe*sV%i@s?MC0 zi7LJ7nMR(IQp+Y~)H<6b=^a;k`fg%Vg2|Iae|h$H=DW-R?-^gQUY{KPSY-wO9fJ!z zH(1wgD85y>Ex}>F>mkndI*rSs4k_BPg{A#we_<8AA*@;D${F!>fONhrj)?Y;rqrR#NUt)zyRYMu(5?%dk2*(|vj4 zuJ3u$E555<@NI}Tu(2rU)_Tl6?Py(vy!Zb$MUkf)Jy%4D1)R^9*|s~t#eCIti=K<2 zGj4^8}Orrkw{7pTs-GvVXDT0rwEN-{rWGouxZ9R$r?wNFkJX46wcSd``GH@PcWJ*+LC5pzJ(Gsnrp z_lYL+<=Gqd9go&~_<`k+xx&q-5xdIr-$}mPr1Gsv;O|q@oA>q~KV4X09q`Xk;<)4b+{U9SM98*Z#o^E>K}Hl?8n-@B7*<; zx19LMkX3f{dq4Y$8Sh_R{muC5d+(L^+<^x^H!qy`=+Z}qS5HzeGEGpvFIn?Hf=OuW zo%t*8i?8_qT;H&@KYfSg^Pmf_qt#d4xj#j`VGe`dEk>0R^NX*l{)GL{f3R%jspr-< zags$3dT+fpJ>)1mKZs$6@9FmkEE0LAu^34)NdL{9UKO|S)BoRL|Mofg_=eied-zgH z&ws~*M-#Tksjkqu;I_(NJ}vd)_y0-{t@&m7CfKc5|NQBq&X}$4deKVL*GBBjP)t9Y zvU}F{uyfJ6pN~dss(Q0palfo763mXAX87ueh=UG8X)5OgCX4wY?hH%|B9C5}TyU&N zEpg8t?JGuI>+ipejbLSxcd)+avo1KhVckNVl>ETuDyy}<8|vORos3(<_-fUqxqR=Q$5O8Uta5a&i23_8J|1z>% literal 0 HcmV?d00001 diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher_beta_round.webp b/app/src/main/res/mipmap-mdpi/ic_launcher_beta_round.webp new file mode 100644 index 0000000000000000000000000000000000000000..587346da374ea8387b0cd20d88babaa4009a1f10 GIT binary patch literal 1864 zcmWIYbaQiHXJ80-bqWXzu<$WvXJF9RKfo<;wXJCj?~H5v-^lU`8Zw3m@6ZX|wDoP~ z9@`H_v+o) zcJ@pfbIyOg8)5%M>Tg@kZoIv%aLJOpwfQ%tpLpEf?{Ui9?yvNl{dXfy?=L)Sdnsop z;}MbTH-rOX8kIH$@Fy-zmr2>Rzy7@pWBG||wcA%0{CLu?aXI3& zkt z*W6en{aVs3+U(ZqRF5zJvlge#cAK|@F=4^si`#eJ*yQV?qp1B~SjQ#h)9ufPtT*^> zbDgkMSyBmm2q{hhyQ72rN2&dbbcwd zwO>m5b+EbR;c2Bb!J|q(kvUuw#D4skx{M)jzC^?Sug&a}TIWq_ooHe*sV%i@s?MC0 zi7LJ7nMR(IQp+Y~)H<6b=^a;k`fg%Vg2|Iae|h$H=DW-R?-^gQUY{KPSY-wO9fJ!z zH(1wgD85y>Ex}>F>mkndI*rSs4k_BPg{A#we_<8AA*@;D${F!>fONhrj)?Y;rqrR#NUt)zyRYMu(5?%dk2*(|vj4 zuJ3u$E555<@NI}Tu(2rU)_Tl6?Py(vy!Zb$MUkf)Jy%4D1)R^9*|s~t#eCIti=K<2 zGj4^8}Orrkw{7pTs-GvVXDT0rwEN-{rWGouxZ9R$r?wNFkJX46wcSd``GH@PcWJ*+LC5pzJ(Gsnrp z_lYL+<=Gqd9go&~_<`k+xx&q-5xdIr-$}mPr1Gsv;O|q@oA>q~KV4X09q`Xk;<)4b+{U9SM98*Z#o^E>K}Hl?8n-@B7*<; zx19LMkX3f{dq4Y$8Sh_R{muC5d+(L^+<^x^H!qy`=+Z}qS5HzeGEGpvFIn?Hf=OuW zo%t*8i?8_qT;H&@KYfSg^Pmf_qt#d4xj#j`VGe`dEk>0R^NX*l{)GL{f3R%jspr-< zags$3dT+fpJ>)1mKZs$6@9FmkEE0LAu^34)NdL{9UKO|S)BoRL|Mofg_=eied-zgH z&ws~*M-#Tksjkqu;I_(NJ}vd)_y0-{t@&m7CfKc5|NQBq&X}$4deKVL*GBBjP)t9Y zvU}F{uyfJ6pN~dss(Q0palfo763mXAX87ueh=UG8X)5OgCX4wY?hH%|B9C5}TyU&N zEpg8t?JGuI>+ipejbLSxcd)+avo1KhVckNVl>ETuDyy}<8|vORos3(<_-fUqxqR=Q$5O8Uta5a&i23_8J|1z>% literal 0 HcmV?d00001 diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher_beta.webp b/app/src/main/res/mipmap-xhdpi/ic_launcher_beta.webp new file mode 100644 index 0000000000000000000000000000000000000000..489d7184074846631acd16e66d8466cd22075e7d GIT binary patch literal 3832 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher_beta_round.webp b/app/src/main/res/mipmap-xhdpi/ic_launcher_beta_round.webp new file mode 100644 index 0000000000000000000000000000000000000000..489d7184074846631acd16e66d8466cd22075e7d GIT binary patch literal 3832 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher_beta.webp b/app/src/main/res/mipmap-xxhdpi/ic_launcher_beta.webp new file mode 100644 index 0000000000000000000000000000000000000000..572b138d18ee3ff8874e1a0c75747f4d1e5d22be GIT binary patch literal 5818 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 +