show contact details on clicking it

This commit is contained in:
tibbi
2020-05-08 22:09:07 +02:00
parent 5eb4cbbe00
commit 5fcca1e281
5 changed files with 15 additions and 11 deletions

View File

@@ -36,6 +36,6 @@ android {
}
dependencies {
implementation 'com.simplemobiletools:commons:5.27.13'
implementation 'com.simplemobiletools:commons:5.27.17'
implementation 'com.github.tibbi:IndicatorFastScroll:08f512858a'
}

View File

@@ -143,7 +143,7 @@ class MainActivity : SimpleActivity() {
}
if (refreshTabsMask and CONTACTS_TAB_MASK != 0) {
ContactsHelper(this).getAvailableContacts { contacts ->
SimpleContactsHelper(this).getAvailableContacts { contacts ->
runOnUiThread {
contacts_fragment.refreshContacts(contacts)
}

View File

@@ -7,7 +7,7 @@ import android.widget.ImageView
import android.widget.TextView
import com.bumptech.glide.Glide
import com.simplemobiletools.commons.adapters.MyRecyclerViewAdapter
import com.simplemobiletools.commons.helpers.ContactsHelper
import com.simplemobiletools.commons.helpers.SimpleContactsHelper
import com.simplemobiletools.commons.models.SimpleContact
import com.simplemobiletools.commons.views.MyRecyclerView
import com.simplemobiletools.dialer.R
@@ -27,9 +27,9 @@ class ContactsAdapter(activity: SimpleActivity, var contacts: ArrayList<SimpleCo
override fun getIsItemSelectable(position: Int) = true
override fun getItemSelectionKey(position: Int) = contacts.getOrNull(position)?.id
override fun getItemSelectionKey(position: Int) = contacts.getOrNull(position)?.rawId
override fun getItemKeyPosition(key: Int) = contacts.indexOfFirst { it.id == key }
override fun getItemKeyPosition(key: Int) = contacts.indexOfFirst { it.rawId == key }
override fun onActionModeCreated() {}
@@ -59,7 +59,7 @@ class ContactsAdapter(activity: SimpleActivity, var contacts: ArrayList<SimpleCo
findViewById<TextView>(R.id.item_contact_name).text = contact.name
findViewById<TextView>(R.id.item_contact_name).setTextColor(textColor)
ContactsHelper(context).loadContactImage(contact.photoUri, findViewById(R.id.item_contact_image), contact.name)
SimpleContactsHelper(context).loadContactImage(contact.photoUri, findViewById(R.id.item_contact_image), contact.name)
}
}
}

View File

@@ -9,7 +9,7 @@ import com.simplemobiletools.commons.adapters.MyRecyclerViewAdapter
import com.simplemobiletools.commons.extensions.beVisibleIf
import com.simplemobiletools.commons.extensions.formatDateOrTime
import com.simplemobiletools.commons.extensions.getFormattedDuration
import com.simplemobiletools.commons.helpers.ContactsHelper
import com.simplemobiletools.commons.helpers.SimpleContactsHelper
import com.simplemobiletools.commons.views.MyRecyclerView
import com.simplemobiletools.dialer.R
import com.simplemobiletools.dialer.activities.SimpleActivity
@@ -65,7 +65,7 @@ class RecentCallsAdapter(activity: SimpleActivity, var recentCalls: ArrayList<Re
item_recents_duration.beVisibleIf(call.type != Calls.MISSED_TYPE && call.type != Calls.REJECTED_TYPE && call.duration > 0)
item_recents_duration.text = call.duration.getFormattedDuration()
ContactsHelper(context).loadContactImage(call.photoUri, item_recents_image, call.name)
SimpleContactsHelper(context).loadContactImage(call.photoUri, item_recents_image, call.name)
}
}
}

View File

@@ -1,11 +1,13 @@
package com.simplemobiletools.dialer.fragments
import android.content.Context
import android.net.Uri
import android.provider.ContactsContract
import android.util.AttributeSet
import com.reddit.indicatorfastscroll.FastScrollItemIndicator
import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.commons.helpers.ContactsHelper
import com.simplemobiletools.commons.helpers.PERMISSION_READ_CONTACTS
import com.simplemobiletools.commons.helpers.SimpleContactsHelper
import com.simplemobiletools.commons.models.SimpleContact
import com.simplemobiletools.dialer.R
import com.simplemobiletools.dialer.activities.SimpleActivity
@@ -55,7 +57,9 @@ class ContactsFragment(context: Context, attributeSet: AttributeSet) : MyViewPag
fragment_placeholder_2.beGone()
fragment_list.beVisible()
ContactsAdapter(activity as SimpleActivity, contacts, fragment_list) {
val lookupKey = SimpleContactsHelper(activity!!).getContactLookupKey((it as SimpleContact).rawId.toString())
val publicUri = Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_LOOKUP_URI, lookupKey)
activity!!.launchViewContactIntent(publicUri)
}.apply {
fragment_list.adapter = this
}
@@ -80,7 +84,7 @@ class ContactsFragment(context: Context, attributeSet: AttributeSet) : MyViewPag
fragment_placeholder.text = context.getString(R.string.no_contacts_found)
fragment_placeholder_2.text = context.getString(R.string.create_new)
ContactsHelper(context).getAvailableContacts { contacts ->
SimpleContactsHelper(context).getAvailableContacts { contacts ->
activity?.runOnUiThread {
refreshContacts(contacts)
}