ContactItem improvements (#1324)
* ContactRepository: try to deduplicate phoneNumbers in a smart way * AndroidManifest: use CALL_PHONE permission to allow for making phone calls * Implement CallOnTap with contact results - contact activities that require permissions we do not have are not listed - add CallOnTap setting for phone number results on search behind contacts settings * utilize PhoneNumberUtils * navroute settings/search/contacts * queryIntentActivities -> resolveActivity * localization * Code formatting * Wrap contact search settings in preference category --------- Co-authored-by: MM20 <15646950+MM2-0@users.noreply.github.com>
This commit is contained in:
@@ -54,6 +54,7 @@ data class LauncherSettingsData internal constructor(
|
||||
val fileSearchProviders: Set<String> = setOf("local"),
|
||||
|
||||
val contactSearchEnabled: Boolean = true,
|
||||
val contactSearchCallOnTap: Boolean = false,
|
||||
|
||||
@Deprecated("Use calendarSearchProviders `local` instead")
|
||||
val calendarSearchEnabled: Boolean = true,
|
||||
|
||||
+7
@@ -12,4 +12,11 @@ class ContactSearchSettings internal constructor(private val dataStore: Launcher
|
||||
fun setEnabled(enabled: Boolean) {
|
||||
dataStore.update { it.copy(contactSearchEnabled = enabled) }
|
||||
}
|
||||
|
||||
val callOnTap: Flow<Boolean>
|
||||
get() = dataStore.data.map { it.contactSearchCallOnTap }.distinctUntilChanged()
|
||||
|
||||
fun setCallOnTap(callOnTap: Boolean) {
|
||||
dataStore.update { it.copy(contactSearchCallOnTap = callOnTap) }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user