feat(accounts): redirect on avatar click (#310)

* feat(discord): custom buttons

* feat(discord): added haptics

* fine...

* fix(strings): my genius is frightening

* feat: add option to only show the first button

* feat: discord rpc menu

* feat(link): add button preview back

* feat(accounts): redirect on avatar click

---------

Co-authored-by: aayush262 <aayushthakur262006@gmail.com>
This commit is contained in:
ibo 2024-04-03 01:04:08 +02:00 committed by GitHub
parent 79d20b0b63
commit 9e96fd1e20
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 20 additions and 0 deletions

View file

@ -28,6 +28,7 @@ import androidx.annotation.OptIn
import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.app.AppCompatActivity
import androidx.core.content.ContextCompat import androidx.core.content.ContextCompat
import android.view.HapticFeedbackConstants import android.view.HapticFeedbackConstants
import androidx.core.view.ViewCompat.performHapticFeedback
import androidx.core.view.updateLayoutParams import androidx.core.view.updateLayoutParams
import androidx.documentfile.provider.DocumentFile import androidx.documentfile.provider.DocumentFile
import androidx.lifecycle.lifecycleScope import androidx.lifecycle.lifecycleScope
@ -211,6 +212,12 @@ class SettingsActivity : AppCompatActivity(), SimpleDialog.OnDialogResultListene
settingsAnilistUsername.visibility = View.VISIBLE settingsAnilistUsername.visibility = View.VISIBLE
settingsAnilistUsername.text = Anilist.username settingsAnilistUsername.text = Anilist.username
settingsAnilistAvatar.loadImage(Anilist.avatar) settingsAnilistAvatar.loadImage(Anilist.avatar)
settingsAnilistAvatar.setOnClickListener {
it.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS)
val anilistLink = getString(R.string.anilist_link, PrefManager.getVal<String>(PrefName.AnilistUserName))
openLinkInBrowser(anilistLink)
true
}
settingsMALLoginRequired.visibility = View.GONE settingsMALLoginRequired.visibility = View.GONE
settingsMALLogin.visibility = View.VISIBLE settingsMALLogin.visibility = View.VISIBLE
@ -226,6 +233,12 @@ class SettingsActivity : AppCompatActivity(), SimpleDialog.OnDialogResultListene
settingsMALUsername.visibility = View.VISIBLE settingsMALUsername.visibility = View.VISIBLE
settingsMALUsername.text = MAL.username settingsMALUsername.text = MAL.username
settingsMALAvatar.loadImage(MAL.avatar) settingsMALAvatar.loadImage(MAL.avatar)
settingsMALAvatar.setOnClickListener {
it.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS)
val myanilistLink = getString(R.string.myanilist_link, MAL.username)
openLinkInBrowser(myanilistLink)
true
}
} else { } else {
settingsMALAvatar.setImageResource(R.drawable.ic_round_person_24) settingsMALAvatar.setImageResource(R.drawable.ic_round_person_24)
settingsMALUsername.visibility = View.GONE settingsMALUsername.visibility = View.GONE
@ -252,6 +265,12 @@ class SettingsActivity : AppCompatActivity(), SimpleDialog.OnDialogResultListene
val username = PrefManager.getVal(PrefName.DiscordUserName, null as String?) val username = PrefManager.getVal(PrefName.DiscordUserName, null as String?)
if (id != null && avatar != null) { if (id != null && avatar != null) {
settingsDiscordAvatar.loadImage("https://cdn.discordapp.com/avatars/$id/$avatar.png") settingsDiscordAvatar.loadImage("https://cdn.discordapp.com/avatars/$id/$avatar.png")
settingsDiscordAvatar.setOnClickListener {
it.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS)
val discordLink = getString(R.string.discord_link, id)
openLinkInBrowser(discordLink)
true
}
} }
settingsDiscordUsername.visibility = View.VISIBLE settingsDiscordUsername.visibility = View.VISIBLE
settingsDiscordUsername.text = settingsDiscordUsername.text =

View file

@ -16,6 +16,7 @@
<string name="coffee" translatable="false">https://www.buymeacoffee.com/rebelonion</string> <string name="coffee" translatable="false">https://www.buymeacoffee.com/rebelonion</string>
<string name="anilist_link">https://anilist.co/user/%1$s/</string> <string name="anilist_link">https://anilist.co/user/%1$s/</string>
<string name="myanilist_link">https://myanimelist.net/profile/%1$s/</string>
<string name="discord_link">https://discord.com/users/%1$s/</string> <string name="discord_link">https://discord.com/users/%1$s/</string>
<string name="home">Home</string> <string name="home">Home</string>