From 1d8fbad17ec9617c93eb3b78dce423fc28abf204 Mon Sep 17 00:00:00 2001 From: Michelle Tang Date: Wed, 3 Jun 2026 17:14:40 -0400 Subject: [PATCH] Add additional unauthorized KT check. --- .../conversationlist/ConversationListFragment.java | 2 ++ .../thoughtcrime/securesms/jobs/CheckKeyTransparencyJob.kt | 6 +++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListFragment.java b/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListFragment.java index f8676f8242..f36057b974 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListFragment.java +++ b/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListFragment.java @@ -167,6 +167,7 @@ import org.signal.core.util.ServiceUtil; import org.thoughtcrime.securesms.util.RemoteConfig; import org.thoughtcrime.securesms.util.SignalLocalMetrics; import org.thoughtcrime.securesms.util.SignalProxyUtil; +import org.thoughtcrime.securesms.util.TextSecurePreferences; import org.thoughtcrime.securesms.util.SnapToTopDataObserver; import org.thoughtcrime.securesms.util.ViewUtil; import org.thoughtcrime.securesms.util.adapter.mapping.PagingMappingAdapter; @@ -436,6 +437,7 @@ public class ConversationListFragment extends MainFragment implements Conversati } if (SignalStore.account().isRegistered() && + !TextSecurePreferences.isUnauthorizedReceived(requireContext()) && SignalStore.settings().getAutomaticVerificationEnabled() && SignalStore.misc().getHasKeyTransparencyFailure() && !SignalStore.misc().getHasSeenKeyTransparencyFailure()) { diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobs/CheckKeyTransparencyJob.kt b/app/src/main/java/org/thoughtcrime/securesms/jobs/CheckKeyTransparencyJob.kt index 9ac6fb8d9a..513f3902fa 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobs/CheckKeyTransparencyJob.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/jobs/CheckKeyTransparencyJob.kt @@ -18,6 +18,7 @@ import org.thoughtcrime.securesms.keyvalue.SignalStore import org.thoughtcrime.securesms.net.SignalNetwork import org.thoughtcrime.securesms.recipients.Recipient import org.thoughtcrime.securesms.util.RemoteConfig +import org.thoughtcrime.securesms.util.TextSecurePreferences import org.whispersystems.signalservice.api.crypto.UnidentifiedAccess import kotlin.time.Duration.Companion.days import kotlin.time.Duration.Companion.milliseconds @@ -84,6 +85,9 @@ class CheckKeyTransparencyJob private constructor( return if (!SignalStore.account.isRegistered) { Log.i(TAG, "Account not registered. Exiting.") false + } else if (TextSecurePreferences.isUnauthorizedReceived(AppDependencies.application)) { + Log.i(TAG, "Account is unauthorized. Exiting.") + false } else if (!SignalStore.settings.automaticVerificationEnabled) { Log.i(TAG, "Automatic verification disabled. Exiting.") false @@ -164,7 +168,7 @@ class CheckKeyTransparencyJob private constructor( * For others, it will only show once and only be cleared on the next successful verification. */ private fun markFailure() { - if (SignalStore.account.isRegistered) { + if (SignalStore.account.isRegistered && !TextSecurePreferences.isUnauthorizedReceived(AppDependencies.application)) { SignalStore.misc.hasKeyTransparencyFailure = true if (RemoteConfig.internalUser) { SignalStore.misc.hasSeenKeyTransparencyFailure = false