From c766ba9808b8b06f5c347526a7af0eea208a74f3 Mon Sep 17 00:00:00 2001 From: Sgn-32 <49990901+Sgn-32@users.noreply.github.com> Date: Thu, 9 Sep 2021 18:15:26 +0200 Subject: [PATCH] Use more icons in ConversationListItem --- .../ConversationListItem.java | 24 +++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListItem.java b/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListItem.java index 16b8304861..d3349ae8f2 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListItem.java +++ b/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListItem.java @@ -29,6 +29,7 @@ import android.view.View; import android.widget.TextView; import androidx.annotation.ColorInt; +import androidx.annotation.DrawableRes; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.constraintlayout.widget.ConstraintLayout; @@ -438,15 +439,14 @@ public final class ConversationListItem extends ConstraintLayout if (thread.getRecipient().isPushV2Group()) { return emphasisAdded(context, MessageRecord.getGv2ChangeDescription(context, thread.getBody()), defaultTint); } else { - return emphasisAdded(context, context.getString(R.string.ThreadRecord_group_updated), defaultTint); + return emphasisAdded(context, context.getString(R.string.ThreadRecord_group_updated), R.drawable.ic_update_group_16, defaultTint); } } else if (SmsDatabase.Types.isGroupQuit(thread.getType())) { - return emphasisAdded(context, context.getString(R.string.ThreadRecord_left_the_group), defaultTint); + return emphasisAdded(context, context.getString(R.string.ThreadRecord_left_the_group), R.drawable.ic_update_group_leave_16, defaultTint); } else if (SmsDatabase.Types.isKeyExchangeType(thread.getType())) { return emphasisAdded(context, context.getString(R.string.ConversationListItem_key_exchange_message), defaultTint); } else if (SmsDatabase.Types.isChatSessionRefresh(thread.getType())) { - UpdateDescription description = UpdateDescription.staticDescription(context.getString(R.string.ThreadRecord_chat_session_refreshed), R.drawable.ic_refresh_16); - return emphasisAdded(context, description, defaultTint); + return emphasisAdded(context, context.getString(R.string.ThreadRecord_chat_session_refreshed), R.drawable.ic_refresh_16, defaultTint); } else if (SmsDatabase.Types.isNoRemoteSessionType(thread.getType())) { return emphasisAdded(context, context.getString(R.string.MessageDisplayHelper_message_encrypted_for_non_existing_session), defaultTint); } else if (SmsDatabase.Types.isEndSessionType(thread.getType())) { @@ -457,13 +457,13 @@ public final class ConversationListItem extends ConstraintLayout String draftText = context.getString(R.string.ThreadRecord_draft); return emphasisAdded(context, draftText + " " + thread.getBody(), defaultTint); } else if (SmsDatabase.Types.isOutgoingAudioCall(thread.getType()) || SmsDatabase.Types.isOutgoingVideoCall(thread.getType())) { - return emphasisAdded(context, context.getString(R.string.ThreadRecord_called), defaultTint); + return emphasisAdded(context, context.getString(R.string.ThreadRecord_called), R.drawable.ic_update_audio_call_outgoing_16, defaultTint); } else if (SmsDatabase.Types.isIncomingAudioCall(thread.getType()) || SmsDatabase.Types.isIncomingVideoCall(thread.getType())) { - return emphasisAdded(context, context.getString(R.string.ThreadRecord_called_you), defaultTint); + return emphasisAdded(context, context.getString(R.string.ThreadRecord_called_you), R.drawable.ic_update_audio_call_incoming_16, defaultTint); } else if (SmsDatabase.Types.isMissedAudioCall(thread.getType())) { - return emphasisAdded(context, context.getString(R.string.ThreadRecord_missed_audio_call), defaultTint); + return emphasisAdded(context, context.getString(R.string.ThreadRecord_missed_audio_call), R.drawable.ic_update_audio_call_missed_16, defaultTint); } else if (SmsDatabase.Types.isMissedVideoCall(thread.getType())) { - return emphasisAdded(context, context.getString(R.string.ThreadRecord_missed_video_call), defaultTint); + return emphasisAdded(context, context.getString(R.string.ThreadRecord_missed_video_call), R.drawable.ic_update_video_call_missed_16, defaultTint); } else if (MmsSmsColumns.Types.isGroupCall(thread.getType())) { return emphasisAdded(context, MessageRecord.getGroupCallUpdateDescription(context, thread.getBody(), false), defaultTint); } else if (SmsDatabase.Types.isJoinedType(thread.getType())) { @@ -471,10 +471,10 @@ public final class ConversationListItem extends ConstraintLayout } else if (SmsDatabase.Types.isExpirationTimerUpdate(thread.getType())) { int seconds = (int)(thread.getExpiresIn() / 1000); if (seconds <= 0) { - return emphasisAdded(context, context.getString(R.string.ThreadRecord_disappearing_messages_disabled), defaultTint); + return emphasisAdded(context, context.getString(R.string.ThreadRecord_disappearing_messages_disabled), R.drawable.ic_update_timer_disabled_16, defaultTint); } String time = ExpirationUtil.getExpirationDisplayValue(context, seconds); - return emphasisAdded(context, context.getString(R.string.ThreadRecord_disappearing_message_time_updated_to_s, time), defaultTint); + return emphasisAdded(context, context.getString(R.string.ThreadRecord_disappearing_message_time_updated_to_s, time), R.drawable.ic_update_timer_16, defaultTint); } else if (SmsDatabase.Types.isIdentityUpdate(thread.getType())) { return emphasisAdded(recipientToStringAsync(thread.getRecipient().getId(), r -> { if (r.isGroup()) { @@ -557,6 +557,10 @@ public final class ConversationListItem extends ConstraintLayout return emphasisAdded(context, UpdateDescription.staticDescription(string, 0), defaultTint); } + private static @NonNull LiveData emphasisAdded(@NonNull Context context, @NonNull String string, @DrawableRes int iconResource, @ColorInt int defaultTint) { + return emphasisAdded(context, UpdateDescription.staticDescription(string, iconResource), defaultTint); + } + private static @NonNull LiveData emphasisAdded(@NonNull Context context, @NonNull UpdateDescription description, @ColorInt int defaultTint) { return emphasisAdded(LiveUpdateMessage.fromMessageDescription(context, description, defaultTint, false)); }