From 277b16762c0ce2abd24004501b56256071702dea Mon Sep 17 00:00:00 2001 From: Spitap Date: Fri, 11 Mar 2022 12:25:16 +0100 Subject: [PATCH 1/7] Added message counter --- .../smsmessenger/activities/ThreadActivity.kt | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt index 82ac97e7..5065cb22 100644 --- a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt @@ -364,7 +364,10 @@ class ThreadActivity : SimpleActivity() { thread_send_message.isClickable = false thread_type_message.onTextChangeListener { checkSendMessageAvailability() - thread_character_counter.text = it.length.toString() + val messageLength = it.length + val messageCounter: Int = messageLength / 160 + @SuppressLint("SetTextI18n") + thread_character_counter.text = (160 - messageLength % 160).toString() + "/" + messageCounter.toString() } confirm_manage_contacts.setOnClickListener { From baf9c4a832515da949f841cd30632c46633f1610 Mon Sep 17 00:00:00 2001 From: Spitap Date: Fri, 11 Mar 2022 13:14:55 +0100 Subject: [PATCH 2/7] Correct how sms length is calculated (@tswistak) --- .../smsmessenger/activities/ThreadActivity.kt | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt index 5065cb22..3f279fc4 100644 --- a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt @@ -12,6 +12,7 @@ import android.os.Bundle import android.os.Handler import android.provider.ContactsContract import android.provider.Telephony +import android.telephony.SmsMessage import android.telephony.SubscriptionManager import android.text.TextUtils import android.util.TypedValue @@ -352,7 +353,6 @@ class ThreadActivity : SimpleActivity() { val adjustedPrimaryColor = getAdjustedPrimaryColor() thread_messages_fastscroller.updateColors(adjustedPrimaryColor) - thread_character_counter.beVisibleIf(config.showCharacterCounter) thread_character_counter.setTextSize(TypedValue.COMPLEX_UNIT_PX, getTextSize()) @@ -364,10 +364,9 @@ class ThreadActivity : SimpleActivity() { thread_send_message.isClickable = false thread_type_message.onTextChangeListener { checkSendMessageAvailability() - val messageLength = it.length - val messageCounter: Int = messageLength / 160 + val messageLength = SmsMessage.calculateLength(it, config.useSimpleCharacters) @SuppressLint("SetTextI18n") - thread_character_counter.text = (160 - messageLength % 160).toString() + "/" + messageCounter.toString() + thread_character_counter.text = messageLength[2].toString() + "/" + messageLength[0].toString() } confirm_manage_contacts.setOnClickListener { From 92f0dc3b1a6825671812d0a1d0ac902bcba8d13b Mon Sep 17 00:00:00 2001 From: Spitap Date: Fri, 11 Mar 2022 13:28:46 +0100 Subject: [PATCH 3/7] add mms flag when attachment is added --- .../smsmessenger/activities/ThreadActivity.kt | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt index 3f279fc4..9c46a616 100644 --- a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt @@ -363,10 +363,14 @@ class ThreadActivity : SimpleActivity() { thread_send_message.isClickable = false thread_type_message.onTextChangeListener { - checkSendMessageAvailability() - val messageLength = SmsMessage.calculateLength(it, config.useSimpleCharacters) @SuppressLint("SetTextI18n") - thread_character_counter.text = messageLength[2].toString() + "/" + messageLength[0].toString() + if(attachmentSelections.isEmpty()) { + checkSendMessageAvailability() + val messageLength = SmsMessage.calculateLength(it, config.useSimpleCharacters) + thread_character_counter.text = messageLength[2].toString() + "/" + messageLength[0].toString() + } else { + thread_character_counter.text = "mms" + } } confirm_manage_contacts.setOnClickListener { From 11a6a230aeb47c1882bca1075e5b1518bfc9d8c4 Mon Sep 17 00:00:00 2001 From: Spitap Date: Fri, 11 Mar 2022 17:50:39 +0100 Subject: [PATCH 4/7] Taking into account useSimpleCharacters option --- .../smsmessenger/activities/ThreadActivity.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt index 9c46a616..7b37b0d3 100644 --- a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt @@ -366,7 +366,8 @@ class ThreadActivity : SimpleActivity() { @SuppressLint("SetTextI18n") if(attachmentSelections.isEmpty()) { checkSendMessageAvailability() - val messageLength = SmsMessage.calculateLength(it, config.useSimpleCharacters) + val messageString = if(config.useSimpleCharacters) it.normalizeString() else it + val messageLength = SmsMessage.calculateLength(messageString, false) thread_character_counter.text = messageLength[2].toString() + "/" + messageLength[0].toString() } else { thread_character_counter.text = "mms" From 603f591ab48bcb2fb1dcc266fd5a6051a2126622 Mon Sep 17 00:00:00 2001 From: Spitap Date: Fri, 11 Mar 2022 18:42:52 +0100 Subject: [PATCH 5/7] correct formating --- .../smsmessenger/activities/ThreadActivity.kt | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt index 7b37b0d3..ad4b3f2e 100644 --- a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt @@ -353,6 +353,7 @@ class ThreadActivity : SimpleActivity() { val adjustedPrimaryColor = getAdjustedPrimaryColor() thread_messages_fastscroller.updateColors(adjustedPrimaryColor) + thread_character_counter.beVisibleIf(config.showCharacterCounter) thread_character_counter.setTextSize(TypedValue.COMPLEX_UNIT_PX, getTextSize()) @@ -364,11 +365,11 @@ class ThreadActivity : SimpleActivity() { thread_send_message.isClickable = false thread_type_message.onTextChangeListener { @SuppressLint("SetTextI18n") - if(attachmentSelections.isEmpty()) { + if (attachmentSelections.isEmpty()) { checkSendMessageAvailability() - val messageString = if(config.useSimpleCharacters) it.normalizeString() else it + val messageString = if (config.useSimpleCharacters) it.normalizeString() else it val messageLength = SmsMessage.calculateLength(messageString, false) - thread_character_counter.text = messageLength[2].toString() + "/" + messageLength[0].toString() + thread_character_counter.text = "${messageLength[2]}/${messageLength[0]}" } else { thread_character_counter.text = "mms" } From e9c9222861f5d350e3fa3574715e61212696fd09 Mon Sep 17 00:00:00 2001 From: Tibor Kaputa Date: Thu, 24 Mar 2022 22:20:14 +0100 Subject: [PATCH 6/7] Update ThreadActivity.kt --- .../smsmessenger/activities/ThreadActivity.kt | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt index ad4b3f2e..d20c9043 100644 --- a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt @@ -13,6 +13,7 @@ import android.os.Handler import android.provider.ContactsContract import android.provider.Telephony import android.telephony.SmsMessage +import android.telephony.SmsMessage import android.telephony.SubscriptionManager import android.text.TextUtils import android.util.TypedValue @@ -364,15 +365,10 @@ class ThreadActivity : SimpleActivity() { thread_send_message.isClickable = false thread_type_message.onTextChangeListener { - @SuppressLint("SetTextI18n") - if (attachmentSelections.isEmpty()) { - checkSendMessageAvailability() - val messageString = if (config.useSimpleCharacters) it.normalizeString() else it - val messageLength = SmsMessage.calculateLength(messageString, false) - thread_character_counter.text = "${messageLength[2]}/${messageLength[0]}" - } else { - thread_character_counter.text = "mms" - } + checkSendMessageAvailability() + val messageString = if (config.useSimpleCharacters) it.normalizeString() else it + val messageLength = SmsMessage.calculateLength(messageString, false) + thread_character_counter.text = "${messageLength[2]}/${messageLength[0]}" } confirm_manage_contacts.setOnClickListener { From bd2bc8bf50554dead29ed02de36d47111d83b9a8 Mon Sep 17 00:00:00 2001 From: Tibor Kaputa Date: Thu, 24 Mar 2022 22:20:37 +0100 Subject: [PATCH 7/7] removing a duplicate import --- .../simplemobiletools/smsmessenger/activities/ThreadActivity.kt | 1 - 1 file changed, 1 deletion(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt index d20c9043..b3385cf5 100644 --- a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt @@ -13,7 +13,6 @@ import android.os.Handler import android.provider.ContactsContract import android.provider.Telephony import android.telephony.SmsMessage -import android.telephony.SmsMessage import android.telephony.SubscriptionManager import android.text.TextUtils import android.util.TypedValue