watcher: avoid notification pending intent collapsing

caused to only open one thread clicking any notification.
now it creates unique pending intents by using new request codes.
feature/sentry
Floens 6 years ago
parent 52aa24e9e8
commit 787ef0d27c
  1. 6
      Clover/app/src/main/java/org/floens/chan/ui/notification/ThreadWatchNotifications.java

@ -12,6 +12,7 @@ import android.support.v4.app.NotificationCompat;
import org.floens.chan.R; import org.floens.chan.R;
import org.floens.chan.core.manager.WatchManager; import org.floens.chan.core.manager.WatchManager;
import org.floens.chan.core.model.Post; import org.floens.chan.core.model.Post;
import org.floens.chan.core.model.orm.Pin;
import org.floens.chan.ui.activity.BoardActivity; import org.floens.chan.ui.activity.BoardActivity;
import java.util.List; import java.util.List;
@ -33,6 +34,8 @@ public class ThreadWatchNotifications extends NotificationHelper {
private static final Pattern POST_COMMENT_SHORTEN_NO_PATTERN = private static final Pattern POST_COMMENT_SHORTEN_NO_PATTERN =
Pattern.compile(">>\\d+(?=\\d{4})(\\d{4})"); Pattern.compile(">>\\d+(?=\\d{4})(\\d{4})");
private int pendingIntentCounter = 0;
@Inject @Inject
public ThreadWatchNotifications(Context applicationContext) { public ThreadWatchNotifications(Context applicationContext) {
super(applicationContext); super(applicationContext);
@ -163,7 +166,8 @@ public class ThreadWatchNotifications extends NotificationHelper {
intent.putExtra("pin_id", pinId); intent.putExtra("pin_id", pinId);
PendingIntent pendingIntent = PendingIntent.getActivity( PendingIntent pendingIntent = PendingIntent.getActivity(
applicationContext, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT); applicationContext, ++pendingIntentCounter,
intent, PendingIntent.FLAG_UPDATE_CURRENT);
builder.setContentIntent(pendingIntent); builder.setContentIntent(pendingIntent);
} }

Loading…
Cancel
Save