chore: extract strings from settings

This commit is contained in:
TwistedUmbrellaX 2024-03-20 20:42:43 -04:00
parent ab9b92035e
commit 6e349b84c0
3 changed files with 38 additions and 30 deletions

View file

@ -3,7 +3,6 @@ package ani.dantotsu.settings
import android.annotation.SuppressLint
import android.app.AlarmManager
import android.app.AlertDialog
import android.content.ComponentName
import android.content.Context
import android.content.Intent
import android.graphics.drawable.Animatable
@ -22,7 +21,6 @@ import android.view.animation.AnimationUtils
import android.view.inputmethod.EditorInfo
import android.widget.ArrayAdapter
import android.widget.TextView
import android.widget.Toast
import androidx.activity.OnBackPressedCallback
import androidx.activity.result.contract.ActivityResultContracts
import androidx.annotation.OptIn
@ -114,7 +112,6 @@ class SettingsActivity : AppCompatActivity(), SimpleDialog.OnDialogResultListene
private var cursedCounter = 0
@OptIn(UnstableApi::class)
@SuppressLint("SetTextI18n", "Recycle")
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
ThemeManager(this).applyTheme()
@ -347,9 +344,8 @@ class SettingsActivity : AppCompatActivity(), SimpleDialog.OnDialogResultListene
}
val themeString: String = PrefManager.getVal(PrefName.Theme)
themeSwitcher.setText(
themeString.substring(0, 1) + themeString.substring(1).lowercase()
)
val themeText = themeString.substring(0, 1) + themeString.substring(1).lowercase()
themeSwitcher.setText(themeText)
themeSwitcher.setAdapter(
ArrayAdapter(
@ -580,7 +576,7 @@ class SettingsActivity : AppCompatActivity(), SimpleDialog.OnDialogResultListene
val editText = dialogView.findViewById<TextInputEditText>(R.id.userAgentTextBox)
editText.setText(PrefManager.getVal<String>(PrefName.DefaultUserAgent))
val alertDialog = AlertDialog.Builder(this@SettingsActivity, R.style.MyPopup)
.setTitle("User Agent")
.setTitle(R.string.user_agent)
.setView(dialogView)
.setPositiveButton(getString(R.string.ok)) { dialog, _ ->
PrefManager.setVal(PrefName.DefaultUserAgent, editText.text.toString())
@ -645,13 +641,13 @@ class SettingsActivity : AppCompatActivity(), SimpleDialog.OnDialogResultListene
) { _, which, isChecked ->
selectedArray[which] = isChecked
}
.setPositiveButton("Import...") { dialog, _ ->
.setPositiveButton(R.string.button_import) { dialog, _ ->
openDocumentLauncher.launch(arrayOf("*/*"))
dialog.dismiss()
}
.setNegativeButton("Export...") { dialog, _ ->
.setNegativeButton(R.string.button_export) { dialog, _ ->
if (!selectedArray.contains(true)) {
toast("No location selected")
toast(R.string.no_location_selected)
return@setNegativeButton
}
dialog.dismiss()
@ -667,7 +663,7 @@ class SettingsActivity : AppCompatActivity(), SimpleDialog.OnDialogResultListene
password
)
} else {
toast("Password cannot be empty")
toast(R.string.password_cannot_be_empty)
}
}
} else {
@ -679,7 +675,7 @@ class SettingsActivity : AppCompatActivity(), SimpleDialog.OnDialogResultListene
)
}
}
.setNeutralButton("Cancel") { dialog, _ ->
.setNeutralButton(R.string.cancel) { dialog, _ ->
dialog.dismiss()
}
.create()
@ -877,9 +873,9 @@ class SettingsActivity : AppCompatActivity(), SimpleDialog.OnDialogResultListene
settingsNotificationsUseAlarmManager.setOnCheckedChangeListener { _, isChecked ->
if (isChecked) {
val alertDialog = AlertDialog.Builder(this@SettingsActivity, R.style.MyPopup)
.setTitle("Use Alarm Manager")
.setMessage("Using Alarm Manger can help fight against battery optimization, but may consume more battery. It also requires the Alarm Manager permission.")
.setPositiveButton("Use") { dialog, _ ->
.setTitle(R.string.use_alarm_manager)
.setMessage(R.string.use_alarm_manager_confirm)
.setPositiveButton(R.string.use) { dialog, _ ->
PrefManager.setVal(PrefName.UseAlarmManager, true)
if (SDK_INT >= Build.VERSION_CODES.S) {
if (!(getSystemService(Context.ALARM_SERVICE) as AlarmManager).canScheduleExactAlarms()) {
@ -890,7 +886,7 @@ class SettingsActivity : AppCompatActivity(), SimpleDialog.OnDialogResultListene
}
dialog.dismiss()
}
.setNegativeButton("Cancel") { dialog, _ ->
.setNegativeButton(R.string.cancel) { dialog, _ ->
settingsNotificationsCheckingSubscriptions.isChecked = false
PrefManager.setVal(PrefName.UseAlarmManager, false)
dialog.dismiss()
@ -1022,18 +1018,17 @@ class SettingsActivity : AppCompatActivity(), SimpleDialog.OnDialogResultListene
runOnUiThread {
if (Random.nextInt(0, 100) > 69) {
CustomBottomDialog.newInstance().apply {
title = "Enjoying the App?"
title = getString(R.string.enjoying_app)
addView(TextView(this@SettingsActivity).apply {
text =
"Consider donating!"
text = context.getString(R.string.consider_donating)
})
setNegativeButton("no moners :(") {
snackString("That's alright, you'll be a rich man soon :prayge:")
setNegativeButton(getString(R.string.no_moners)) {
snackString(R.string.you_be_rich)
dismiss()
}
setPositiveButton("denote :)") {
setPositiveButton(getString(R.string.donate)) {
binding.settingBuyMeCoffee.performClick()
dismiss()
}
@ -1066,7 +1061,7 @@ class SettingsActivity : AppCompatActivity(), SimpleDialog.OnDialogResultListene
context.packageName
)!!.component
)
setAction("Do it!") {
setAction(getString(R.string.do_it)) {
context.startActivity(mainIntent)
Runtime.getRuntime().exit(0)
}
@ -1080,14 +1075,14 @@ class SettingsActivity : AppCompatActivity(), SimpleDialog.OnDialogResultListene
// Inflate the dialog layout
val dialogView = LayoutInflater.from(this).inflate(R.layout.dialog_user_agent, null)
val box = dialogView.findViewById<TextInputEditText>(R.id.userAgentTextBox)
box?.hint = "Password"
box?.hint = getString(R.string.password)
box?.setSingleLine()
val dialog = AlertDialog.Builder(this, R.style.MyPopup)
.setTitle(getString(R.string.enter_password))
.setView(dialogView)
.setPositiveButton("OK", null)
.setNegativeButton("Cancel") { dialog, _ ->
.setPositiveButton(R.string.ok, null)
.setNegativeButton(R.string.cancel) { dialog, _ ->
password.fill('0')
dialog.dismiss()
callback(null)

View file

@ -148,7 +148,7 @@
android:elegantTextHeight="true"
android:fontFamily="@font/poppins_bold"
android:minHeight="64dp"
android:text="@string/use_alarm_manager"
android:text="@string/use_alarm_manager_reliable"
android:textAlignment="viewStart"
android:textColor="?attr/colorOnBackground"
app:cornerRadius="0dp"

View file

@ -394,7 +394,10 @@
\n\n_It is not required to sync both MAL and Anilist accounts._
</string>
<string name="notification_for_checking_subscriptions">Show notification for Checking Subscriptions</string>
<string name="use_alarm_manager">Use Alarm Manager for reliable Notifications</string>
<string name="use_alarm_manager">Use Alarm Manager</string>
<string name="use_alarm_manager_reliable">Use Alarm Manager for reliable Notifications</string>
<string name="use_alarm_manager_confirm">Using Alarm Manger can help fight against battery optimization, but may consume more battery. It also requires the Alarm Manager permission.</string>
<string name="use">Use</string>
<string name="checking_subscriptions">Notification for Checking Subscriptions</string>
<string name="subscriptions_checking_time_s">Subscriptions Update Frequency : %1$s</string>
<string name="subscriptions_checking_time">Subscriptions Update Frequency</string>
@ -412,7 +415,7 @@
<string name="long_click_to_check_update">You Long Click the button to check for App Update</string>
<string name="saved_to_path">Saved to:\n%s</string>
<string name="setting_progress">Setting progress to %1$d</string>
<string name="login_anilist_account">Please Login into anilist account!</string>
<string name="login_anilist_account">Please Login into AniList account!</string>
<string name="congrats_vro">Congrats Vro</string>
<string name="please_reload">Please Reload.</string>
<string name="copied_text">Copied "%1$s"</string>
@ -512,7 +515,7 @@
<string name="speed">Speed</string>
<string name="auto_update">Auto Update progress for %1$s?</string>
<string name="continue_from">Continue from %1$s?</string>
<string name="title_update_progress">Update progress on anilist?</string>
<string name="title_update_progress">Update progress on AniList?</string>
<string name="incognito_will_not_update">Incognito mode will still ignore progress.</string>
<string name="dont_ask_again">"Don\'t ask again for %1$s"</string>
<string name="default_speed">Default Speed</string>
@ -788,4 +791,14 @@ Non quae tempore quo provident laudantium qui illo dolor vel quia dolor et exerc
<string name="video_quality">Quality: %1$dp</string>
<string name="size_unknown">Unknown Size</string>
<string name="mb_size">%1$s MB</string>
<string name="button_import">Import…</string>
<string name="button_export">Export…</string>
<string name="no_location_selected">No location selected</string>
<string name="enjoying_app">Enjoying the App?</string>
<string name="consider_donating">Consider donating!</string>
<string name="no_moners">no moners :(</string>
<string name="you_be_rich">That\'s alright, you\'ll be a rich man soon :prayge:</string>
<string name="donate">donate :)</string>
<string name="do_it">Do it!</string>
<string name="password">Password</string>
</resources>