diff options
author | Christian Schneppe <christian@pix-art.de> | 2017-04-05 22:01:30 +0200 |
---|---|---|
committer | Christian Schneppe <christian@pix-art.de> | 2017-04-05 22:21:41 +0200 |
commit | ebefdd1873c924ffcefe6be3d3d72234de420eb0 (patch) | |
tree | bfd6ed45fcab1075db1a03f7f0a6d5cab3ce7cac /src/main/java/de/pixart/messenger/ui/adapter/ConversationAdapter.java | |
parent | acc23261c687d7a66d772b3a92c69002e7001b94 (diff) |
Show colored presence status for contacts in overview and contact list
* online, free for chat = green
* away = yellow
* dnd, xa = red
Diffstat (limited to 'src/main/java/de/pixart/messenger/ui/adapter/ConversationAdapter.java')
-rw-r--r-- | src/main/java/de/pixart/messenger/ui/adapter/ConversationAdapter.java | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/main/java/de/pixart/messenger/ui/adapter/ConversationAdapter.java b/src/main/java/de/pixart/messenger/ui/adapter/ConversationAdapter.java index 476d3034d..f36aa6f39 100644 --- a/src/main/java/de/pixart/messenger/ui/adapter/ConversationAdapter.java +++ b/src/main/java/de/pixart/messenger/ui/adapter/ConversationAdapter.java @@ -7,6 +7,7 @@ import android.graphics.Typeface; import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.Drawable; import android.os.AsyncTask; +import android.support.v4.content.ContextCompat; import android.util.Pair; import android.view.LayoutInflater; import android.view.View; @@ -180,6 +181,27 @@ public class ConversationAdapter extends ArrayAdapter<Conversation> { ImageView profilePicture = (ImageView) view.findViewById(R.id.conversation_image); loadAvatar(conversation, profilePicture); + if (conversation.getMode() == Conversation.MODE_SINGLE) { + switch (conversation.getContact().getPresences().getShownStatus()) { + case CHAT: + case ONLINE: + convName.setTextColor(ContextCompat.getColor(activity, R.color.online)); + break; + case AWAY: + convName.setTextColor(ContextCompat.getColor(activity, R.color.away)); + break; + case XA: + case DND: + convName.setTextColor(ContextCompat.getColor(activity, R.color.notavailable)); + break; + default: + convName.setTextColor(ContextCompat.getColor(activity, R.color.black87)); + break; + } + } else { + convName.setTextColor(ContextCompat.getColor(activity, R.color.black87)); + } + if (activity.xmppConnectionService.indicateReceived()) { switch (message.getMergedStatus()) { case Message.STATUS_SEND_RECEIVED: |