feat: toggle for icon in rpc

This commit is contained in:
aayush262 2024-04-10 14:05:24 +05:30
parent c242d9dd99
commit 5e5277404e
7 changed files with 27 additions and 6 deletions

View file

@ -71,4 +71,6 @@ object Discord {
const val application_Id = "1163925779692912771" const val application_Id = "1163925779692912771"
const val small_Image: String = const val small_Image: String =
"mp:external/GJEe4hKzr8w56IW6ZKQz43HFVEo8pOtA_C-dJiWwxKo/https/cdn.discordapp.com/app-icons/1163925779692912771/f6b42d41dfdf0b56fcc79d4a12d2ac66.png" "mp:external/GJEe4hKzr8w56IW6ZKQz43HFVEo8pOtA_C-dJiWwxKo/https/cdn.discordapp.com/app-icons/1163925779692912771/f6b42d41dfdf0b56fcc79d4a12d2ac66.png"
const val small_Image_AniList: String =
"mp:external/rHOIjjChluqQtGyL_UHk6Z4oAqiVYlo_B7HSGPLSoUg/%3Fsize%3D128/https/cdn.discordapp.com/icons/210521487378087947/a_f54f910e2add364a3da3bb2f2fce0c72.webp"
} }

View file

@ -71,8 +71,8 @@ open class RPC(val token: String, val coroutineContext: CoroutineContext) {
assets = Activity.Assets( assets = Activity.Assets(
largeImage = data.largeImage?.url?.discordUrl(), largeImage = data.largeImage?.url?.discordUrl(),
largeText = data.largeImage?.label, largeText = data.largeImage?.label,
smallImage = data.smallImage?.url?.discordUrl(), smallImage = if (PrefManager.getVal(PrefName.ShowIcon)) Discord.small_Image_AniList.discordUrl() else Discord.small_Image.discordUrl(),
smallText = data.smallImage?.label smallText = if (PrefManager.getVal(PrefName.ShowIcon)) "Anilist" else "Dantotsu",
), ),
buttons = data.buttons.map { it.label }, buttons = data.buttons.map { it.label },
metadata = Activity.Metadata( metadata = Activity.Metadata(

View file

@ -1139,7 +1139,6 @@ class ExoplayerView : AppCompatActivity(), Player.Listener, SessionAvailabilityL
it it
) )
}, },
smallImage = RPC.Link("Dantotsu", Discord.small_Image),
buttons = buttons buttons = buttons
) )
) )

View file

@ -412,7 +412,6 @@ class MangaReaderActivity : AppCompatActivity() {
?: getString(R.string.chapter_num, chap.number), ?: getString(R.string.chapter_num, chap.number),
state = "${chap.number}/${media.manga?.totalChapters ?: "??"}", state = "${chap.number}/${media.manga?.totalChapters ?: "??"}",
largeImage = media.cover?.let { cover -> RPC.Link(media.userPreferredName, cover) }, largeImage = media.cover?.let { cover -> RPC.Link(media.userPreferredName, cover) },
smallImage = RPC.Link("Dantotsu", Discord.small_Image),
buttons = buttons buttons = buttons
) )
) )

View file

@ -31,7 +31,10 @@ class DiscordDialogFragment: BottomSheetDialogFragment() {
"anilist" -> binding.radioAnilist.isChecked = true "anilist" -> binding.radioAnilist.isChecked = true
else -> binding.radioAnilist.isChecked = true else -> binding.radioAnilist.isChecked = true
} }
binding.showIcon.isChecked = PrefManager.getVal(PrefName.ShowIcon)
binding.showIcon.setOnCheckedChangeListener { _, isChecked ->
PrefManager.setVal(PrefName.ShowIcon, isChecked)
}
binding.anilistLinkPreview.text = getString(R.string.anilist_link, PrefManager.getVal<String>(PrefName.AnilistUserName)) binding.anilistLinkPreview.text = getString(R.string.anilist_link, PrefManager.getVal<String>(PrefName.AnilistUserName))
binding.radioGroup.setOnCheckedChangeListener { _, checkedId -> binding.radioGroup.setOnCheckedChangeListener { _, checkedId ->

View file

@ -166,6 +166,7 @@ enum class PrefName(val data: Pref) { //TODO: Split this into multiple files
Incognito(Pref(Location.Irrelevant, Boolean::class, false)), Incognito(Pref(Location.Irrelevant, Boolean::class, false)),
OfflineMode(Pref(Location.Irrelevant, Boolean::class, false)), OfflineMode(Pref(Location.Irrelevant, Boolean::class, false)),
DiscordStatus(Pref(Location.Irrelevant, String::class, "online")), DiscordStatus(Pref(Location.Irrelevant, String::class, "online")),
ShowIcon(Pref(Location.Irrelevant, Boolean::class, true)),
DownloadsKeys(Pref(Location.Irrelevant, String::class, "")), DownloadsKeys(Pref(Location.Irrelevant, String::class, "")),
NovelLastExtCheck(Pref(Location.Irrelevant, Long::class, 0L)), NovelLastExtCheck(Pref(Location.Irrelevant, Long::class, 0L)),
ImageUrl(Pref(Location.Irrelevant, String::class, "")), ImageUrl(Pref(Location.Irrelevant, String::class, "")),

View file

@ -30,7 +30,24 @@
android:textAlignment="center" android:textAlignment="center"
android:textSize="20sp" android:textSize="20sp"
android:textStyle="bold" /> android:textStyle="bold" />
<com.google.android.material.materialswitch.MaterialSwitch
android:padding="16dp"
android:id="@+id/showIcon"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:checked="false"
android:drawableStart="@drawable/ic_anilist"
android:drawablePadding="16dp"
android:elegantTextHeight="true"
android:fontFamily="@font/poppins_bold"
android:minHeight="64dp"
android:text="@string/use_anilist_icon"
android:textAlignment="viewStart"
android:textColor="?attr/colorOnBackground"
app:cornerRadius="0dp"
app:drawableTint="?attr/colorPrimary"
app:showText="false"
app:thumbTint="@color/button_switch_track" />
<RadioGroup <RadioGroup
android:id="@+id/radio_group" android:id="@+id/radio_group"
android:layout_width="match_parent" android:layout_width="match_parent"