Improve message notification determination.

This commit is contained in:
Cody Henthorne
2025-06-18 11:20:08 -04:00
committed by Michelle Tang
parent b826352ce7
commit 5f603cd57a
2 changed files with 7 additions and 7 deletions

View File

@@ -19,6 +19,7 @@ public final class NotificationIds {
public static final int MAY_HAVE_MESSAGES_NOTIFICATION_ID = 31365;
public static final int PRE_REGISTRATION_SMS = 5050;
public static final int THREAD = 50000;
public static final int MAX_THREAD = THREAD + 100_000;
public static final int INTERNAL_ERROR = 258069;
public static final int LEGACY_SQLCIPHER_MIGRATION = 494949;
public static final int USER_NOTIFICATION_MIGRATION = 525600;
@@ -28,6 +29,7 @@ public final class NotificationIds {
public static final int SMS_EXPORT_SERVICE = 630003;
public static final int SMS_EXPORT_COMPLETE = 630004;
public static final int STORY_THREAD = 700000;
public static final int MAX_STORY_THREAD = STORY_THREAD + 100_000;
public static final int MESSAGE_DELIVERY_FAILURE = 800000;
public static final int STORY_MESSAGE_DELIVERY_FAILURE = 900000;
public static final int UNREGISTERED_NOTIFICATION_ID = 20230102;
@@ -51,4 +53,8 @@ public final class NotificationIds {
return MESSAGE_DELIVERY_FAILURE + (int) conversationId.getThreadId();
}
}
public static boolean isMessageNotificationId(int id) {
return (id >= THREAD && id < (MAX_THREAD)) || (id >= STORY_THREAD && id < MAX_STORY_THREAD);
}
}

View File

@@ -17,7 +17,6 @@ import org.thoughtcrime.securesms.R
import org.thoughtcrime.securesms.database.SignalDatabase
import org.thoughtcrime.securesms.dependencies.AppDependencies
import org.thoughtcrime.securesms.keyvalue.SignalStore
import org.thoughtcrime.securesms.messages.IncomingMessageObserver
import org.thoughtcrime.securesms.notifications.MessageNotifier
import org.thoughtcrime.securesms.notifications.MessageNotifier.ReminderReceiver
import org.thoughtcrime.securesms.notifications.NotificationCancellationHelper
@@ -30,7 +29,6 @@ import org.thoughtcrime.securesms.recipients.Recipient
import org.thoughtcrime.securesms.service.KeyCachingService
import org.thoughtcrime.securesms.util.BubbleUtil.BubbleState
import org.thoughtcrime.securesms.util.ServiceUtil
import org.thoughtcrime.securesms.webrtc.CallNotificationBuilder
import org.whispersystems.signalservice.internal.util.Util
import java.util.Optional
import java.util.concurrent.ConcurrentHashMap
@@ -333,11 +331,7 @@ class DefaultMessageNotifier(context: Application) : MessageNotifier {
}
private fun StatusBarNotification.isMessageNotification(): Boolean {
return id != NotificationIds.MESSAGE_SUMMARY &&
id != KeyCachingService.SERVICE_RUNNING_ID &&
id != IncomingMessageObserver.FOREGROUND_ID &&
id != NotificationIds.PENDING_MESSAGES &&
!CallNotificationBuilder.isWebRtcNotification(id)
return NotificationIds.isMessageNotificationId(id)
}
private fun NotificationManager.getDisplayedNotificationIds(): Result<Set<Int>> {