Merge pull request #6357 from element-hq/feature/bma/verificationWording

Update wording of button "Enter recovery key" to "Use recovery key"
This commit is contained in:
Benoit Marty
2026-03-16 18:20:47 +01:00
committed by GitHub
47 changed files with 30 additions and 66 deletions

View File

@@ -1,10 +1,10 @@
appId: ${MAESTRO_APP_ID}
---
- extendedWaitUntil:
visible: "Enter recovery key"
visible: "Use recovery key"
timeout: 30000
- takeScreenshot: build/maestro/150-Verify
- tapOn: "Enter recovery key"
- tapOn: "Use recovery key"
- tapOn:
id: "verification-recovery_key"
- inputText: ${MAESTRO_RECOVERY_KEY}

View File

@@ -30,7 +30,7 @@ class ChooseSelfVerificationModePresenter(
@Composable
override fun present(): ChooseSelfVerificationModeState {
val hasDevicesToVerifyAgainst by encryptionService.hasDevicesToVerifyAgainst.collectAsState()
val canEnterRecoveryKey by encryptionService.recoveryStateStateFlow
val canUseRecoveryKey by encryptionService.recoveryStateStateFlow
.mapState { recoveryState ->
when (recoveryState) {
RecoveryState.WAITING_FOR_SYNC,
@@ -44,14 +44,14 @@ class ChooseSelfVerificationModePresenter(
val buttonsState by remember {
derivedStateOf {
val canUseAnotherDevice = hasDevicesToVerifyAgainst.dataOrNull()
val canEnterRecoveryKey = canEnterRecoveryKey.dataOrNull()
if (canUseAnotherDevice == null || canEnterRecoveryKey == null) {
val canUseRecoveryKey = canUseRecoveryKey.dataOrNull()
if (canUseAnotherDevice == null || canUseRecoveryKey == null) {
AsyncData.Loading()
} else {
AsyncData.Success(
ChooseSelfVerificationModeState.ButtonsState(
canUseAnotherDevice = canUseAnotherDevice,
canEnterRecoveryKey = canEnterRecoveryKey,
canUseRecoveryKey = canUseRecoveryKey,
)
)
}

View File

@@ -18,6 +18,6 @@ data class ChooseSelfVerificationModeState(
) {
data class ButtonsState(
val canUseAnotherDevice: Boolean,
val canEnterRecoveryKey: Boolean,
val canUseRecoveryKey: Boolean,
)
}

View File

@@ -17,22 +17,22 @@ class ChooseSelfVerificationModeStateProvider :
override val values = sequenceOf(
aChooseSelfVerificationModeState(
buttonsState = AsyncData.Success(
aButtonsState(canUseAnotherDevice = false, canEnterRecoveryKey = true),
aButtonsState(canUseAnotherDevice = false, canUseRecoveryKey = true),
),
),
aChooseSelfVerificationModeState(
buttonsState = AsyncData.Success(
aButtonsState(canUseAnotherDevice = false, canEnterRecoveryKey = false),
aButtonsState(canUseAnotherDevice = false, canUseRecoveryKey = false),
),
),
aChooseSelfVerificationModeState(
buttonsState = AsyncData.Success(
aButtonsState(canUseAnotherDevice = true, canEnterRecoveryKey = true),
aButtonsState(canUseAnotherDevice = true, canUseRecoveryKey = true),
),
),
aChooseSelfVerificationModeState(
buttonsState = AsyncData.Success(
aButtonsState(canUseAnotherDevice = true, canEnterRecoveryKey = false),
aButtonsState(canUseAnotherDevice = true, canUseRecoveryKey = false),
),
),
aChooseSelfVerificationModeState(
@@ -51,8 +51,8 @@ fun aChooseSelfVerificationModeState(
fun aButtonsState(
canUseAnotherDevice: Boolean = true,
canEnterRecoveryKey: Boolean = true,
canUseRecoveryKey: Boolean = true,
) = ChooseSelfVerificationModeState.ButtonsState(
canUseAnotherDevice = canUseAnotherDevice,
canEnterRecoveryKey = canEnterRecoveryKey,
canUseRecoveryKey = canUseRecoveryKey,
)

View File

@@ -122,10 +122,10 @@ private fun ChooseSelfVerificationModeButtons(
onClick = onUseAnotherDevice,
)
}
if (state.buttonsState.data.canEnterRecoveryKey) {
if (state.buttonsState.data.canUseRecoveryKey) {
Button(
modifier = Modifier.fillMaxWidth(),
text = stringResource(R.string.screen_session_verification_enter_recovery_key),
text = stringResource(R.string.screen_identity_confirmation_use_recovery_key),
onClick = onUseRecoveryKey,
)
}

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Чаканне на іншай прыладзе…"</string>
<string name="screen_notification_optin_subtitle">"Вы можаце змяніць налады пазней."</string>
<string name="screen_notification_optin_title">"Дазвольце апавяшчэнні і ніколі не прапускайце іх"</string>
<string name="screen_session_verification_enter_recovery_key">"Увядзіце ключ аднаўлення"</string>
</resources>

View File

@@ -9,5 +9,4 @@
<string name="screen_identity_use_another_device">"Използване на друго устройство"</string>
<string name="screen_notification_optin_subtitle">"Можете да промените настройките си по-късно."</string>
<string name="screen_notification_optin_title">"Разрешете известията и никога не пропускайте съобщение"</string>
<string name="screen_session_verification_enter_recovery_key">"Въвеждане на ключ за възстановяване"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Čekání na jiném zařízení…"</string>
<string name="screen_notification_optin_subtitle">"Nastavení můžete později změnit."</string>
<string name="screen_notification_optin_title">"Povolte oznámení a nezmeškejte žádnou zprávu"</string>
<string name="screen_session_verification_enter_recovery_key">"Zadejte klíč pro obnovení"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Yn aros ar ddyfais arall…"</string>
<string name="screen_notification_optin_subtitle">"Gallwch newid eich gosodiadau yn nes ymlaen."</string>
<string name="screen_notification_optin_title">"Caniatáu hysbysiadau a pheidio byth â cholli neges"</string>
<string name="screen_session_verification_enter_recovery_key">"Rhowch eich allwedd adfer"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Venter på en anden enhed…"</string>
<string name="screen_notification_optin_subtitle">"Du kan ændre dine indstillinger senere."</string>
<string name="screen_notification_optin_title">"Tillad notifikationer, og gå aldrig glip af en besked"</string>
<string name="screen_session_verification_enter_recovery_key">"Indtast gendannelsesnøgle"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Bitte warten bis das andere Gerät bereit ist."</string>
<string name="screen_notification_optin_subtitle">"Du kannst deine Einstellungen später ändern."</string>
<string name="screen_notification_optin_title">"Erlaube Benachrichtigungen und verpasse keine Nachricht"</string>
<string name="screen_session_verification_enter_recovery_key">"Wiederherstellungsschlüssel eingeben"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Αναμονή σε άλλη συσκευή…"</string>
<string name="screen_notification_optin_subtitle">"Μπορείς να αλλάξεις τις ρυθμίσεις σου αργότερα."</string>
<string name="screen_notification_optin_title">"Επέτρεψε τις ειδοποιήσεις και μην χάσεις ούτε ένα μήνυμα"</string>
<string name="screen_session_verification_enter_recovery_key">"Εισαγωγή κλειδιού ανάκτησης"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Esperando en otro dispositivo…"</string>
<string name="screen_notification_optin_subtitle">"Puedes cambiar la configuración más tarde."</string>
<string name="screen_notification_optin_title">"Activa las notificaciones y nunca te pierdas un mensaje"</string>
<string name="screen_session_verification_enter_recovery_key">"Introduce la clave de recuperación"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Ootame teise seadme järgi…"</string>
<string name="screen_notification_optin_subtitle">"Sa võid seadistusi hiljem alati muuta."</string>
<string name="screen_notification_optin_title">"Luba teavitused ja kunagi ei jää sul sõnumid märkamata"</string>
<string name="screen_session_verification_enter_recovery_key">"Sisesta taastevõti"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Beste gailuaren zain…"</string>
<string name="screen_notification_optin_subtitle">"Geroago alda ditzakezu ezarpenak."</string>
<string name="screen_notification_optin_title">"Baimendu jakinarazpenak eta ez galdu inoiz mezurik"</string>
<string name="screen_session_verification_enter_recovery_key">"Sartu berreskuratze-gakoa"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"منتظر افزارهٔ دیگر…"</string>
<string name="screen_notification_optin_subtitle">"می‌توانید بعداً تنظیماتتان را تغییر دهید."</string>
<string name="screen_notification_optin_title">"اجازه به آگاهی‌ها و از دست ندادن پیام‌ها"</string>
<string name="screen_session_verification_enter_recovery_key">"ورود کلید بازیابی"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Odotetaan toista laitetta…"</string>
<string name="screen_notification_optin_subtitle">"Voit muuttaa asetuksia myöhemmin."</string>
<string name="screen_notification_optin_title">"Salli ilmoitukset ja älä koskaan missaa viestejä"</string>
<string name="screen_session_verification_enter_recovery_key">"Anna palautusavain"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"En attente dune autre session…"</string>
<string name="screen_notification_optin_subtitle">"Vous pourrez modifier vos paramètres ultérieurement."</string>
<string name="screen_notification_optin_title">"Autorisez les notifications et ne manquez aucun message"</string>
<string name="screen_session_verification_enter_recovery_key">"Utiliser la clé de récupération"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Čekanje na drugi uređaj…"</string>
<string name="screen_notification_optin_subtitle">"Postavke možete promijeniti poslije."</string>
<string name="screen_notification_optin_title">"Omogućite obavijesti i nikada ne propustite poruku"</string>
<string name="screen_session_verification_enter_recovery_key">"Unesi ključ za oporavak"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Várakozás a másik eszközre…"</string>
<string name="screen_notification_optin_subtitle">"A beállításokat később is módosíthatja."</string>
<string name="screen_notification_optin_title">"Értesítések engedélyezése, hogy soha ne maradjon le egyetlen üzenetről sem"</string>
<string name="screen_session_verification_enter_recovery_key">"Adja meg a helyreállítási kulcsot"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Menunggu di perangkat lain…"</string>
<string name="screen_notification_optin_subtitle">"Anda dapat mengubah pengaturan Anda nanti."</string>
<string name="screen_notification_optin_title">"Izinkan pemberitahuan dan jangan pernah melewatkan pesan"</string>
<string name="screen_session_verification_enter_recovery_key">"Masukkan kunci pemulihan"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"In attesa sull\'altro dispositivo…"</string>
<string name="screen_notification_optin_subtitle">"Potrai modificare le tue impostazioni in seguito."</string>
<string name="screen_notification_optin_title">"Consenti le notifiche e non perdere mai un messaggio"</string>
<string name="screen_session_verification_enter_recovery_key">"Inserisci la chiave di recupero"</string>
</resources>

View File

@@ -8,5 +8,4 @@
<string name="screen_identity_waiting_on_other_device">"ველოდებით სხვა მოწყობილობას…"</string>
<string name="screen_notification_optin_subtitle">"თქვენ შეგიძლიათ შეცვალოთ თქვენი პარამეტრები მოგვიანებით."</string>
<string name="screen_notification_optin_title">"ყველა შეტყობინებაზე შეტყობინებების მიღება"</string>
<string name="screen_session_verification_enter_recovery_key">"შეიყვანეთ აღდგენის გასაღები"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"다른 기기에서 대기 중…"</string>
<string name="screen_notification_optin_subtitle">"나중에 설정을 변경할 수 있습니다."</string>
<string name="screen_notification_optin_title">"알림을 허용하고 메시지를 놓치지 마세요."</string>
<string name="screen_session_verification_enter_recovery_key">"복구 키를 입력하세요"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Venter på en annen enhet…"</string>
<string name="screen_notification_optin_subtitle">"Du kan endre innstillingene dine senere."</string>
<string name="screen_notification_optin_title">"Tillat varslinger og gå aldri glipp av en melding"</string>
<string name="screen_session_verification_enter_recovery_key">"Skriv inn gjenopprettingsnøkkel"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Wachten op ander apparaat…"</string>
<string name="screen_notification_optin_subtitle">"Je kunt je instellingen later wijzigen."</string>
<string name="screen_notification_optin_title">"Sta meldingen toe en mis nooit meer een bericht"</string>
<string name="screen_session_verification_enter_recovery_key">"Voer herstelsleutel in"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Oczekiwanie na inne urządzenie…"</string>
<string name="screen_notification_optin_subtitle">"Możesz zmienić ustawienia później."</string>
<string name="screen_notification_optin_title">"Zezwól na powiadomienia i nie przegap żadnej wiadomości"</string>
<string name="screen_session_verification_enter_recovery_key">"Wprowadź klucz przywracania"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Aguardando o outro dispositivo…"</string>
<string name="screen_notification_optin_subtitle">"Você pode alterar suas configurações mais tarde."</string>
<string name="screen_notification_optin_title">"Permita as notificações e nunca perca uma mensagem"</string>
<string name="screen_session_verification_enter_recovery_key">"Digitar chave de recuperação"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"A aguardar por outros dispositivos…"</string>
<string name="screen_notification_optin_subtitle">"Podes alterar as tuas definições mais tarde."</string>
<string name="screen_notification_optin_title">"Permite as notificações e nunca percas uma mensagem"</string>
<string name="screen_session_verification_enter_recovery_key">"Insere a chave de recuperação"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Se așteaptă celălalt dispozitiv…"</string>
<string name="screen_notification_optin_subtitle">"Puteți modifica setările mai târziu."</string>
<string name="screen_notification_optin_title">"Permiteți notificările și nu pierdeți niciodată un mesaj"</string>
<string name="screen_session_verification_enter_recovery_key">"Introduceți cheia de recuperare"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Ожидание другого устройства…"</string>
<string name="screen_notification_optin_subtitle">"Вы можете изменить настройки позже."</string>
<string name="screen_notification_optin_title">"Разрешите отправку уведомлений"</string>
<string name="screen_session_verification_enter_recovery_key">"Введите ключ восстановления"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Čaká sa na druhom zariadení…"</string>
<string name="screen_notification_optin_subtitle">"Svoje nastavenia môžete neskôr zmeniť."</string>
<string name="screen_notification_optin_title">"Povoľte oznámenia a nikdy nezmeškajte žiadnu správu"</string>
<string name="screen_session_verification_enter_recovery_key">"Zadajte kľúč na obnovenie"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Väntar på annan enhet …"</string>
<string name="screen_notification_optin_subtitle">"Du kan ändra dina inställningar senare."</string>
<string name="screen_notification_optin_title">"Tillåt aviseringar och missa aldrig ett meddelande"</string>
<string name="screen_session_verification_enter_recovery_key">"Ange återställningsnyckel"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Diğer cihazda bekleniyor…"</string>
<string name="screen_notification_optin_subtitle">"Ayarlarınızı daha sonra değiştirebilirsiniz."</string>
<string name="screen_notification_optin_title">"Bildirimlere izin verin ve hiçbir mesajı kaçırmayın"</string>
<string name="screen_session_verification_enter_recovery_key">"Kurtarma anahtarını girin"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Чекає на інше пристрій…"</string>
<string name="screen_notification_optin_subtitle">"Ви можете змінити свої налаштування пізніше."</string>
<string name="screen_notification_optin_title">"Дозволити сповіщення і ніколи не пропускати повідомлення"</string>
<string name="screen_session_verification_enter_recovery_key">"Введіть ключ відновлення"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"دوسرے آلہ پر منتظر…"</string>
<string name="screen_notification_optin_subtitle">"آپ بعد میں اپنی ترتیبات تبدیل کر سکتے ہیں۔"</string>
<string name="screen_notification_optin_title">"اطلاعات کی اجازت دیں اور کبھی بھی کسی پیغام سے محروم نہ ہوں۔"</string>
<string name="screen_session_verification_enter_recovery_key">"بازیابی کلید درج کریں"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Boshqa qurilmada kutilmoqda…"</string>
<string name="screen_notification_optin_subtitle">"Sozlamalaringizni keyinroq o\'zgartirishingiz mumkin."</string>
<string name="screen_notification_optin_title">"Bildirishnomalarga ruxsat bering va hech qachon xabarni o\'tkazib yubormang"</string>
<string name="screen_session_verification_enter_recovery_key">"Tiklash kalitini kiriting"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"正在等待其他裝置…"</string>
<string name="screen_notification_optin_subtitle">"您稍後仍可變更設定。"</string>
<string name="screen_notification_optin_title">"允許通知,永遠不會錯誤任何訊息"</string>
<string name="screen_session_verification_enter_recovery_key">"輸入復原金鑰"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"正在等待其他设备……"</string>
<string name="screen_notification_optin_subtitle">"您可以稍后更改设置。"</string>
<string name="screen_notification_optin_title">"允许通知,绝不错过任何消息"</string>
<string name="screen_session_verification_enter_recovery_key">"输入恢复密钥"</string>
</resources>

View File

@@ -12,5 +12,4 @@
<string name="screen_identity_waiting_on_other_device">"Waiting on other device…"</string>
<string name="screen_notification_optin_subtitle">"You can change your settings later."</string>
<string name="screen_notification_optin_title">"Allow notifications and never miss a message"</string>
<string name="screen_session_verification_enter_recovery_key">"Enter recovery key"</string>
</resources>

View File

@@ -47,7 +47,7 @@ class ChooseSessionVerificationModePresenterTest {
assertThat(awaitItem().buttonsState.dataOrNull()).isEqualTo(
ChooseSelfVerificationModeState.ButtonsState(
canUseAnotherDevice = false,
canEnterRecoveryKey = false,
canUseRecoveryKey = false,
)
)
}
@@ -66,7 +66,7 @@ class ChooseSessionVerificationModePresenterTest {
assertThat(awaitItem().buttonsState.dataOrNull()).isEqualTo(
ChooseSelfVerificationModeState.ButtonsState(
canUseAnotherDevice = false,
canEnterRecoveryKey = false,
canUseRecoveryKey = false,
)
)
}
@@ -85,7 +85,7 @@ class ChooseSessionVerificationModePresenterTest {
assertThat(awaitItem().buttonsState.dataOrNull()).isEqualTo(
ChooseSelfVerificationModeState.ButtonsState(
canUseAnotherDevice = true,
canEnterRecoveryKey = false,
canUseRecoveryKey = false,
)
)
}
@@ -104,7 +104,7 @@ class ChooseSessionVerificationModePresenterTest {
assertThat(awaitItem().buttonsState.dataOrNull()).isEqualTo(
ChooseSelfVerificationModeState.ButtonsState(
canUseAnotherDevice = false,
canEnterRecoveryKey = true,
canUseRecoveryKey = true,
)
)
}

View File

@@ -57,10 +57,10 @@ class ChooseSessionVerificationModeViewTest {
fun `clicking on enter recovery key calls the callback`() {
ensureCalledOnce { callback ->
rule.setChooseSelfVerificationModeView(
aChooseSelfVerificationModeState(AsyncData.Success(aButtonsState(canEnterRecoveryKey = true))),
aChooseSelfVerificationModeState(AsyncData.Success(aButtonsState(canUseRecoveryKey = true))),
onEnterRecoveryKey = callback,
)
rule.clickOn(R.string.screen_session_verification_enter_recovery_key)
rule.clickOn(R.string.screen_identity_confirmation_use_recovery_key)
}
}

View File

@@ -288,8 +288,7 @@
"includeRegex" : [
"screen_welcome_.*",
"screen_notification_optin_.*",
"screen_identity_.*",
"screen_session_verification_enter_recovery_key"
"screen_identity_.*"
]
},
{