From c800cbd7dccda83b8ac87ce6cc6ff127fb7ebf82 Mon Sep 17 00:00:00 2001 From: Naveen Date: Wed, 8 May 2024 05:15:39 +0530 Subject: [PATCH] Make formatting phone number optional --- .../fossify/phone/activities/SettingsActivity.kt | 9 +++++++++ .../fossify/phone/adapters/RecentCallsAdapter.kt | 9 +++++++-- .../fossify/phone/helpers/CallContactHelper.kt | 8 +++++++- app/src/main/res/layout/activity_settings.xml | 15 +++++++++++++++ gradle/libs.versions.toml | 2 +- 5 files changed, 39 insertions(+), 4 deletions(-) diff --git a/app/src/main/kotlin/org/fossify/phone/activities/SettingsActivity.kt b/app/src/main/kotlin/org/fossify/phone/activities/SettingsActivity.kt index fa0e8633..7ce52c80 100644 --- a/app/src/main/kotlin/org/fossify/phone/activities/SettingsActivity.kt +++ b/app/src/main/kotlin/org/fossify/phone/activities/SettingsActivity.kt @@ -77,6 +77,7 @@ class SettingsActivity : SimpleActivity() { setupDialPadOpen() setupGroupSubsequentCalls() setupStartNameWithSurname() + setupFormatPhoneNumbers() setupDialpadVibrations() setupDialpadNumbers() setupDialpadBeeps() @@ -253,6 +254,14 @@ class SettingsActivity : SimpleActivity() { } } + private fun setupFormatPhoneNumbers() { + binding.settingsFormatPhoneNumbers.isChecked = config.formatPhoneNumbers + binding.settingsFormatPhoneNumbersHolder.setOnClickListener { + binding.settingsFormatPhoneNumbers.toggle() + config.formatPhoneNumbers = binding.settingsFormatPhoneNumbers.isChecked + } + } + private fun setupDialpadVibrations() { binding.apply { settingsDialpadVibration.isChecked = config.dialpadVibration diff --git a/app/src/main/kotlin/org/fossify/phone/adapters/RecentCallsAdapter.kt b/app/src/main/kotlin/org/fossify/phone/adapters/RecentCallsAdapter.kt index 3555a8c2..346921da 100644 --- a/app/src/main/kotlin/org/fossify/phone/adapters/RecentCallsAdapter.kt +++ b/app/src/main/kotlin/org/fossify/phone/adapters/RecentCallsAdapter.kt @@ -429,7 +429,8 @@ class RecentCallsAdapter( val currentFontSize = fontSize itemRecentsHolder.isSelected = selectedKeys.contains(call.id) val name = findContactByCall(call)?.getNameToDisplay() ?: call.name - var nameToShow = if (name == call.phoneNumber) { + val formatPhoneNumbers = activity.config.formatPhoneNumbers + var nameToShow = if (name == call.phoneNumber && formatPhoneNumbers) { SpannableString(name.formatPhoneNumber()) } else { SpannableString(name) @@ -440,7 +441,11 @@ class RecentCallsAdapter( // show specific number at "Show call details" dialog too if (refreshItemsListener == null) { - nameToShow = SpannableString("$name - ${call.specificType}, ${call.specificNumber.formatPhoneNumber()}") + nameToShow = if (formatPhoneNumbers) { + SpannableString("$name - ${call.specificType}, ${call.specificNumber.formatPhoneNumber()}") + } else { + SpannableString("$name - ${call.specificType}, ${call.specificNumber}") + } } } diff --git a/app/src/main/kotlin/org/fossify/phone/helpers/CallContactHelper.kt b/app/src/main/kotlin/org/fossify/phone/helpers/CallContactHelper.kt index 953a6118..f1f9a0cc 100644 --- a/app/src/main/kotlin/org/fossify/phone/helpers/CallContactHelper.kt +++ b/app/src/main/kotlin/org/fossify/phone/helpers/CallContactHelper.kt @@ -10,6 +10,7 @@ import org.fossify.commons.helpers.ContactsHelper import org.fossify.commons.helpers.MyContactsContentProvider import org.fossify.commons.helpers.ensureBackgroundThread import org.fossify.phone.R +import org.fossify.phone.extensions.config import org.fossify.phone.extensions.isConference import org.fossify.phone.models.CallContact @@ -51,7 +52,12 @@ fun getCallContact(context: Context, call: Call?, callback: (CallContact) -> Uni } } - callContact.number = number.formatPhoneNumber() + callContact.number = if (context.config.formatPhoneNumbers) { + number.formatPhoneNumber() + } else { + number + } + val contact = contacts.firstOrNull { it.doesHavePhoneNumber(number) } if (contact != null) { callContact.name = contact.getNameToDisplay() diff --git a/app/src/main/res/layout/activity_settings.xml b/app/src/main/res/layout/activity_settings.xml index 11f0e333..744b1471 100644 --- a/app/src/main/res/layout/activity_settings.xml +++ b/app/src/main/res/layout/activity_settings.xml @@ -184,6 +184,21 @@ + + + + + + diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 4de08a49..4944da8f 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -5,7 +5,7 @@ kotlinxSerializationJson = "1.5.1" #Eventbus eventbus = "3.3.1" #Fossify -commons = "d6845038bc" +commons = "bba99193a0" #Gradle gradlePlugins-agp = "8.3.2" #Other