diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/ViewContactActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/ViewContactActivity.kt index cfbd9d97..b87819c5 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/ViewContactActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/ViewContactActivity.kt @@ -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) { diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/dialogs/ManageVisibleFieldsDialog.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/dialogs/ManageVisibleFieldsDialog.kt index d6444e1f..5dc4af12 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/dialogs/ManageVisibleFieldsDialog.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/dialogs/ManageVisibleFieldsDialog.kt @@ -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() { diff --git a/app/src/main/res/layout/activity_view_contact.xml b/app/src/main/res/layout/activity_view_contact.xml index 52c9c68c..f6ca310f 100644 --- a/app/src/main/res/layout/activity_view_contact.xml +++ b/app/src/main/res/layout/activity_view_contact.xml @@ -117,9 +117,9 @@ android:paddingTop="@dimen/normal_margin" android:paddingEnd="@dimen/normal_margin" android:paddingBottom="@dimen/normal_margin" - android:tooltipText="John Doe" android:singleLine="true" - android:textSize="@dimen/bigger_text_size" /> + android:textSize="@dimen/bigger_text_size" + android:tooltipText="John Doe" /> + + + + - @@ -11,136 +10,144 @@ android:layout_height="wrap_content" android:orientation="vertical" android:paddingStart="@dimen/activity_margin" - android:paddingEnd="@dimen/activity_margin" - android:paddingTop="@dimen/activity_margin"> + android:paddingTop="@dimen/activity_margin" + android:paddingEnd="@dimen/activity_margin"> + android:paddingBottom="@dimen/activity_margin" + android:text="@string/prefix" /> + android:paddingBottom="@dimen/activity_margin" + android:text="@string/first_name" /> + android:paddingBottom="@dimen/activity_margin" + android:text="@string/middle_name" /> + android:paddingBottom="@dimen/activity_margin" + android:text="@string/surname" /> + android:paddingBottom="@dimen/activity_margin" + android:text="@string/suffix" /> + android:paddingBottom="@dimen/activity_margin" + android:text="@string/nickname" /> + android:paddingBottom="@dimen/activity_margin" + android:text="@string/phone_numbers" /> + android:paddingBottom="@dimen/activity_margin" + android:text="@string/emails" /> + android:paddingBottom="@dimen/activity_margin" + android:text="@string/addresses" /> + android:paddingBottom="@dimen/activity_margin" + android:text="@string/instant_messaging" /> + android:paddingBottom="@dimen/activity_margin" + android:text="@string/events" /> + android:paddingBottom="@dimen/activity_margin" + android:text="@string/notes" /> + + + android:paddingBottom="@dimen/activity_margin" + android:text="@string/organization" /> + android:paddingBottom="@dimen/activity_margin" + android:text="@string/websites" /> + android:paddingBottom="@dimen/activity_margin" + android:text="@string/groups" /> + android:paddingBottom="@dimen/activity_margin" + android:text="@string/contact_source" />