show displayed by contact on all devices

This commit is contained in:
iNPUTmice 2014-10-02 18:31:19 +02:00
parent 4b09f0e9d3
commit f8be57d43f
2 changed files with 9 additions and 11 deletions

View file

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

View file

@ -1545,7 +1545,9 @@ public class XmppConnectionService extends Service {
public boolean markMessage(Conversation conversation, String uuid, public boolean markMessage(Conversation conversation, String uuid,
int status) { int status) {
for (Message message : conversation.getMessages()) { 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); markMessage(message, status);
return true; return true;
} }