notify on incomming received carbon messages

Daniel Gultsch created

Change summary

src/eu/siacs/conversations/services/XmppConnectionService.java |  6 +
src/eu/siacs/conversations/utils/UIHelper.java                 | 10 +++
2 files changed, 12 insertions(+), 4 deletions(-)

Detailed changes

src/eu/siacs/conversations/services/XmppConnectionService.java 🔗

@@ -136,10 +136,12 @@ public class XmppConnectionService extends Service {
 						|| (packet.hasChild("sent"))) {
 					message = MessageParser.parseCarbonMessage(packet, account,
 							service);
-					if (message != null) {
+					if ((message != null)&&(message.getStatus() == Message.STATUS_SEND)) {
 						message.getConversation().markRead();
+						notify = false;
+					} else {
+						notify = true;
 					}
-					notify = false;
 				}
 
 			} else if (packet.getType() == MessagePacket.TYPE_GROUPCHAT) {

src/eu/siacs/conversations/utils/UIHelper.java 🔗

@@ -191,8 +191,14 @@ public class UIHelper {
 		
 		List<Conversation> unread = new ArrayList<Conversation>();
 		for (Conversation conversation : conversations) {
-			if ((!conversation.isRead())&&((wasHighlighted(conversation)||(alwaysNotify)))) {
-				unread.add(conversation);
+			if (conversation.getMode() == Conversation.MODE_MULTI) {
+				if ((!conversation.isRead())&&((wasHighlighted(conversation)||(alwaysNotify)))) {
+					unread.add(conversation);
+				}
+			} else {
+				if (!conversation.isRead()) {
+					unread.add(conversation);
+				}
 			}
 		}
 		String ringtone = preferences.getString("notification_ringtone", null);