show the contacts ringtone at the View screen

This commit is contained in:
tibbi
2021-02-14 16:03:54 +01:00
parent 5b6fce0535
commit 8c488ba5ca
4 changed files with 97 additions and 45 deletions

View File

@ -2,6 +2,8 @@ package com.simplemobiletools.contacts.pro.activities
import android.content.ContentUris
import android.content.Intent
import android.media.RingtoneManager
import android.net.Uri
import android.os.Bundle
import android.provider.ContactsContract
import android.view.View
@ -170,7 +172,7 @@ class ViewContactActivity : ContactActivity() {
val textColor = config.textColor
arrayOf(contact_name_image, contact_numbers_image, contact_emails_image, contact_addresses_image, contact_events_image, contact_source_image,
contact_notes_image, contact_organization_image, contact_websites_image, contact_groups_image).forEach {
contact_notes_image, contact_ringtone_image, contact_organization_image, contact_websites_image, contact_groups_image).forEach {
it.applyColorFilter(textColor)
}
@ -212,6 +214,7 @@ class ViewContactActivity : ContactActivity() {
setupGroups()
setupContactSources()
setupNotes()
setupRingtone()
setupOrganization()
updateTextColors(contact_scrollview)
}
@ -566,6 +569,20 @@ class ViewContactActivity : ContactActivity() {
}
}
private fun setupRingtone() {
val ringtone = contact!!.ringtone
if (ringtone != null && ringtone.isNotEmpty() && showFields and SHOW_RINGTONE != 0) {
val contactRingtone = RingtoneManager.getRingtone(this, Uri.parse(ringtone))
contact_ringtone.text = contactRingtone.getTitle(this)
contact_ringtone_image.beVisible()
contact_ringtone.beVisible()
contact_ringtone.setOnClickListener { }
} else {
contact_ringtone_image.beGone()
contact_ringtone.beGone()
}
}
private fun setupOrganization() {
val organization = contact!!.organization
if (organization.isNotEmpty() && showFields and SHOW_ORGANIZATION_FIELD != 0) {

View File

@ -30,6 +30,7 @@ class ManageVisibleFieldsDialog(val activity: BaseSimpleActivity) {
put(SHOW_WEBSITES_FIELD, R.id.manage_visible_fields_websites)
put(SHOW_GROUPS_FIELD, R.id.manage_visible_fields_groups)
put(SHOW_CONTACT_SOURCE_FIELD, R.id.manage_visible_fields_contact_source)
put(SHOW_RINGTONE, R.id.manage_ringtone)
}
val showContactFields = activity.config.showContactFields
@ -38,11 +39,11 @@ class ManageVisibleFieldsDialog(val activity: BaseSimpleActivity) {
}
AlertDialog.Builder(activity)
.setPositiveButton(R.string.ok) { dialog, which -> dialogConfirmed() }
.setNegativeButton(R.string.cancel, null)
.create().apply {
activity.setupDialogStuff(view, this)
}
.setPositiveButton(R.string.ok) { dialog, which -> dialogConfirmed() }
.setNegativeButton(R.string.cancel, null)
.create().apply {
activity.setupDialogStuff(view, this)
}
}
private fun dialogConfirmed() {