show displayed by contact on all devices

iNPUTmice created

Change summary

src/eu/siacs/conversations/services/NotificationService.java   | 14 +--
src/eu/siacs/conversations/services/XmppConnectionService.java |  6 +
2 files changed, 9 insertions(+), 11 deletions(-)

Detailed changes

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

@@ -15,9 +15,7 @@ import android.net.Uri;
 import android.support.v4.app.NotificationCompat;
 import android.support.v4.app.TaskStackBuilder;
 import android.text.Html;
-import android.util.Log;
 
-import eu.siacs.conversations.Config;
 import eu.siacs.conversations.R;
 import eu.siacs.conversations.entities.Conversation;
 import eu.siacs.conversations.entities.Message;
@@ -43,10 +41,7 @@ public class NotificationService {
 	public synchronized void push(Message message) {
 		if (this.mIsInForeground
 				&& this.mOpenConversation == message.getConversation()) {
-			Log.d(Config.LOGTAG,"ignoring notification because foreground and conv matches");
 			return; // simply ignore
-		} else {
-			Log.d(Config.LOGTAG,"pushed new notification");
 		}
 		String conversationUuid = message.getConversationUuid();
 		if (notifications.containsKey(conversationUuid)) {
@@ -143,9 +138,9 @@ public class NotificationService {
 								.getString(R.string.unread_conversations));
 				mBuilder.setContentText(names.toString());
 				mBuilder.setStyle(style);
-				if (conversation!=null) {
+				if (conversation != null) {
 					mBuilder.setContentIntent(createContentIntent(conversation
-						.getUuid()));
+							.getUuid()));
 				}
 			}
 			if (notify) {
@@ -183,9 +178,10 @@ public class NotificationService {
 				PendingIntent.FLAG_UPDATE_CURRENT);
 		return resultPendingIntent;
 	}
-	
+
 	private PendingIntent createDeleteIntent() {
-		Intent intent = new Intent(mXmppConnectionService, XmppConnectionService.class);
+		Intent intent = new Intent(mXmppConnectionService,
+				XmppConnectionService.class);
 		intent.setAction("clear_notification");
 		return PendingIntent.getService(mXmppConnectionService, 0, intent, 0);
 	}

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

@@ -1545,7 +1545,9 @@ public class XmppConnectionService extends Service {
 	public boolean markMessage(Conversation conversation, String uuid,
 			int status) {
 		for (Message message : conversation.getMessages()) {
-			if (message.getUuid().equals(uuid)) {
+			if (message.getUuid().equals(uuid)
+					|| (message.getStatus() >= Message.STATUS_SEND && uuid
+							.equals(message.getRemoteMsgId()))) {
 				markMessage(message, status);
 				return true;
 			}
@@ -1758,7 +1760,7 @@ public class XmppConnectionService extends Service {
 		}
 		return contacts;
 	}
-	
+
 	public NotificationService getNotificationService() {
 		return this.mNotificationService;
 	}