Fix issue with some notifications linking to the wrong conversation.

This commit is contained in:
Greyson Parrelli 2020-03-30 17:52:49 -04:00
parent c9be37b84a
commit 6c428b2777

View File

@ -3,6 +3,7 @@ package org.thoughtcrime.securesms.notifications;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
@ -81,6 +82,8 @@ public class NotificationItem {
int startingPosition = jumpToMessage ? getStartingPosition(context, threadId, messageReceivedTimestamp) : -1;
Intent intent = ConversationActivity.buildIntent(context, recipient.getId(), threadId, 0, -1, startingPosition);
makeIntentUniqueToPreventMerging(intent);
return TaskStackBuilder.create(context)
.addNextIntentWithParentStack(intent)
.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT);
@ -97,4 +100,8 @@ public class NotificationItem {
private static int getStartingPosition(@NonNull Context context, long threadId, long receivedTimestampMs) {
return DatabaseFactory.getMmsSmsDatabase(context).getMessagePositionInConversation(threadId, receivedTimestampMs);
}
private static void makeIntentUniqueToPreventMerging(@NonNull Intent intent) {
intent.setData((Uri.parse("custom://"+System.currentTimeMillis())));
}
}