aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/pixart/messenger/ui/adapter/ConversationAdapter.java
diff options
context:
space:
mode:
authorChristian Schneppe <christian@pix-art.de>2017-04-05 22:01:30 +0200
committerChristian Schneppe <christian@pix-art.de>2017-04-05 22:21:41 +0200
commitebefdd1873c924ffcefe6be3d3d72234de420eb0 (patch)
treebfd6ed45fcab1075db1a03f7f0a6d5cab3ce7cac /src/main/java/de/pixart/messenger/ui/adapter/ConversationAdapter.java
parentacc23261c687d7a66d772b3a92c69002e7001b94 (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.java22
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: