From 2a699a23dd8807722c30458210dce50b60b111df Mon Sep 17 00:00:00 2001 From: Alex Hart Date: Fri, 17 Apr 2026 12:52:27 -0300 Subject: [PATCH] Fix backup key verification megaphone ignoring snooze by using lastSeenTime. Co-authored-by: Greyson Parrelli --- .../megaphone/VerifyBackupKeyReminderSchedule.kt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/megaphone/VerifyBackupKeyReminderSchedule.kt b/app/src/main/java/org/thoughtcrime/securesms/megaphone/VerifyBackupKeyReminderSchedule.kt index 36aa211e61..8fec3e2d26 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/megaphone/VerifyBackupKeyReminderSchedule.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/megaphone/VerifyBackupKeyReminderSchedule.kt @@ -25,11 +25,11 @@ class VerifyBackupKeyReminderSchedule : MegaphoneSchedule { val isFirstReminder = !SignalStore.backup.hasVerifiedBefore val intervalTime = if (isFirstReminder) 14.days.inWholeMilliseconds else 183.days.inWholeMilliseconds - val snoozedTime = if (previouslySnoozed) 7.days.inWholeMilliseconds else 0.days.inWholeMilliseconds - val shouldShowBackupKeyReminder = System.currentTimeMillis() > (lastVerifiedTime + intervalTime + snoozedTime) - val hasShownPinReminderRecently = System.currentTimeMillis() < SignalStore.pin.lastReminderTime + 7.days.inWholeMilliseconds + val intervalHasPassed = currentTime > (lastVerifiedTime + intervalTime) + val snoozeHasExpired = !previouslySnoozed || currentTime > (lastSeen + 7.days.inWholeMilliseconds) + val hasShownPinReminderRecently = currentTime < SignalStore.pin.lastReminderTime + 7.days.inWholeMilliseconds - return shouldShowBackupKeyReminder && !hasShownPinReminderRecently + return intervalHasPassed && snoozeHasExpired && !hasShownPinReminderRecently } }