Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve session recovery screens #2657

Merged
merged 12 commits into from
Apr 9, 2024
2 changes: 1 addition & 1 deletion .maestro/tests/account/verifySession.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ appId: ${MAESTRO_APP_ID}
id: "verification-recovery_key"
- inputText: ${MAESTRO_RECOVERY_KEY}
- hideKeyboard
- tapOn: "Confirm"
- tapOn: "Continue"
- extendedWaitUntil:
visible: "Device verified"
timeout: 10000
Expand Down
1 change: 1 addition & 0 deletions changelog.d/2579.feature
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Move session recovery to the login flow.
Original file line number Diff line number Diff line change
Expand Up @@ -58,13 +58,27 @@ class FtueSessionVerificationFlowNode @AssistedInject constructor(

@Parcelize
data object EnterRecoveryKey : NavTarget

@Parcelize
data object CreateNewRecoveryKey : NavTarget
}

interface Callback : Plugin {
fun onDone()
}

private val callback = plugins<Callback>().first()
private val secureBackupEntryPointCallback = object : SecureBackupEntryPoint.Callback {
override fun onCreateNewRecoveryKey() {
backstack.push(NavTarget.CreateNewRecoveryKey)
}

override fun onDone() {
lifecycleScope.launch {
// Move to the completed state view in the verification flow
backstack.newRoot(NavTarget.Root)
}
}
}

override fun resolve(navTarget: NavTarget, buildContext: BuildContext): Node {
return when (navTarget) {
Expand All @@ -75,23 +89,26 @@ class FtueSessionVerificationFlowNode @AssistedInject constructor(
backstack.push(NavTarget.EnterRecoveryKey)
}

override fun onCreateNewRecoveryKey() {
backstack.push(NavTarget.CreateNewRecoveryKey)
}

override fun onDone() {
callback.onDone()
plugins<Callback>().forEach { it.onDone() }
}
})
.build()
}
is NavTarget.EnterRecoveryKey -> {
secureBackupEntryPoint.nodeBuilder(this, buildContext)
.params(SecureBackupEntryPoint.Params(SecureBackupEntryPoint.InitialTarget.EnterRecoveryKey))
.callback(object : SecureBackupEntryPoint.Callback {
override fun onDone() {
lifecycleScope.launch {
// Move to the completed state view in the verification flow
backstack.newRoot(NavTarget.Root)
}
}
})
.callback(secureBackupEntryPointCallback)
.build()
}
is NavTarget.CreateNewRecoveryKey -> {
secureBackupEntryPoint.nodeBuilder(this, buildContext)
.params(SecureBackupEntryPoint.Params(SecureBackupEntryPoint.InitialTarget.CreateNewRecoveryKey))
.callback(secureBackupEntryPointCallback)
.build()
}
}
Expand Down
7 changes: 7 additions & 0 deletions features/ftue/impl/src/main/res/values-be/translations.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,13 @@
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="screen_notification_optin_subtitle">"Вы можаце змяніць налады пазней."</string>
<string name="screen_notification_optin_title">"Дазвольце апавяшчэнні і ніколі не прапускайце іх"</string>
<string name="screen_qr_code_login_initial_state_item_1">"Адкрыйце Element на настольнай прыладзе"</string>
<string name="screen_qr_code_login_initial_state_item_2">"Націсніце на свой аватар"</string>
<string name="screen_qr_code_login_initial_state_item_3">"Выберыце %1$s"</string>
<string name="screen_qr_code_login_initial_state_item_3_action">"“Звязаць новую прыладу”"</string>
<string name="screen_qr_code_login_initial_state_item_4">"Выберыце %1$s"</string>
<string name="screen_qr_code_login_initial_state_item_4_action">"“Паказаць QR-код”"</string>
<string name="screen_qr_code_login_initial_state_title">"Адкрыйце Element на іншай прыладзе, каб атрымаць QR-код"</string>
<string name="screen_welcome_bullet_1">"Званкі, апытанні, пошук і многае іншае будзе дададзена пазней у гэтым годзе."</string>
<string name="screen_welcome_bullet_2">"Гісторыя паведамленняў для зашыфраваных пакояў пакуль недаступна."</string>
<string name="screen_welcome_bullet_3">"Мы будзем рады пачуць вашае меркаванне, паведаміце нам аб гэтым праз старонку налад."</string>
Expand Down
7 changes: 7 additions & 0 deletions features/ftue/impl/src/main/res/values-ru/translations.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,13 @@
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="screen_notification_optin_subtitle">"Вы можете изменить настройки позже."</string>
<string name="screen_notification_optin_title">"Разрешите уведомления и никогда не пропустите сообщение"</string>
<string name="screen_qr_code_login_initial_state_item_1">"Откройте Element на настольном устройстве"</string>
<string name="screen_qr_code_login_initial_state_item_2">"Нажмите на свое изображение"</string>
<string name="screen_qr_code_login_initial_state_item_3">"Выбрать %1$s"</string>
<string name="screen_qr_code_login_initial_state_item_3_action">"\"Привязать новое устройство\""</string>
<string name="screen_qr_code_login_initial_state_item_4">"Выбрать %1$s"</string>
<string name="screen_qr_code_login_initial_state_item_4_action">"\"Показать QR-код\""</string>
<string name="screen_qr_code_login_initial_state_title">"Откройте Element на другом устройстве, чтобы получить QR-код"</string>
<string name="screen_welcome_bullet_1">"Звонки, опросы, поиск и многое другое будут добавлены позже в этом году."</string>
<string name="screen_welcome_bullet_2">"История сообщений для зашифрованных комнат в этом обновлении будет недоступна."</string>
<string name="screen_welcome_bullet_3">"Мы будем рады услышать ваше мнение, сообщите нам об этом через страницу настроек."</string>
Expand Down
7 changes: 7 additions & 0 deletions features/ftue/impl/src/main/res/values/localazy.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,13 @@
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<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_qr_code_login_initial_state_item_1">"Open Element on a desktop device"</string>
<string name="screen_qr_code_login_initial_state_item_2">"Click on your avatar"</string>
<string name="screen_qr_code_login_initial_state_item_3">"Select %1$s"</string>
<string name="screen_qr_code_login_initial_state_item_3_action">"“Link new device”"</string>
<string name="screen_qr_code_login_initial_state_item_4">"Select %1$s"</string>
<string name="screen_qr_code_login_initial_state_item_4_action">"“Show QR code”"</string>
<string name="screen_qr_code_login_initial_state_title">"Open Element on another device to get the QR code"</string>
<string name="screen_welcome_bullet_1">"Calls, polls, search and more will be added later this year."</string>
<string name="screen_welcome_bullet_2">"Message history for encrypted rooms isn’t available yet."</string>
<string name="screen_welcome_bullet_3">"We’d love to hear from you, let us know what you think via the settings page."</string>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
<string name="screen_app_lock_settings_change_pin">"Byt PIN-kod"</string>
<string name="screen_app_lock_settings_enable_biometric_unlock">"Tillåt biometrisk upplåsning"</string>
<string name="screen_app_lock_settings_remove_pin">"Ta bort PIN-kod"</string>
<string name="screen_app_lock_settings_remove_pin_alert_message">"Är du säker på att du vill ta bort PIN-koden?"</string>
<string name="screen_app_lock_settings_remove_pin_alert_title">"Ta bort PIN-koden?"</string>
<string name="screen_signout_in_progress_dialog_content">"Loggar ut …"</string>
</resources>
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,6 @@
<string name="screen_room_change_role_confirm_demote_self_title">"Панізіць сябе?"</string>
<string name="screen_room_change_role_invited_member_name">"%1$s (У чаканні)"</string>
<string name="screen_room_change_role_invited_member_name_android">"(У чаканні)"</string>
<string name="screen_room_change_role_moderators_admin_section_footer">"Адміністратары аўтаматычна маюць права мадэратара"</string>
<string name="screen_room_change_role_moderators_title">"Рэдагаваць мадэратараў"</string>
<string name="screen_room_change_role_section_administrators">"Адміністратары"</string>
<string name="screen_room_change_role_section_moderators">"Мадэратары"</string>
Expand Down Expand Up @@ -59,7 +58,6 @@
<string name="screen_room_details_room_name_label">"Назва пакоя"</string>
<string name="screen_room_details_security_title">"Бяспека"</string>
<string name="screen_room_details_share_room_title">"Падзяліцца пакоем"</string>
<string name="screen_room_details_title">"Інфармацыя аб пакоі"</string>
<string name="screen_room_details_topic_title">"Тэма"</string>
<string name="screen_room_details_updating_room">"Ідзе абнаўленне пакоя…"</string>
<string name="screen_room_member_list_ban_member_confirmation_action">"Заблакіраваць"</string>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,6 @@
<string name="screen_room_change_role_confirm_demote_self_description">"Tuto změnu nebudete moci vrátit zpět, protože sami degradujete, pokud jste posledním privilegovaným uživatelem v místnosti, nebude možné znovu získat oprávnění."</string>
<string name="screen_room_change_role_confirm_demote_self_title">"Degradovat se?"</string>
<string name="screen_room_change_role_invited_member_name">"%1$s (čekající)"</string>
<string name="screen_room_change_role_invited_member_name_android">"(Čeká na vyřízení)"</string>
<string name="screen_room_change_role_moderators_admin_section_footer">"Správci mají automaticky oprávnění moderátora"</string>
<string name="screen_room_change_role_moderators_title">"Upravit moderátory"</string>
<string name="screen_room_change_role_section_administrators">"Správci"</string>
<string name="screen_room_change_role_section_moderators">"Moderátoři"</string>
Expand Down Expand Up @@ -59,7 +57,6 @@
<string name="screen_room_details_room_name_label">"Název místnosti"</string>
<string name="screen_room_details_security_title">"Zabezpečení"</string>
<string name="screen_room_details_share_room_title">"Sdílet místnost"</string>
<string name="screen_room_details_title">"Informace o místnosti"</string>
<string name="screen_room_details_topic_title">"Téma"</string>
<string name="screen_room_details_updating_room">"Aktualizace místnosti…"</string>
<string name="screen_room_member_list_ban_member_confirmation_action">"Vykázat"</string>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,6 @@
<string name="screen_room_change_role_confirm_demote_self_description">"Du stufst dich selbst herab. Diese Änderung kann nicht rückgängig gemacht werden. Wenn du der letzte Benutzer mit dieser Rolle bist, ist es nicht möglich, diese Rolle wiederzuerlangen."</string>
<string name="screen_room_change_role_confirm_demote_self_title">"Möchtest Du Dich selbst herabstufen?"</string>
<string name="screen_room_change_role_invited_member_name">"%1$s (Ausstehend)"</string>
<string name="screen_room_change_role_invited_member_name_android">"(Ausstehend)"</string>
<string name="screen_room_change_role_moderators_admin_section_footer">"Administratoren haben automatisch Moderatorenrechte"</string>
<string name="screen_room_change_role_moderators_title">"Moderatoren bearbeiten"</string>
<string name="screen_room_change_role_section_administrators">"Administratoren"</string>
<string name="screen_room_change_role_section_moderators">"Moderatoren"</string>
Expand Down Expand Up @@ -59,7 +57,6 @@
<string name="screen_room_details_room_name_label">"Raumname"</string>
<string name="screen_room_details_security_title">"Sicherheit"</string>
<string name="screen_room_details_share_room_title">"Raum teilen"</string>
<string name="screen_room_details_title">"Raum Informationen"</string>
<string name="screen_room_details_topic_title">"Thema"</string>
<string name="screen_room_details_updating_room">"Raum wird aktualisiert…"</string>
<string name="screen_room_member_list_ban_member_confirmation_action">"Sperren"</string>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,6 @@
<string name="screen_room_change_role_confirm_demote_self_description">"Ezt a változtatást nem fogja tudni visszavonni, mivel lefokozza magát, ha Ön az utolsó jogosultságokkal rendelkező felhasználó a szobában, akkor lehetetlen lesz visszaszerezni a jogosultságokat."</string>
<string name="screen_room_change_role_confirm_demote_self_title">"Lefokozza magát?"</string>
<string name="screen_room_change_role_invited_member_name">"%1$s (függőben)"</string>
<string name="screen_room_change_role_invited_member_name_android">"(Függőben)"</string>
<string name="screen_room_change_role_moderators_admin_section_footer">"Az adminisztrátorok automatikusan moderátori jogosultságokkal rendelkeznek"</string>
<string name="screen_room_change_role_moderators_title">"Moderátorok szerkesztése"</string>
<string name="screen_room_change_role_section_administrators">"Rendszergazdák"</string>
<string name="screen_room_change_role_section_moderators">"Moderátorok"</string>
Expand Down Expand Up @@ -59,7 +57,6 @@
<string name="screen_room_details_room_name_label">"Szoba neve"</string>
<string name="screen_room_details_security_title">"Biztonság"</string>
<string name="screen_room_details_share_room_title">"Szoba megosztása"</string>
<string name="screen_room_details_title">"Szobainformációk"</string>
<string name="screen_room_details_topic_title">"Téma"</string>
<string name="screen_room_details_updating_room">"Szoba frissítése…"</string>
<string name="screen_room_member_list_ban_member_confirmation_action">"Kitiltás"</string>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,6 @@
<string name="screen_room_change_role_confirm_demote_self_description">"Anda tidak akan dapat mengurungkan perubahan ini karena Anda sedang menurunkan Anda sendiri, jika Anda merupakan pengguna dengan hak khusus dalam ruangan maka tidak akan memungkinkan untuk mendapatkan hak tersebut lagi."</string>
<string name="screen_room_change_role_confirm_demote_self_title">"Turunkan Anda sendiri?"</string>
<string name="screen_room_change_role_invited_member_name">"%1$s (Tertunda)"</string>
<string name="screen_room_change_role_invited_member_name_android">"(Tertunda)"</string>
<string name="screen_room_change_role_moderators_admin_section_footer">"Admin secara otomatis memiliki hak moderator"</string>
<string name="screen_room_change_role_moderators_title">"Sunting Moderator"</string>
<string name="screen_room_change_role_section_administrators">"Admin"</string>
<string name="screen_room_change_role_section_moderators">"Moderator"</string>
Expand Down Expand Up @@ -59,7 +57,6 @@
<string name="screen_room_details_room_name_label">"Nama ruangan"</string>
<string name="screen_room_details_security_title">"Keamanan"</string>
<string name="screen_room_details_share_room_title">"Bagikan ruangan"</string>
<string name="screen_room_details_title">"Info ruangan"</string>
<string name="screen_room_details_topic_title">"Topik"</string>
<string name="screen_room_details_updating_room">"Memperbarui ruangan…"</string>
<string name="screen_room_member_list_ban_member_confirmation_action">"Cekal"</string>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
<string name="screen_polls_history_title">"Sondaggi"</string>
<string name="screen_room_change_permissions_administrators">"Solo amministratori"</string>
<string name="screen_room_change_permissions_ban_people">"Escludi membri"</string>
<string name="screen_room_change_permissions_delete_messages">"Rimuovi messaggi"</string>
<string name="screen_room_change_permissions_delete_messages">"Eliminare messaggi"</string>
<string name="screen_room_change_permissions_everyone">"Tutti"</string>
<string name="screen_room_change_permissions_invite_people">"Invitare persone"</string>
<string name="screen_room_change_permissions_member_moderation">"Moderazione dei membri"</string>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,6 @@
<string name="screen_room_change_role_confirm_demote_self_description">"Вы не сможете отменить это изменение, так как понижаете себя статус. Если вы являетесь последним привилегированным пользователем в комнате, восстановить привилегии будет невозможно."</string>
<string name="screen_room_change_role_confirm_demote_self_title">"Понизить свой уровень?"</string>
<string name="screen_room_change_role_invited_member_name">"%1$s (Ожидание)"</string>
<string name="screen_room_change_role_invited_member_name_android">"(В ожидании)"</string>
<string name="screen_room_change_role_moderators_admin_section_footer">"Администраторы автоматически получают права модератора"</string>
<string name="screen_room_change_role_moderators_title">"Редактировать роль модераторов"</string>
<string name="screen_room_change_role_section_administrators">"Администраторы"</string>
<string name="screen_room_change_role_section_moderators">"Модераторы"</string>
Expand Down Expand Up @@ -59,7 +57,6 @@
<string name="screen_room_details_room_name_label">"Название комнаты"</string>
<string name="screen_room_details_security_title">"Безопасность"</string>
<string name="screen_room_details_share_room_title">"Поделиться комнатой"</string>
<string name="screen_room_details_title">"Информация о комнате"</string>
<string name="screen_room_details_topic_title">"Тема"</string>
<string name="screen_room_details_updating_room">"Обновление комнаты…"</string>
<string name="screen_room_member_list_ban_member_confirmation_action">"Заблокировать"</string>
Expand Down
Loading
Loading