diff --git a/app/build.gradle b/app/build.gradle index 5b443ced..61acd40d 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -64,7 +64,7 @@ android { } dependencies { - implementation 'com.github.SimpleMobileTools:Simple-Commons:6f69c8c105' + implementation 'com.github.SimpleMobileTools:Simple-Commons:35d685c042' implementation 'com.github.tibbi:IndicatorFastScroll:4524cd0b61' implementation 'me.grantland:autofittextview:0.2.1' } diff --git a/app/src/main/kotlin/com/simplemobiletools/dialer/adapters/ContactsAdapter.kt b/app/src/main/kotlin/com/simplemobiletools/dialer/adapters/ContactsAdapter.kt index 6d017deb..4db4c17c 100644 --- a/app/src/main/kotlin/com/simplemobiletools/dialer/adapters/ContactsAdapter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/dialer/adapters/ContactsAdapter.kt @@ -11,9 +11,9 @@ import android.view.Menu import android.view.MotionEvent import android.view.View import android.view.ViewGroup -import android.widget.FrameLayout import android.widget.ImageView import android.widget.TextView +import androidx.constraintlayout.widget.ConstraintLayout import androidx.recyclerview.widget.ItemTouchHelper import androidx.recyclerview.widget.RecyclerView import com.bumptech.glide.Glide @@ -270,7 +270,8 @@ class ContactsAdapter( private fun setupView(view: View, contact: Contact, holder: ViewHolder) { view.apply { - findViewById(R.id.item_contact_frame).isSelected = selectedKeys.contains(contact.rawId) + setupViewBackground(activity) + findViewById(R.id.item_contact_frame).isSelected = selectedKeys.contains(contact.rawId) findViewById(R.id.item_contact_name).apply { setTextColor(textColor) setTextSize(TypedValue.COMPLEX_UNIT_PX, fontSize) diff --git a/app/src/main/kotlin/com/simplemobiletools/dialer/adapters/RecentCallsAdapter.kt b/app/src/main/kotlin/com/simplemobiletools/dialer/adapters/RecentCallsAdapter.kt index 8ff9b654..cbc0c4ce 100644 --- a/app/src/main/kotlin/com/simplemobiletools/dialer/adapters/RecentCallsAdapter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/dialer/adapters/RecentCallsAdapter.kt @@ -278,7 +278,6 @@ class RecentCallsAdapter( private fun getSelectedPhoneNumber() = getSelectedItems().firstOrNull()?.phoneNumber private fun setupView(view: View, call: RecentCall) { - val shouldShowOverflowMenu = showOverflowMenu && !call.isUnknownNumber view.apply { item_recents_holder.isSelected = selectedKeys.contains(call.id) val name = findContactByCall(call)?.getNameToDisplay() ?: call.name @@ -317,7 +316,7 @@ class RecentCallsAdapter( setTextColor(textColor) beVisibleIf(call.type != Calls.MISSED_TYPE && call.type != Calls.REJECTED_TYPE && call.duration > 0) setTextSize(TypedValue.COMPLEX_UNIT_PX, fontSize * 0.8f) - if (!shouldShowOverflowMenu) { + if (!showOverflowMenu) { item_recents_duration.setPadding(0, 0, durationPadding, 0) } } @@ -340,15 +339,13 @@ class RecentCallsAdapter( item_recents_type.setImageDrawable(drawable) - overflow_menu_icon.beVisibleIf(shouldShowOverflowMenu) - if (shouldShowOverflowMenu) { - overflow_menu_icon.drawable.apply { - mutate() - setTint(activity.getProperTextColor()) - } - overflow_menu_icon.setOnClickListener { - showPopupMenu(overflow_menu_anchor, call) - } + overflow_menu_icon.beVisibleIf(showOverflowMenu) + overflow_menu_icon.drawable.apply { + mutate() + setTint(activity.getProperTextColor()) + } + overflow_menu_icon.setOnClickListener { + showPopupMenu(overflow_menu_anchor, call) } } } @@ -364,14 +361,19 @@ class RecentCallsAdapter( inflate(R.menu.menu_recent_item_options) menu.apply { val areMultipleSIMsAvailable = activity.areMultipleSIMsAvailable() - findItem(R.id.cab_call).isVisible = !areMultipleSIMsAvailable - findItem(R.id.cab_call_sim_1).isVisible = areMultipleSIMsAvailable - findItem(R.id.cab_call_sim_2).isVisible = areMultipleSIMsAvailable - findItem(R.id.cab_view_details).isVisible = contact != null + findItem(R.id.cab_call).isVisible = !areMultipleSIMsAvailable && !call.isUnknownNumber + findItem(R.id.cab_call_sim_1).isVisible = areMultipleSIMsAvailable && !call.isUnknownNumber + findItem(R.id.cab_call_sim_2).isVisible = areMultipleSIMsAvailable && !call.isUnknownNumber + 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).isVisible = isNougatPlus() - findItem(R.id.cab_remove_default_sim).isVisible = (activity.config.getCustomSIM(selectedNumber) ?: "") != "" + findItem(R.id.cab_block_number).isVisible = isNougatPlus() && !call.isUnknownNumber + findItem(R.id.cab_remove_default_sim).isVisible = (activity.config.getCustomSIM(selectedNumber) ?: "") != "" && !call.isUnknownNumber } + setOnMenuItemClickListener { item -> val callId = call.id when (item.itemId) { diff --git a/app/src/main/kotlin/com/simplemobiletools/dialer/helpers/RecentsHelper.kt b/app/src/main/kotlin/com/simplemobiletools/dialer/helpers/RecentsHelper.kt index f9416f89..0f8f2791 100644 --- a/app/src/main/kotlin/com/simplemobiletools/dialer/helpers/RecentsHelper.kt +++ b/app/src/main/kotlin/com/simplemobiletools/dialer/helpers/RecentsHelper.kt @@ -86,16 +86,17 @@ class RecentsHelper(private val context: Context) { if (!cursor.moveToFirst()) { return@use } + do { val id = cursor.getIntValue(Calls._ID) var isUnknownNumber = false val number = cursor.getStringValueOrNull(Calls.NUMBER) - if (number == null) { + if (number == null || number == "-1") { isUnknownNumber = true } var name = cursor.getStringValueOrNull(Calls.CACHED_NAME) - if (name.isNullOrEmpty()) { + if (name.isNullOrEmpty() || name == "-1") { 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) } diff --git a/app/src/main/res/layout/item_recent_call.xml b/app/src/main/res/layout/item_recent_call.xml index aa4bee34..219859e6 100644 --- a/app/src/main/res/layout/item_recent_call.xml +++ b/app/src/main/res/layout/item_recent_call.xml @@ -33,9 +33,9 @@ android:layout_marginEnd="@dimen/small_margin" android:ellipsize="end" android:maxLines="1" - android:textSize="@dimen/bigger_text_size" - android:textDirection="locale" android:textAlignment="viewStart" + android:textDirection="locale" + android:textSize="@dimen/bigger_text_size" app:layout_constraintBottom_toTopOf="@id/item_recents_date_time" app:layout_constraintEnd_toStartOf="@+id/overflow_menu_icon" app:layout_constraintStart_toEndOf="@+id/item_recents_image"