diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/extensions/Context.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/extensions/Context.kt index 99223039..91cef212 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/extensions/Context.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/extensions/Context.kt @@ -36,7 +36,7 @@ fun Context.getEmptyContact(): Contact { val originalContactSource = if (hasContactPermissions()) config.lastUsedContactSource else SMT_PRIVATE val organization = Organization("", "") return Contact(0, "", "", "", "", "", "", "", ArrayList(), ArrayList(), ArrayList(), ArrayList(), originalContactSource, 0, 0, "", - null, "", ArrayList(), organization, ArrayList(), ArrayList(), DEFAULT_MIMETYPE) + null, "", ArrayList(), organization, ArrayList(), ArrayList(), DEFAULT_MIMETYPE, null) } fun Context.viewContact(contact: Contact) { diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/helpers/Constants.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/helpers/Constants.kt index 2713b1d8..3d5f4aaf 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/helpers/Constants.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/helpers/Constants.kt @@ -93,6 +93,7 @@ const val SHOW_CONTACT_SOURCE_FIELD = 4096 const val SHOW_WEBSITES_FIELD = 8192 const val SHOW_NICKNAME_FIELD = 16384 const val SHOW_IMS_FIELD = 32768 +const val SHOW_RINGTONE = 65536 const val DEFAULT_EMAIL_TYPE = CommonDataKinds.Email.TYPE_HOME const val DEFAULT_PHONE_NUMBER_TYPE = CommonDataKinds.Phone.TYPE_MOBILE diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/helpers/ContactsHelper.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/helpers/ContactsHelper.kt index 44337c93..e26afa4a 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/helpers/ContactsHelper.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/helpers/ContactsHelper.kt @@ -169,6 +169,7 @@ class ContactsHelper(val context: Context) { val addresses = ArrayList
() val events = ArrayList() val starred = cursor.getIntValue(StructuredName.STARRED) + val ringtone = cursor.getStringValue(StructuredName.CUSTOM_RINGTONE) val contactId = cursor.getIntValue(Data.CONTACT_ID) val thumbnailUri = cursor.getStringValue(StructuredName.PHOTO_THUMBNAIL_URI) ?: "" val notes = "" @@ -177,7 +178,7 @@ class ContactsHelper(val context: Context) { val websites = ArrayList() val ims = ArrayList() val contact = Contact(id, prefix, firstName, middleName, surname, suffix, nickname, photoUri, numbers, emails, addresses, - events, accountName, starred, contactId, thumbnailUri, null, notes, groups, organization, websites, ims, mimetype) + events, accountName, starred, contactId, thumbnailUri, null, notes, groups, organization, websites, ims, mimetype, ringtone) contacts.put(id, contact) } @@ -717,6 +718,7 @@ class ContactsHelper(val context: Context) { val notes = getNotes(id)[id] ?: "" val accountName = cursor.getStringValue(RawContacts.ACCOUNT_NAME) ?: "" val starred = cursor.getIntValue(StructuredName.STARRED) + val ringtone = cursor.getStringValue(StructuredName.CUSTOM_RINGTONE) val contactId = cursor.getIntValue(Data.CONTACT_ID) val groups = getContactGroups(storedGroups, contactId)[contactId] ?: ArrayList() val thumbnailUri = cursor.getStringValue(StructuredName.PHOTO_THUMBNAIL_URI) ?: "" @@ -724,7 +726,7 @@ class ContactsHelper(val context: Context) { val websites = getWebsites(id)[id] ?: ArrayList() val ims = getIMs(id)[id] ?: ArrayList() return Contact(id, prefix, firstName, middleName, surname, suffix, nickname, photoUri, number, emails, addresses, events, - accountName, starred, contactId, thumbnailUri, null, notes, groups, organization, websites, ims, mimetype) + accountName, starred, contactId, thumbnailUri, null, notes, groups, organization, websites, ims, mimetype, ringtone) } } @@ -823,6 +825,7 @@ class ContactsHelper(val context: Context) { StructuredName.PHOTO_URI, StructuredName.PHOTO_THUMBNAIL_URI, StructuredName.STARRED, + StructuredName.CUSTOM_RINGTONE, RawContacts.ACCOUNT_NAME, RawContacts.ACCOUNT_TYPE ) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/helpers/VcfImporter.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/helpers/VcfImporter.kt index 766de166..f7b7bab6 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/helpers/VcfImporter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/helpers/VcfImporter.kt @@ -115,6 +115,7 @@ class VcfImporter(val activity: SimpleActivity) { val photoData = ezContact.photos.firstOrNull()?.data val photo = null val thumbnailUri = savePhoto(photoData) + val ringtone = null val IMs = ArrayList() ezContact.impps.forEach { @@ -138,7 +139,7 @@ class VcfImporter(val activity: SimpleActivity) { } val contact = Contact(0, prefix, firstName, middleName, surname, suffix, nickname, photoUri, phoneNumbers, emails, addresses, events, - targetContactSource, starred, contactId, thumbnailUri, photo, notes, groups, organization, websites, IMs, DEFAULT_MIMETYPE) + targetContactSource, starred, contactId, thumbnailUri, photo, notes, groups, organization, websites, IMs, DEFAULT_MIMETYPE, ringtone) // if there is no N and ORG fields at the given contact, only FN, treat it as an organization if (contact.getNameToDisplay().isEmpty() && contact.organization.isEmpty() && ezContact.formattedName?.value?.isNotEmpty() == true) { diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/models/Contact.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/models/Contact.kt index 76889cfe..9df71878 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/models/Contact.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/models/Contact.kt @@ -13,8 +13,9 @@ import com.simplemobiletools.contacts.pro.helpers.SMT_PRIVATE data class Contact(var id: Int, var prefix: String, var firstName: String, var middleName: String, var surname: String, var suffix: String, var nickname: String, var photoUri: String, var phoneNumbers: ArrayList, var emails: ArrayList, var addresses: ArrayList
, var events: ArrayList, var source: String, var starred: Int, var contactId: Int, var thumbnailUri: String, var photo: Bitmap?, var notes: String, - var groups: ArrayList, var organization: Organization, var websites: ArrayList, var IMs: ArrayList, var mimetype: String) : - Comparable { + var groups: ArrayList, var organization: Organization, var websites: ArrayList, var IMs: ArrayList, var mimetype: String, + var ringtone: String?) : + Comparable { companion object { var sorting = 0 var startWithSurname = false @@ -71,7 +72,7 @@ data class Contact(var id: Int, var prefix: String, var firstName: String, var m } else if (firstString.isNotEmpty() && secondString.isEmpty()) { -1 } else { - if (firstString.toLowerCase() == secondString.toLowerCase()) { + if (firstString.equals(secondString, ignoreCase = true)) { getNameToDisplay().compareTo(other.getNameToDisplay(), true) } else { firstString.compareTo(secondString, true) @@ -130,9 +131,9 @@ data class Contact(var id: Int, var prefix: String, var firstName: String, var m val normalizedText = if (convertLetters) text.normalizePhoneNumber() else text phoneNumbers.any { PhoneNumberUtils.compare(it.normalizedNumber, normalizedText) || - it.value.contains(text) || - it.normalizedNumber?.contains(normalizedText) == true || - it.value.normalizePhoneNumber().contains(normalizedText) + it.value.contains(text) || + it.normalizedNumber?.contains(normalizedText) == true || + it.value.normalizePhoneNumber().contains(normalizedText) } } else { false diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml index 86048aec..e79a2bd3 100644 --- a/app/src/main/res/values-ar/strings.xml +++ b/app/src/main/res/values-ar/strings.xml @@ -105,6 +105,7 @@ مجموعات مصدر الاتصال المراسلة الفورية (IM) + Ringtone The contact will be removed from all contact sources. diff --git a/app/src/main/res/values-az/strings.xml b/app/src/main/res/values-az/strings.xml index 329b2c51..f37ceb11 100644 --- a/app/src/main/res/values-az/strings.xml +++ b/app/src/main/res/values-az/strings.xml @@ -105,6 +105,7 @@ Qruplar Kontakt kökü Instant messaging (IM) + Ringtone The contact will be removed from all contact sources. diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml index 88c7b64c..a141450b 100644 --- a/app/src/main/res/values-cs/strings.xml +++ b/app/src/main/res/values-cs/strings.xml @@ -105,6 +105,7 @@ Skupiny Zdroje kontaktů Rychlé zprávy (IM) + Ringtone Kontakt bude vymazán ze všech zdrojů kontaktů. diff --git a/app/src/main/res/values-cy/strings.xml b/app/src/main/res/values-cy/strings.xml index 7c5cce09..402964ee 100644 --- a/app/src/main/res/values-cy/strings.xml +++ b/app/src/main/res/values-cy/strings.xml @@ -105,6 +105,7 @@ Grwpiau Ffynhonnell gyswllt Negesu ar unwaith (IM) + Ringtone The contact will be removed from all contact sources. diff --git a/app/src/main/res/values-da/strings.xml b/app/src/main/res/values-da/strings.xml index 19785552..2c307eb6 100644 --- a/app/src/main/res/values-da/strings.xml +++ b/app/src/main/res/values-da/strings.xml @@ -105,6 +105,7 @@ Groupper Kontaktkilde Instant messaging (IM) + Ringtone The contact will be removed from all contact sources. diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 65b9d889..9dcaf9f6 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -105,6 +105,7 @@ Gruppen Kontaktquelle Instant messaging (IM) + Ringtone Der Kontakt wird von allen Kontaktquellen entfernt. diff --git a/app/src/main/res/values-el/strings.xml b/app/src/main/res/values-el/strings.xml index 5e770876..c0ae7376 100644 --- a/app/src/main/res/values-el/strings.xml +++ b/app/src/main/res/values-el/strings.xml @@ -105,6 +105,7 @@ Ομάδες Προέλευση επαφής Αμεσο μήνυμα (IM) + Ringtone Η επαφή θα καταργηθεί από όλες τις πηγές επαφών. diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index a1d506cd..867df01c 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -105,6 +105,7 @@ Grupos Orígenes de contacto Mensaje instantáneo (IM) + Ringtone El contacto será eliminado de todos los orígenes de contactos. diff --git a/app/src/main/res/values-eu/strings.xml b/app/src/main/res/values-eu/strings.xml index 35204c41..3489b55a 100644 --- a/app/src/main/res/values-eu/strings.xml +++ b/app/src/main/res/values-eu/strings.xml @@ -105,6 +105,7 @@ Taldeak Kontaktu jatorria Instant messaging (IM) + Ringtone The contact will be removed from all contact sources. diff --git a/app/src/main/res/values-fi/strings.xml b/app/src/main/res/values-fi/strings.xml index 64cb67f0..9addd99a 100644 --- a/app/src/main/res/values-fi/strings.xml +++ b/app/src/main/res/values-fi/strings.xml @@ -105,6 +105,7 @@ Ryhmät Yhteystiedon lähde Pikaviestin + Ringtone Yhteystieto poistetaan kaikista lähteistä. diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 081fe49f..c09bbb23 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -103,6 +103,7 @@ Groupe Source du contact Messagerie instantanée (MI) + Ringtone Le contact sera supprimé de toutes les sources de contacts. diff --git a/app/src/main/res/values-hr/strings.xml b/app/src/main/res/values-hr/strings.xml index 472de9c3..4f813d53 100644 --- a/app/src/main/res/values-hr/strings.xml +++ b/app/src/main/res/values-hr/strings.xml @@ -105,6 +105,7 @@ Grupe Izvori kontakata Brzo slanje poruka (IM) + Ringtone The contact will be removed from all contact sources. diff --git a/app/src/main/res/values-hu/strings.xml b/app/src/main/res/values-hu/strings.xml index 208eb685..ad093db1 100644 --- a/app/src/main/res/values-hu/strings.xml +++ b/app/src/main/res/values-hu/strings.xml @@ -105,6 +105,7 @@ Csoportok Névjegy account Instant messaging (IM) + Ringtone The contact will be removed from all contact sources. diff --git a/app/src/main/res/values-id/strings.xml b/app/src/main/res/values-id/strings.xml index b83035cb..bebecc6a 100644 --- a/app/src/main/res/values-id/strings.xml +++ b/app/src/main/res/values-id/strings.xml @@ -105,6 +105,7 @@ Grup Sumber kontak Pesan singkat (IM) + Ringtone Kontak akan dihapus dari semua sumber kontak. diff --git a/app/src/main/res/values-in/strings.xml b/app/src/main/res/values-in/strings.xml index b83035cb..bebecc6a 100644 --- a/app/src/main/res/values-in/strings.xml +++ b/app/src/main/res/values-in/strings.xml @@ -105,6 +105,7 @@ Grup Sumber kontak Pesan singkat (IM) + Ringtone Kontak akan dihapus dari semua sumber kontak. diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index 23518958..4f63a7a3 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -105,6 +105,7 @@ Gruppi Provenienza del contatto Messaggistica istantanea (IM) + Ringtone The contact will be removed from all contact sources. diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index 9b0f201d..894e501c 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -105,6 +105,7 @@ グループ インポート元 インスタントメッセージ(IM) + Ringtone 全ての連絡先ソースから連絡先を消去します diff --git a/app/src/main/res/values-ko-rKR/strings.xml b/app/src/main/res/values-ko-rKR/strings.xml index ddbe3720..4f73d699 100644 --- a/app/src/main/res/values-ko-rKR/strings.xml +++ b/app/src/main/res/values-ko-rKR/strings.xml @@ -105,6 +105,7 @@ Groups Contact source Instant messaging (IM) + Ringtone The contact will be removed from all contact sources. diff --git a/app/src/main/res/values-lt/strings.xml b/app/src/main/res/values-lt/strings.xml index 082f2ee6..e005659b 100644 --- a/app/src/main/res/values-lt/strings.xml +++ b/app/src/main/res/values-lt/strings.xml @@ -105,6 +105,7 @@ Grupės Kontakto šaltinis Instant messaging (IM) + Ringtone The contact will be removed from all contact sources. diff --git a/app/src/main/res/values-ml/strings.xml b/app/src/main/res/values-ml/strings.xml index b4a7910a..d8b9fb1d 100644 --- a/app/src/main/res/values-ml/strings.xml +++ b/app/src/main/res/values-ml/strings.xml @@ -105,6 +105,7 @@ ഗ്രൂപ്പുകൾ കോൺ‌ടാക്റ്റ് ഉറവിടം തത്സമയ സന്ദേശം അയക്കൽ + Ringtone എല്ലാ കോൺ‌ടാക്റ്റ് ഉറവിടങ്ങളിൽ‌ നിന്നും ഈ കോൺ‌ടാക്റ്റ് നീക്കംചെയ്യും. diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index 3a02468d..3e1cf44c 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -105,6 +105,7 @@ Groepen Account Instant messaging (IM) + Ringtone De contactpersoon zal worden verwijderd uit alle accounts. diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml index fc65632b..08882179 100644 --- a/app/src/main/res/values-pl/strings.xml +++ b/app/src/main/res/values-pl/strings.xml @@ -105,6 +105,7 @@ Grupy Miejsce przechowywania kontaktu Komunikator + Ringtone The contact will be removed from all contact sources. diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index e0385213..a77eb898 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -105,6 +105,7 @@ Grupos Origem do contato Mensageiro instantâneo (MI) + Ringtone O contato será removido de todas removido de todas as fontes de contato. diff --git a/app/src/main/res/values-pt/strings.xml b/app/src/main/res/values-pt/strings.xml index a309c527..fe1bbc63 100644 --- a/app/src/main/res/values-pt/strings.xml +++ b/app/src/main/res/values-pt/strings.xml @@ -105,6 +105,7 @@ Grupos Origem do contacto Mensagem instantânea (IM) + Ringtone O contacto será apagado de todas as origens. diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index d9460fd7..730a71c1 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -105,6 +105,7 @@ Группы Источник контакта Мессенджеры + Ringtone Контакт будет удалён из всех источников контактов. diff --git a/app/src/main/res/values-sk/strings.xml b/app/src/main/res/values-sk/strings.xml index 7768b1ab..98a31b04 100644 --- a/app/src/main/res/values-sk/strings.xml +++ b/app/src/main/res/values-sk/strings.xml @@ -105,6 +105,7 @@ Skupiny Zdroje kontaktov Rýchle správy (IM) + Zvonenie Kontakt bude vymazaný zo všetkých zdrojov kontaktov. diff --git a/app/src/main/res/values-sv/strings.xml b/app/src/main/res/values-sv/strings.xml index e95df35f..858798db 100644 --- a/app/src/main/res/values-sv/strings.xml +++ b/app/src/main/res/values-sv/strings.xml @@ -105,6 +105,7 @@ Grupper Kontaktkälla Snabbmeddelanden (IM) + Ringtone Kontakten kommer att tas bort från alla kontaktkällor. diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml index 86616fc0..5a58c634 100644 --- a/app/src/main/res/values-tr/strings.xml +++ b/app/src/main/res/values-tr/strings.xml @@ -105,6 +105,7 @@ Gruplar Kişi kaynağı Anlık mesajlaşma (IM) + Ringtone Kişi tüm kişi kaynaklarından kaldırılacak. diff --git a/app/src/main/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml index 62f701c0..a31d5ab6 100644 --- a/app/src/main/res/values-uk/strings.xml +++ b/app/src/main/res/values-uk/strings.xml @@ -105,6 +105,7 @@ Групи Походження контакту Мессенджери + Ringtone The contact will be removed from all contact sources. diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index c2f885da..995fbd6a 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -105,6 +105,7 @@ 群组 联系人来源 即时通讯 (IM) + Ringtone 该联系人将会被从所有联系人来源移除。 diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index e739f373..08cf9aa9 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -105,6 +105,7 @@ 群組 聯絡人來源 即時通訊 (IM) + Ringtone 這聯絡人將從全部通訊錄來源移除。 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 209bf69c..9f72e262 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -105,6 +105,7 @@ Groups Contact source Instant messaging (IM) + Ringtone The contact will be removed from all contact sources.