Add proper strings for archive operations

This commit is contained in:
Ensar Sarajčić 2023-07-12 10:37:20 +02:00
parent 47861f605d
commit 7dbd6c5d9f
61 changed files with 693 additions and 70 deletions

View file

@ -3,6 +3,7 @@ package com.simplemobiletools.smsmessenger.activities
import android.annotation.SuppressLint
import android.content.Intent
import android.os.Bundle
import com.simplemobiletools.commons.dialogs.ConfirmationDialog
import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.commons.helpers.*
import com.simplemobiletools.smsmessenger.R
@ -82,8 +83,10 @@ class ArchivedConversationsActivity : SimpleActivity() {
}
private fun removeAll() {
removeAllArchivedConversations {
loadArchivedConversations()
ConfirmationDialog(this, "", R.string.empty_archive_confirmation, R.string.yes, R.string.no) {
removeAllArchivedConversations {
loadArchivedConversations()
}
}
}
@ -125,7 +128,7 @@ class ArchivedConversationsActivity : SimpleActivity() {
private fun showOrHidePlaceholder(show: Boolean) {
conversations_fastscroller.beGoneIf(show)
no_conversations_placeholder.beVisibleIf(show)
no_conversations_placeholder.text = getString(R.string.no_conversations_found)
no_conversations_placeholder.text = getString(R.string.no_archived_conversations)
}
@SuppressLint("NotifyDataSetChanged")

View file

@ -19,7 +19,7 @@ import java.util.*
class SettingsActivity : SimpleActivity() {
private var blockedNumbersAtPause = -1
private var recycleBinConversations = 0
private var archiveConversations = 0
override fun onCreate(savedInstanceState: Bundle?) {
isMaterialActivity = true
@ -64,7 +64,7 @@ class SettingsActivity : SimpleActivity() {
settings_general_settings_label,
settings_outgoing_messages_label,
settings_notifications_label,
settings_recycle_bin_label,
settings_archive_label,
settings_security_label
).forEach {
it.setTextColor(getProperPrimaryColor())
@ -252,36 +252,36 @@ class SettingsActivity : SimpleActivity() {
private fun setupUseRecycleBin() {
updateRecycleBinButtons()
settings_use_recycle_bin.isChecked = config.useArchive
settings_use_recycle_bin_holder.setOnClickListener {
settings_use_recycle_bin.toggle()
config.useArchive = settings_use_recycle_bin.isChecked
settings_use_archive.isChecked = config.useArchive
settings_use_archive_holder.setOnClickListener {
settings_use_archive.toggle()
config.useArchive = settings_use_archive.isChecked
updateRecycleBinButtons()
}
}
private fun updateRecycleBinButtons() {
settings_empty_recycle_bin_holder.beVisibleIf(config.useArchive)
settings_empty_archive_holder.beVisibleIf(config.useArchive)
}
private fun setupEmptyRecycleBin() {
ensureBackgroundThread {
recycleBinConversations = conversationsDB.getArchivedCount()
archiveConversations = conversationsDB.getArchivedCount()
runOnUiThread {
settings_empty_recycle_bin_size.text =
resources.getQuantityString(R.plurals.delete_conversations, recycleBinConversations, recycleBinConversations)
settings_empty_archive_size.text =
resources.getQuantityString(R.plurals.delete_conversations, archiveConversations, archiveConversations)
}
}
settings_empty_recycle_bin_holder.setOnClickListener {
if (recycleBinConversations == 0) {
toast(R.string.recycle_bin_empty)
settings_empty_archive_holder.setOnClickListener {
if (archiveConversations == 0) {
toast(R.string.archive_is_empty)
} else {
ConfirmationDialog(this, "", R.string.empty_recycle_bin_confirmation, R.string.yes, R.string.no) {
ConfirmationDialog(this, "", R.string.empty_archive_confirmation, R.string.yes, R.string.no) {
removeAllArchivedConversations()
recycleBinConversations = 0
settings_empty_recycle_bin_size.text =
resources.getQuantityString(R.plurals.delete_conversations, recycleBinConversations, recycleBinConversations)
archiveConversations = 0
settings_empty_archive_size.text =
resources.getQuantityString(R.plurals.delete_conversations, archiveConversations, archiveConversations)
}
}
}

View file

@ -889,7 +889,12 @@ class ThreadActivity : SimpleActivity() {
}
private fun askConfirmDelete() {
DeleteConfirmationDialog(this, getString(R.string.delete_whole_conversation_confirmation), config.useArchive) { skipRecycleBin ->
val confirmationMessage = if (config.useArchive) {
R.string.archive_whole_conversation_confirmation
} else {
R.string.delete_whole_conversation_confirmation
}
DeleteConfirmationDialog(this, getString(confirmationMessage), config.useArchive) { skipRecycleBin ->
ensureBackgroundThread {
if (skipRecycleBin || config.useArchive.not()) {
deleteConversation(threadId)