aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsteckbrief <steckbrief@chefmail.de>2016-12-28 14:17:58 +0100
committersteckbrief <steckbrief@chefmail.de>2016-12-28 14:17:58 +0100
commit7190f3c5406396bfbb8f128a07d2e74929502043 (patch)
tree14f517ece3e37189d6a3939d219be7d338c52116
parente98aa48990d08b75f689c794bf720c5efe21a4b7 (diff)
Implement FS#239: Show number of unread messages in conversations overview
-rw-r--r--src/main/java/de/thedevstack/conversationsplus/ui/adapter/ConversationAdapter.java17
-rw-r--r--src/main/res/layout/conversation_list_row.xml26
2 files changed, 29 insertions, 14 deletions
diff --git a/src/main/java/de/thedevstack/conversationsplus/ui/adapter/ConversationAdapter.java b/src/main/java/de/thedevstack/conversationsplus/ui/adapter/ConversationAdapter.java
index 98a9a96c..97cf0739 100644
--- a/src/main/java/de/thedevstack/conversationsplus/ui/adapter/ConversationAdapter.java
+++ b/src/main/java/de/thedevstack/conversationsplus/ui/adapter/ConversationAdapter.java
@@ -112,19 +112,22 @@ public class ConversationAdapter extends ArrayAdapter<Conversation> {
}
String lastMessagePreview = ((null == msgPrefix || msgPrefix.isEmpty()) ? "" : (msgPrefix + ": ")) + msgText;
mLastMessage.setText(lastMessagePreview);
- if (preview.second) {
+ int lastMessageTypeface = Typeface.NORMAL;
if (conversation.isRead()) {
- mLastMessage.setTypeface(null, Typeface.ITALIC);
- } else {
- mLastMessage.setTypeface(null,Typeface.BOLD_ITALIC);
+ if (preview.second) {
+ lastMessageTypeface = Typeface.ITALIC;
}
} else {
- if (conversation.isRead()) {
- mLastMessage.setTypeface(null,Typeface.NORMAL);
+ TextView txtUnreadCount = (TextView) view.findViewById(R.id.conversation_unreadcount);
+ txtUnreadCount.setVisibility(View.VISIBLE);
+ txtUnreadCount.setText(String.valueOf(conversation.unreadCount()));
+ if (preview.second) {
+ lastMessageTypeface = Typeface.BOLD_ITALIC;
} else {
- mLastMessage.setTypeface(null,Typeface.BOLD);
+ lastMessageTypeface = Typeface.BOLD;
}
}
+ mLastMessage.setTypeface(null, lastMessageTypeface);
}
long muted_till = conversation.getLongAttribute(Conversation.ATTRIBUTE_MUTED_TILL,0);
diff --git a/src/main/res/layout/conversation_list_row.xml b/src/main/res/layout/conversation_list_row.xml
index 74e84593..41fd1b90 100644
--- a/src/main/res/layout/conversation_list_row.xml
+++ b/src/main/res/layout/conversation_list_row.xml
@@ -25,7 +25,7 @@
android:layout_height="wrap_content"
android:background="?android:selectableItemBackground"
android:orientation="horizontal"
- android:padding="8dp"
+ android:padding="4dp"
android:id="@+id/conversationListRowContent">
<com.makeramen.roundedimageview.RoundedImageView
@@ -50,7 +50,7 @@
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toRightOf="@+id/conversation_image"
- android:paddingLeft="8dp">
+ android:paddingLeft="4dp">
<TextView
android:id="@+id/conversation_name"
@@ -77,7 +77,8 @@
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_toLeftOf="@+id/notification_status"
- android:orientation="vertical">
+ android:orientation="vertical"
+ android:id="@+id/conversation_last">
<github.ankushsachdeva.emojicon.EmojiconTextView
android:id="@+id/conversation_lastmsg"
@@ -103,11 +104,22 @@
android:id="@+id/notification_status"
android:layout_width="16sp"
android:layout_height="16sp"
- android:layout_alignParentRight="true"
android:layout_centerVertical="true"
- android:layout_marginLeft="4dp"
- android:src="@drawable/ic_notifications_grey600_24dp"
- />
+ android:layout_toLeftOf="@+id/conversation_unreadcount"
+ android:src="@drawable/ic_notifications_grey600_24dp" />
+
+ <TextView
+ android:id="@+id/conversation_unreadcount"
+ android:layout_width="16sp"
+ android:layout_height="16sp"
+ android:layout_centerVertical="true"
+ android:layout_alignParentRight="true"
+ android:gravity="right"
+ android:text="1"
+ android:textColor="@color/secondaryText"
+ android:textSize="?attr/TextSizeInfo"
+ android:textStyle="bold"
+ android:visibility="invisible"/>
</RelativeLayout>
<TextView