mirror of
https://github.com/SimpleMobileTools/Simple-Dialer.git
synced 2025-06-05 21:49:23 +02:00
feat: hide private contacts from recent
This commit is contained in:
@@ -531,7 +531,7 @@ class MainActivity : SimpleActivity() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
fun showFilterDialog() {
|
private fun showFilterDialog() {
|
||||||
FilterContactSourcesDialog(this) {
|
FilterContactSourcesDialog(this) {
|
||||||
favorites_fragment?.refreshItems {
|
favorites_fragment?.refreshItems {
|
||||||
if (main_menu.isSearchOpen) {
|
if (main_menu.isSearchOpen) {
|
||||||
@@ -544,6 +544,12 @@ class MainActivity : SimpleActivity() {
|
|||||||
getCurrentFragment()?.onSearchQueryChanged(main_menu.getCurrentQuery())
|
getCurrentFragment()?.onSearchQueryChanged(main_menu.getCurrentQuery())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
recents_fragment.refreshItems{
|
||||||
|
if (main_menu.isSearchOpen) {
|
||||||
|
getCurrentFragment()?.onSearchQueryChanged(main_menu.getCurrentQuery())
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
fun cacheContacts(contacts: List<Contact>) {
|
fun cacheContacts(contacts: List<Contact>) {
|
||||||
|
@@ -65,7 +65,7 @@ class ContactsFragment(context: Context, attributeSet: AttributeSet) : MyViewPag
|
|||||||
ContactsHelper(context).getContacts { contacts ->
|
ContactsHelper(context).getContacts { contacts ->
|
||||||
allContacts = contacts
|
allContacts = contacts
|
||||||
|
|
||||||
if(SMT_PRIVATE !in context.baseConfig.ignoredContactSources) {
|
if (SMT_PRIVATE !in context.baseConfig.ignoredContactSources) {
|
||||||
val privateContacts = MyContactsContentProvider.getContacts(context, privateCursor)
|
val privateContacts = MyContactsContentProvider.getContacts(context, privateCursor)
|
||||||
if (privateContacts.isNotEmpty()) {
|
if (privateContacts.isNotEmpty()) {
|
||||||
allContacts.addAll(privateContacts)
|
allContacts.addAll(privateContacts)
|
||||||
|
@@ -53,7 +53,7 @@ class FavoritesFragment(context: Context, attributeSet: AttributeSet) : MyViewPa
|
|||||||
ContactsHelper(context).getContacts { contacts ->
|
ContactsHelper(context).getContacts { contacts ->
|
||||||
allContacts = contacts
|
allContacts = contacts
|
||||||
|
|
||||||
if(SMT_PRIVATE !in context.baseConfig.ignoredContactSources) {
|
if (SMT_PRIVATE !in context.baseConfig.ignoredContactSources) {
|
||||||
val privateContacts = MyContactsContentProvider.getContacts(context, privateCursor)
|
val privateContacts = MyContactsContentProvider.getContacts(context, privateCursor)
|
||||||
if (privateContacts.isNotEmpty()) {
|
if (privateContacts.isNotEmpty()) {
|
||||||
allContacts.addAll(privateContacts)
|
allContacts.addAll(privateContacts)
|
||||||
|
@@ -7,6 +7,7 @@ import com.simplemobiletools.commons.extensions.*
|
|||||||
import com.simplemobiletools.commons.helpers.ContactsHelper
|
import com.simplemobiletools.commons.helpers.ContactsHelper
|
||||||
import com.simplemobiletools.commons.helpers.MyContactsContentProvider
|
import com.simplemobiletools.commons.helpers.MyContactsContentProvider
|
||||||
import com.simplemobiletools.commons.helpers.PERMISSION_READ_CALL_LOG
|
import com.simplemobiletools.commons.helpers.PERMISSION_READ_CALL_LOG
|
||||||
|
import com.simplemobiletools.commons.helpers.SMT_PRIVATE
|
||||||
import com.simplemobiletools.dialer.R
|
import com.simplemobiletools.dialer.R
|
||||||
import com.simplemobiletools.dialer.activities.SimpleActivity
|
import com.simplemobiletools.dialer.activities.SimpleActivity
|
||||||
import com.simplemobiletools.dialer.adapters.RecentCallsAdapter
|
import com.simplemobiletools.dialer.adapters.RecentCallsAdapter
|
||||||
@@ -69,10 +70,18 @@ class RecentsFragment(context: Context, attributeSet: AttributeSet) : MyViewPage
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
allRecentCalls = recents
|
allRecentCalls = recents
|
||||||
|
|
||||||
|
// hide private contacts from recent calls
|
||||||
|
if (SMT_PRIVATE in context.baseConfig.ignoredContactSources) {
|
||||||
|
allRecentCalls = recents.filterNot { recent ->
|
||||||
|
val privateNumbers = privateContacts.flatMap { it.phoneNumbers }.map { it.value }
|
||||||
|
recent.phoneNumber in privateNumbers
|
||||||
|
} as ArrayList
|
||||||
|
}
|
||||||
|
|
||||||
activity?.runOnUiThread {
|
activity?.runOnUiThread {
|
||||||
gotRecents(recents)
|
gotRecents(allRecentCalls)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user