Merge branch 'master' into call_history_export_import

# Conflicts:
#	app/src/main/kotlin/com/simplemobiletools/dialer/helpers/RecentsHelper.kt
This commit is contained in:
merkost
2023-07-01 11:42:26 +10:00
5 changed files with 29 additions and 25 deletions

View File

@@ -64,7 +64,7 @@ android {
} }
dependencies { dependencies {
implementation 'com.github.SimpleMobileTools:Simple-Commons:6f69c8c105' implementation 'com.github.SimpleMobileTools:Simple-Commons:35d685c042'
implementation 'com.github.tibbi:IndicatorFastScroll:4524cd0b61' implementation 'com.github.tibbi:IndicatorFastScroll:4524cd0b61'
implementation 'me.grantland:autofittextview:0.2.1' implementation 'me.grantland:autofittextview:0.2.1'
} }

View File

@@ -11,9 +11,9 @@ import android.view.Menu
import android.view.MotionEvent import android.view.MotionEvent
import android.view.View import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
import android.widget.FrameLayout
import android.widget.ImageView import android.widget.ImageView
import android.widget.TextView import android.widget.TextView
import androidx.constraintlayout.widget.ConstraintLayout
import androidx.recyclerview.widget.ItemTouchHelper import androidx.recyclerview.widget.ItemTouchHelper
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import com.bumptech.glide.Glide import com.bumptech.glide.Glide
@@ -270,7 +270,8 @@ class ContactsAdapter(
private fun setupView(view: View, contact: Contact, holder: ViewHolder) { private fun setupView(view: View, contact: Contact, holder: ViewHolder) {
view.apply { view.apply {
findViewById<FrameLayout>(R.id.item_contact_frame).isSelected = selectedKeys.contains(contact.rawId) setupViewBackground(activity)
findViewById<ConstraintLayout>(R.id.item_contact_frame).isSelected = selectedKeys.contains(contact.rawId)
findViewById<TextView>(R.id.item_contact_name).apply { findViewById<TextView>(R.id.item_contact_name).apply {
setTextColor(textColor) setTextColor(textColor)
setTextSize(TypedValue.COMPLEX_UNIT_PX, fontSize) setTextSize(TypedValue.COMPLEX_UNIT_PX, fontSize)

View File

@@ -278,7 +278,6 @@ class RecentCallsAdapter(
private fun getSelectedPhoneNumber() = getSelectedItems().firstOrNull()?.phoneNumber private fun getSelectedPhoneNumber() = getSelectedItems().firstOrNull()?.phoneNumber
private fun setupView(view: View, call: RecentCall) { private fun setupView(view: View, call: RecentCall) {
val shouldShowOverflowMenu = showOverflowMenu && !call.isUnknownNumber
view.apply { view.apply {
item_recents_holder.isSelected = selectedKeys.contains(call.id) item_recents_holder.isSelected = selectedKeys.contains(call.id)
val name = findContactByCall(call)?.getNameToDisplay() ?: call.name val name = findContactByCall(call)?.getNameToDisplay() ?: call.name
@@ -317,7 +316,7 @@ class RecentCallsAdapter(
setTextColor(textColor) setTextColor(textColor)
beVisibleIf(call.type != Calls.MISSED_TYPE && call.type != Calls.REJECTED_TYPE && call.duration > 0) beVisibleIf(call.type != Calls.MISSED_TYPE && call.type != Calls.REJECTED_TYPE && call.duration > 0)
setTextSize(TypedValue.COMPLEX_UNIT_PX, fontSize * 0.8f) setTextSize(TypedValue.COMPLEX_UNIT_PX, fontSize * 0.8f)
if (!shouldShowOverflowMenu) { if (!showOverflowMenu) {
item_recents_duration.setPadding(0, 0, durationPadding, 0) item_recents_duration.setPadding(0, 0, durationPadding, 0)
} }
} }
@@ -340,15 +339,13 @@ class RecentCallsAdapter(
item_recents_type.setImageDrawable(drawable) item_recents_type.setImageDrawable(drawable)
overflow_menu_icon.beVisibleIf(shouldShowOverflowMenu) overflow_menu_icon.beVisibleIf(showOverflowMenu)
if (shouldShowOverflowMenu) { overflow_menu_icon.drawable.apply {
overflow_menu_icon.drawable.apply { mutate()
mutate() setTint(activity.getProperTextColor())
setTint(activity.getProperTextColor()) }
} overflow_menu_icon.setOnClickListener {
overflow_menu_icon.setOnClickListener { showPopupMenu(overflow_menu_anchor, call)
showPopupMenu(overflow_menu_anchor, call)
}
} }
} }
} }
@@ -364,14 +361,19 @@ class RecentCallsAdapter(
inflate(R.menu.menu_recent_item_options) inflate(R.menu.menu_recent_item_options)
menu.apply { menu.apply {
val areMultipleSIMsAvailable = activity.areMultipleSIMsAvailable() val areMultipleSIMsAvailable = activity.areMultipleSIMsAvailable()
findItem(R.id.cab_call).isVisible = !areMultipleSIMsAvailable findItem(R.id.cab_call).isVisible = !areMultipleSIMsAvailable && !call.isUnknownNumber
findItem(R.id.cab_call_sim_1).isVisible = areMultipleSIMsAvailable findItem(R.id.cab_call_sim_1).isVisible = areMultipleSIMsAvailable && !call.isUnknownNumber
findItem(R.id.cab_call_sim_2).isVisible = areMultipleSIMsAvailable findItem(R.id.cab_call_sim_2).isVisible = areMultipleSIMsAvailable && !call.isUnknownNumber
findItem(R.id.cab_view_details).isVisible = contact != null findItem(R.id.cab_send_sms).isVisible = !call.isUnknownNumber
findItem(R.id.cab_view_details).isVisible = contact != null && !call.isUnknownNumber
findItem(R.id.cab_add_number).isVisible = !call.isUnknownNumber
findItem(R.id.cab_copy_number).isVisible = !call.isUnknownNumber
findItem(R.id.cab_show_call_details).isVisible = !call.isUnknownNumber
findItem(R.id.cab_block_number).title = activity.addLockedLabelIfNeeded(R.string.block_number) findItem(R.id.cab_block_number).title = activity.addLockedLabelIfNeeded(R.string.block_number)
findItem(R.id.cab_block_number).isVisible = isNougatPlus() findItem(R.id.cab_block_number).isVisible = isNougatPlus() && !call.isUnknownNumber
findItem(R.id.cab_remove_default_sim).isVisible = (activity.config.getCustomSIM(selectedNumber) ?: "") != "" findItem(R.id.cab_remove_default_sim).isVisible = (activity.config.getCustomSIM(selectedNumber) ?: "") != "" && !call.isUnknownNumber
} }
setOnMenuItemClickListener { item -> setOnMenuItemClickListener { item ->
val callId = call.id val callId = call.id
when (item.itemId) { when (item.itemId) {

View File

@@ -86,16 +86,17 @@ class RecentsHelper(private val context: Context) {
if (!cursor.moveToFirst()) { if (!cursor.moveToFirst()) {
return@use return@use
} }
do { do {
val id = cursor.getIntValue(Calls._ID) val id = cursor.getIntValue(Calls._ID)
var isUnknownNumber = false var isUnknownNumber = false
val number = cursor.getStringValueOrNull(Calls.NUMBER) val number = cursor.getStringValueOrNull(Calls.NUMBER)
if (number == null) { if (number == null || number == "-1") {
isUnknownNumber = true isUnknownNumber = true
} }
var name = cursor.getStringValueOrNull(Calls.CACHED_NAME) var name = cursor.getStringValueOrNull(Calls.CACHED_NAME)
if (name.isNullOrEmpty()) { if (name.isNullOrEmpty() || name == "-1") {
name = number.orEmpty() name = number.orEmpty()
} }
@@ -122,7 +123,7 @@ class RecentsHelper(private val context: Context) {
} }
} }
if (name.isEmpty()) { if (name.isEmpty() || name == "-1") {
name = context.getString(R.string.unknown) name = context.getString(R.string.unknown)
} }

View File

@@ -33,9 +33,9 @@
android:layout_marginEnd="@dimen/small_margin" android:layout_marginEnd="@dimen/small_margin"
android:ellipsize="end" android:ellipsize="end"
android:maxLines="1" android:maxLines="1"
android:textSize="@dimen/bigger_text_size"
android:textDirection="locale"
android:textAlignment="viewStart" android:textAlignment="viewStart"
android:textDirection="locale"
android:textSize="@dimen/bigger_text_size"
app:layout_constraintBottom_toTopOf="@id/item_recents_date_time" app:layout_constraintBottom_toTopOf="@id/item_recents_date_time"
app:layout_constraintEnd_toStartOf="@+id/overflow_menu_icon" app:layout_constraintEnd_toStartOf="@+id/overflow_menu_icon"
app:layout_constraintStart_toEndOf="@+id/item_recents_image" app:layout_constraintStart_toEndOf="@+id/item_recents_image"