From b1b601ea2d951447be293d1255ada8352cfb1d43 Mon Sep 17 00:00:00 2001 From: Stephen Paul Weber Date: Sun, 21 May 2023 18:11:51 -0500 Subject: [PATCH] Use account colour in lists of contacts/bookmarks --- .../eu/siacs/conversations/entities/ListItem.java | 3 +++ .../conversations/ui/adapter/ListItemAdapter.java | 12 +++++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/main/java/eu/siacs/conversations/entities/ListItem.java b/src/main/java/eu/siacs/conversations/entities/ListItem.java index 83caaf431557f803678cd7a5095a5206e15b87e1..6f5142d184b69220355d5470c8f18ca7fcd8f800 100644 --- a/src/main/java/eu/siacs/conversations/entities/ListItem.java +++ b/src/main/java/eu/siacs/conversations/entities/ListItem.java @@ -6,6 +6,7 @@ import java.io.Serializable; import java.util.List; import java.util.Locale; +import eu.siacs.conversations.entities.Account; import eu.siacs.conversations.services.AvatarService; import eu.siacs.conversations.xmpp.Jid; @@ -15,6 +16,8 @@ public interface ListItem extends Comparable, AvatarService.Avatarable Jid getJid(); + Account getAccount(); + List getTags(Context context); final class Tag implements Serializable { diff --git a/src/main/java/eu/siacs/conversations/ui/adapter/ListItemAdapter.java b/src/main/java/eu/siacs/conversations/ui/adapter/ListItemAdapter.java index 92da1a34d78a3e18519407a54cb29b992f4af9b1..c39491722e8cde7e63e1f9931319a0a87eb083c8 100644 --- a/src/main/java/eu/siacs/conversations/ui/adapter/ListItemAdapter.java +++ b/src/main/java/eu/siacs/conversations/ui/adapter/ListItemAdapter.java @@ -9,6 +9,7 @@ import android.widget.ArrayAdapter; import android.widget.ImageView; import android.widget.TextView; +import androidx.core.graphics.ColorUtils; import androidx.databinding.DataBindingUtil; import com.wefika.flowlayout.FlowLayout; @@ -23,6 +24,7 @@ import eu.siacs.conversations.ui.XmppActivity; import eu.siacs.conversations.ui.util.AvatarWorkerTask; import eu.siacs.conversations.ui.util.StyledAttributes; import eu.siacs.conversations.utils.IrregularUnicodeDetector; +import eu.siacs.conversations.utils.UIHelper; import eu.siacs.conversations.xmpp.Jid; public class ListItemAdapter extends ArrayAdapter { @@ -61,7 +63,15 @@ public class ListItemAdapter extends ArrayAdapter { } else { viewHolder = (ViewHolder) view.getTag(); } - view.setBackground(StyledAttributes.getDrawable(view.getContext(),R.attr.list_item_background)); + + if (activity.xmppConnectionService != null && activity.xmppConnectionService.getAccounts().size() > 1) { + view.setBackgroundColor(ColorUtils.setAlphaComponent( + UIHelper.getColorForName(item.getAccount().getJid().asBareJid().toString()), + activity.isDarkTheme() ? 20 : 10 + )); + } else { + view.setBackground(StyledAttributes.getDrawable(view.getContext(),R.attr.list_item_background)); + } List tags = item.getTags(activity); if (tags.size() == 0 || !this.showDynamicTags) {