diff --git a/bitchat/App/ConversationUIModel.swift b/bitchat/App/ConversationUIModel.swift index 9311c152..53062d45 100644 --- a/bitchat/App/ConversationUIModel.swift +++ b/bitchat/App/ConversationUIModel.swift @@ -231,6 +231,15 @@ final class ConversationUIModel: ObservableObject { self?.refreshComputedState() } .store(in: &cancellables) + + // Verify/unverify while a DM is open must repaint existing rows — + // showsVerifiedSeal is computed per render, so forward the store change. + chatViewModel.peerIdentityStore.$verifiedFingerprints + .receive(on: DispatchQueue.main) + .sink { [weak self] _ in + self?.objectWillChange.send() + } + .store(in: &cancellables) } private func refreshComputedState() { diff --git a/bitchat/Localizable.xcstrings b/bitchat/Localizable.xcstrings index f34ed351..81b4ddcd 100644 --- a/bitchat/Localizable.xcstrings +++ b/bitchat/Localizable.xcstrings @@ -25857,6 +25857,191 @@ } } }, + "content.accessibility.verified_sender" : { + "extractionState" : "manual", + "localizations" : { + "ar" : { + "stringUnit" : { + "state" : "translated", + "value" : "مرسل موثق" + } + }, + "bn" : { + "stringUnit" : { + "state" : "translated", + "value" : "যাচাইকৃত প্রেরক" + } + }, + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "Verifizierter absender" + } + }, + "en" : { + "stringUnit" : { + "state" : "translated", + "value" : "Verified sender" + } + }, + "es" : { + "stringUnit" : { + "state" : "translated", + "value" : "Remitente verificado" + } + }, + "fa" : { + "stringUnit" : { + "state" : "translated", + "value" : "فرستنده تأییدشده" + } + }, + "fil" : { + "stringUnit" : { + "state" : "translated", + "value" : "Beripikadong nagpadala" + } + }, + "fr" : { + "stringUnit" : { + "state" : "translated", + "value" : "Expéditeur vérifié" + } + }, + "he" : { + "stringUnit" : { + "state" : "translated", + "value" : "שולח מאומת" + } + }, + "hi" : { + "stringUnit" : { + "state" : "translated", + "value" : "सत्यापित प्रेषक" + } + }, + "id" : { + "stringUnit" : { + "state" : "translated", + "value" : "Pengirim terverifikasi" + } + }, + "it" : { + "stringUnit" : { + "state" : "translated", + "value" : "Mittente verificato" + } + }, + "ja" : { + "stringUnit" : { + "state" : "translated", + "value" : "確認済みの送信者" + } + }, + "ko" : { + "stringUnit" : { + "state" : "translated", + "value" : "확인된 보낸 사람" + } + }, + "ms" : { + "stringUnit" : { + "state" : "translated", + "value" : "Pengirim yang disahkan" + } + }, + "ne" : { + "stringUnit" : { + "state" : "translated", + "value" : "प्रमाणित प्रेषक" + } + }, + "nl" : { + "stringUnit" : { + "state" : "translated", + "value" : "Geverifieerde afzender" + } + }, + "pl" : { + "stringUnit" : { + "state" : "translated", + "value" : "Zweryfikowany nadawca" + } + }, + "pt" : { + "stringUnit" : { + "state" : "translated", + "value" : "Remetente verificado" + } + }, + "pt-BR" : { + "stringUnit" : { + "state" : "translated", + "value" : "Remetente verificado" + } + }, + "ru" : { + "stringUnit" : { + "state" : "translated", + "value" : "Подтверждённый отправитель" + } + }, + "sv" : { + "stringUnit" : { + "state" : "translated", + "value" : "Verifierad avsändare" + } + }, + "ta" : { + "stringUnit" : { + "state" : "translated", + "value" : "சரிபார்க்கப்பட்ட அனுப்புநர்" + } + }, + "th" : { + "stringUnit" : { + "state" : "translated", + "value" : "ผู้ส่งที่ยืนยันแล้ว" + } + }, + "tr" : { + "stringUnit" : { + "state" : "translated", + "value" : "Doğrulanmış gönderen" + } + }, + "uk" : { + "stringUnit" : { + "state" : "translated", + "value" : "Підтверджений відправник" + } + }, + "ur" : { + "stringUnit" : { + "state" : "translated", + "value" : "تصدیق شدہ مرسل" + } + }, + "vi" : { + "stringUnit" : { + "state" : "translated", + "value" : "Người gửi đã xác minh" + } + }, + "zh-Hans" : { + "stringUnit" : { + "state" : "translated", + "value" : "已验证的发送者" + } + }, + "zh-Hant" : { + "stringUnit" : { + "state" : "translated", + "value" : "已驗證的傳送者" + } + } + } + }, "content.accessibility.view_fingerprint_hint" : { "extractionState" : "manual", "localizations" : {