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] 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 zcmWIYbaV6IW?%?+bqWXzu<)_wW?;~FKOiV@wXJDeu0*^28(AJfL&kfew>GB6>Ap>S z>Kl9e+m^yF(+n?62>f+v-l2K_5Bm08x^zE(Jx|q&JBm9Eo=o|p`+nK=FGbRxn_h9f zI)7%LL~i98n+sF#+`2YR*XqRk_rLAF@7u9^_wEn}Hy=0V00z|w-qMfP`dGyJD0olG zy}a$wjoH_?<=)?{@0Dv~SwC z`D^JkgjF=brrcPFv4V-hO6Ry65qqkIywKFyts| z`p!Oh>)y(2Ho9*UnC)0{^Zg0!ov3A>A z%YO>#tNyQ$ab6)KoUt~Mt@%aBsX4k+H+MJQcI%on^X_8HW#%8&uVL6fPjJ?R$p%+f z*#}A$9-R`kY|-qD0x#v)^2--Jw=6um{ry?_mD-y)?{G89eNMK`4LZHNX2uU$Ly=!~ zUhVtd7;Jx^!`R<6Yi3CNqtZv`m7H3(cFj?4)K>a>ChOgt=&lp*u8BXZx_>U{nP#iN zd_lqITAEvm{9OG0C)TAuRpI?8Cs^pM`SMby$L$&OAG3GN*m}$7i~F>fn*W)-761Ki z`+2~?E^*S26&*%LIyd%meB2moXVBFp+cDoOxRZ6Y+rRFc7ZvtAUfHqlgx=PT6JERz z>C~+K!F;XF$YoB%Wllj2)7ku9ZmA|-?1u}MH3^o4UGr@CC~0_nDp$om&YurIyt*(m z?tj@b@fSS$9o?dxEK2j7T!K3@qy)W<)sj}O@vyO$S!nuVm5b1ymS_6~cTS1m%&$52 zOuF&t{N)jU7|+x#T+DP(=Rw*7zk=TfWf{^ZD2Y}d;gae6qaS7xchBe<$E0+Px@D|; zKQW3kPv7{a`S6blUdQcCx7R+@wA^cS(#!Jp6lI3>Q#Gv^KXe_CQZJSMQ~zS-gS3Kb z(;Ck7hKY5W>9ap@oD~RiKd5w|{fF6)eC{*5z8_5e6S3gt0a>f-Z?8uzj4Za8p`3B! zceu&lzEtmf=h@H9sQQv%_Cl`Ls^#)}&6)mQbvf=V8#nDgyZFD^m-qK1X8e3EoF{M5 z{EG3Nz!mkSU&2+L#l(+f`3iKr*yAd^{ot3{=Tf_Mq&4~-lewfO2mRvCyWpvF?)jUh z*Zd!IU)0atXt%EN`^J4N{J+Iq1B17B@__oLN-d-P8<3Can&~b6g2OBO zfVYkR^$dsp4iVnxy3ZVEWHZfwZM=EyvgU1F( zCS%Efs8BDvnKiO(tN2g&}Qu)-@gcyk?Es?B|@;X`-G+%$lhWQ$fXM@!?gbH3+h2A#-{k!=tHbS|7dIjXIOXdXDfq%qe(t^?7+p zo?pRLmOjZTt{sKqH#;S?LgcSXeO&@7l#_u;|O_&+5}S@}e$S3g6J+JikRRYSyEvd|ByBgZ_kEd{pg! z+k{ceFmqiT*Th>a_dcr`um?m<_YAu9+t)RvNF%;;sm8y%6W0nKSmN5WlWB3OE2sBo zb*>j@GgeJ4o^a^G#N41CSAPaa8#@*pY^uwMRnzo*&o7?gdoV|CTUbY#Wvkbe9~ZA~ z@?hZDZ?!u+|D)Iu+snHWvO7bquR4^og-uT=56v+B>T~ZnICEO1 z#kM$4e8xRxHBWEh+y$1b#h=>_8*Dj!a)#*9FA@nt3`dt(St~}litR{aQt#X%VR*iT zS9_|CQ?`^_@rHdmYr5{H>RQPZ|95{R=CEYnZO_6jInDc5tLCXK*y7!3^3hAXWO-sK zXIWUQY0~WEEFFW0p*PVmG%Gq zy7SKG4`R6-z66|}_F`{{Sb;#sLypd=c{gH@&YbuAsAGp@|Iy>@QhE(5d>bbgNi~>s zxy<%x_HX^MKR(9mQE9kVoNdsj0!>l=FwdG(+j^W_{Phyo-t0CvIG2`_?4y^ez20Pg zhwb@9?>Xz@Km3?=&M zM@5c(^>T>c{DG;@Wsc~Znam2lyJY8Hd~f<|_df%kOUGNQl2<$lKk_f&*QJlLGo~9A zZ#(*hF?6|J?VGvr7vG=FpCJ8Z*2~a|Z|xO5CtN!drS$9Hg@hNZ3Que{PMgWB!1>Lt z|HW&OzxV3c*>^JCkv;U!O0LeiOjk5mkvnM#M_bk9_{6AVI~gVjaK1HS$h>^^Kwq8S z#rtQ|Crpj=dss5te#7oVGioP#M_rD|ntGXMUJai?d!pz8?N@FLCaW}`XRqJiAM?&E zZ$jO=hd)Kml_%u)s&BD9FSGaZ#LbTtLN4U+A9);IV9)9jqvChI$U*w}@*mmz>+i4s z`~UE%m0W5sp7P}JJ;*q${H*AR*>RQWQITtze(tcm9&m4`(#OTg3O}uVPVJ27NoPqY zsQ(!7?Zclw>+kw6?$`%B|Hj$cwbN};yl;tir{B_pju-XPuNL2&nxY%mk`yub+AZy5 zR{Klq*m&3#ZV7Fv4QMzSu->q%Z9|`%qTew~+1>+g8~K7(Y0Vef<|O&($x(;pq6RM; z^G=tpRm?b$vmkcill(=Yd5U2%HB&u)*6reJT{-h~D__KcEsLj$bR3`6$dP@_EMm1E z^V33i-g3s+g!$Vqg3Te8^jpi@WS%foBto_b{NZ}shf z!ToH zo&2k13#yjvKQOth{Y#jjj!VbImCB8#54X+?FD|dr+7!SuJ@>wY;)5;!a<*ORYGBa1 zxQ6*#Id2=^6GwkL(XQ#$vmA^)`j)F#FRXa!t$yD8_Sa)?H<^|vMtpt4v4KtIy;8w~ zK*NhO=b!lP^wLe`e*clz5kHqq$?x92v10Gf?ZSZ8>!43cUzULoIe*d<8zdd8r>d?Q*Ju4X(F*h*GsCD>$ nSuEkt{cGym|Npsq@cFEI6UMl`+#L4Ij~<^7-(7k-&4>X2dFO#s 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 zcmWIYbaVT_$G{No>J$(bVBzzakAXoy{(!i^SGJ~YxsN|A-}|;*Kv4L>y=zlLLS{<0 z?~}aX=QHL0m3#k-Z=2amiapr7@?hb0Tlr=0{~x`m?q#*>_06SjSKpk~ixhbEX0LFg zF0;PJ-O`zJS3LiBcW?Vl)y1qbfeak0Hr?Bvdwa3_^JT}>rpw&i78*S>^#83&_is_p zALY&Tej%$+qp2uaTkxVintuV~mZm$3+Z=>cZZ6CH_~F*R?+(bMix9=wZVpPq&Ef#t9_us2Qy2pQ&T#Q|N;!GlIkHqet8g7GjMehPJ#q0-3 zj0VjWVv{b1-v3>`v2n-mKRu61j|!X2QxGk`-nIL-K$FVJWx0vPHS^ws76Lr+;XT?CvxDok!37YANP<&UP-K>6(T6 z`a3_PB8ug0?_AnEp|IBOx&IvR%pjlRKJIVJB#M;QIVEzLtbBhzDmrvk-1qfITAnAD zv=z@v;AZyQQZbKZVZyG>x%2H=ZI@3;?iauQzIdIYm&Nw#n_h;wejRde=Z0tbotAUa zR12A-U$9P<>o(`ql}luW?!Ky7cxBF&YrF|ls(PjuoKwnbS8+|8{o+>go{*KsQBn=w zv9@~BGrn?PeAci;^M=ors_?7Ik&88tR^AF*Wab$*xpwIEtL)1syUZ4zv?j$^ z@Nsa|SQJEx`KkAIe(_9Vf{wysQIox?XNyXD}ia^&y zmu>TO+%AhKzg(wxY?H|1n_U-Wo)&C6=rE(}_SEMl&n?ehS-QzA?JDbp+Ts)Jdd8_e z%pNCVt2A}$_`Ml=`8WI!5j%e@c!SG{3kUu%8}p>`eA%(#LUNDN$>UL?N~t!}SBgEn zbl(%pGTW3+a^l0df{R@tN zUA^M}sf8|L;?pe~b?aQBZl~PH-yH1zLnVUiMdJ7A>p#}43G`j{uy{pc=4!7K-{QM+ z!dcr2?3w=BE@bp(HGcNbqeP_fxnXMI$%Q(>7gtpU+BN^&Wpk9d?b*MKmYEHYWTvEt z{+YLnA+gsuZ|0*}>%`A4wC_vc{I6_qU%B^VheH{c7I)m_OFO#mGdFWP@m+l~b=}cf zdYL!g-ww{dy!*TR)WCV)Z)LCd%)G@iU2&eyN0;hi&xQYQ$+G>oEfS3t6xBFWwRU;% zf>oBL7oK!zUB2RaF!k8&dsi##FTHSd`|7@!{e_h65e=ou%QjtIlIil-abN5SpGw^o zt8Z`Rl)hv!xov6OrPA}<^B!(7k>5MxNwKHhWS<&6$Lr67YV;1@+7yFiV(eYUNXxS$YRZx$^OzeYZo14@ z&^TA6yJpJrE3#TQ-p@NcA$(fpjIDhV^%Ls1X9n5L|6|NnbUE&FN$Fy%d4d({@$c)+9~7E^}1#^mpu|J(qD6pG5z$egiU(!x`$5onmS~* zoy*?ov!Bmt!@`5BOSc{{F8Z->_V0yaPanMsW6|uL{lLsYDA{0ZcwnMvf`sdd1ilA3 z3pRAC?yV4aKXZJ-NrnX7^xqT1`qE!1h)6~$u?b9-*s`+hS&VXXE>GdUCE~|FGB(~k zBT&pZ;g#7Ai(r{$$zAn-{0dfFoACPuQ_d`Jktt`r84o*p>htZ0zZC7C5X?AX6`x!3 zgeBtr4KhtV+cqr_GJLDS`m|c_=!9a`y$T;$C*6y4%-3!6VQg@l{PAR({Uyz1+AoCp zO+KA!^`1{&TO%6@XA3}S=605ntZR5Qbyz!udRp%EqzNpmQ zE!-!>+LVGXL^WOArQ)e&#&A&VscoA7#JZaYEYi73T7E5R-?&*-@^JTUMd?VT_2Oj@ zuSq(tkg>h?{j=0n*5e!RHQdeJd*Gg!exCDs=_$`$9Qb!|Fch`d{N1BxDygq|ULv~n z=dAik4d0K$vvci>N<>I~HKJT&;@ctwv)ol=4TrFf||8L3Jn;A#WhWY(u zI?>W+qA=^0<|CKMnyZu`o@xEX4~qO~6H z+oq_np>`ebGa;L~E2=oX-|RG7mgA%Jai2lroAW!o+`^+JPrciDr@-52_U11Jx4EO5 z*l(T|GhN&^kzw`G<6I8U16rm$@9Gs1J6SN3PU@YcI z1&x2>A8<%a-S(GfxkbNzZ9~V6H&eCaJU<;?^=CuYr}fL^LmvK~`a_O&U+_Ka_doP1 zzu$YkTl7a9>z$~8^BJe^7TBFi(DbY`@hH2da!2^7+djRfrAuDSjFR$+Jzo~GaKk=j zreEu>_fMbu-TB<_z><6YLC^noEc;w`q|!EpZ~Ba0$?|)dX6b+Gdt1}8=e=3u^`^xA z@2wu$lXE(q6EwcRDsTvqODOHP?R)vw@l)x)DgVa_ORfYO~{wM!6h2~9|u6^Uapz5a0=ena61dEmUniuY= zqPB{n%7@^MvU>+WCoFQyEK2cSIihw5PDr>7V>z;V)?} z+;e&hblT+W%W1 zcG0=nP%-*I$DaR;B|F28vg}Z-_Ta5pde81}&eDJX9xk#`wC69VUGzS3|8!~As3zgw z8OC`Mum0cXE7RLMMa?9?vq5kvH*@g&`J035>lMEK7Z>IK^qb{6)o`I3MCCtrCl|0~gx^=F;J z`s)RSEa~h8JKTSlSx6uL^q8M(Z&=(VH}4NG1gbKn8pM|LoISsE+Yg(>V$P#_^$cI$ z+_d@h(%!E5-|6T(^>xm_&*v|6nR-puYqQwW!o`kg0 zfmP?7!}Yks9X-F&*NPg*dTSp^6j<-O;(ry-;xv1Zc5!(q+-&H3oqTEEo>{Lr z7A#PDD&ncd`1V9*X7V)V*Y0+=BClSm^I`f^H)C%@Uglu|=gJAoFG&?H^F5}bS6%NP ztgG*(KE=I0Z_hsa&Xj)cV5Tj4ZekIGf(9I z;t5Xg+w*_t^w}!<4eTWwDj4Qo|IIu3*wx*YrkTBh0<2TL4s;%y*L|$e$WnaKv0Gnu z6s^C1Zpv4AzVnQG9;j`cP*$K2ptYOYTZO-M;eaTGJ#YE{n%%mkTArwARIM zmJ|rQQ*ro8QM%t!Lx~qZ510Rc`zGUQ^P*_$?}s1NrKtAavu)d`d}&|LAI0TvGZ!5a zTXHSqs9fdhz|EaA7TNs#fBCMq!*^x*_xCHkUtFGlDAIxXuDt2<5FV)oXi%D&k6<)!_5-~W;!TR%lw zy<)Lud@7T$i*d*QvM23Jm)^X2bE$mapKUeDbADH*U+CoW3O-OGDNrW&UowFCmSy;A e_IkU0#{1r6&Q?;Bb-kK(Jans+Yt%enMg{=3j9jw- 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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 +