Skip to content

Commit cf072fa

Browse files
jmartinespElementBot
andauthored
Improve session recovery screens (#2657)
* Improve enter recovery key screen UI * Add instructions to reset the encryption of the logged in account. * Update screenshots * Fix maestro flow --------- Co-authored-by: ElementBot <[email protected]>
1 parent d0f2677 commit cf072fa

File tree

164 files changed

+763
-356
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

164 files changed

+763
-356
lines changed

.maestro/tests/account/verifySession.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ appId: ${MAESTRO_APP_ID}
66
id: "verification-recovery_key"
77
- inputText: ${MAESTRO_RECOVERY_KEY}
88
- hideKeyboard
9-
- tapOn: "Confirm"
9+
- tapOn: "Continue"
1010
- extendedWaitUntil:
1111
visible: "Device verified"
1212
timeout: 10000

changelog.d/2579.feature

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Move session recovery to the login flow.

features/ftue/impl/src/main/kotlin/io/element/android/features/ftue/impl/sessionverification/FtueSessionVerificationFlowNode.kt

Lines changed: 27 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -58,13 +58,27 @@ class FtueSessionVerificationFlowNode @AssistedInject constructor(
5858

5959
@Parcelize
6060
data object EnterRecoveryKey : NavTarget
61+
62+
@Parcelize
63+
data object CreateNewRecoveryKey : NavTarget
6164
}
6265

6366
interface Callback : Plugin {
6467
fun onDone()
6568
}
6669

67-
private val callback = plugins<Callback>().first()
70+
private val secureBackupEntryPointCallback = object : SecureBackupEntryPoint.Callback {
71+
override fun onCreateNewRecoveryKey() {
72+
backstack.push(NavTarget.CreateNewRecoveryKey)
73+
}
74+
75+
override fun onDone() {
76+
lifecycleScope.launch {
77+
// Move to the completed state view in the verification flow
78+
backstack.newRoot(NavTarget.Root)
79+
}
80+
}
81+
}
6882

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

92+
override fun onCreateNewRecoveryKey() {
93+
backstack.push(NavTarget.CreateNewRecoveryKey)
94+
}
95+
7896
override fun onDone() {
79-
callback.onDone()
97+
plugins<Callback>().forEach { it.onDone() }
8098
}
8199
})
82100
.build()
83101
}
84102
is NavTarget.EnterRecoveryKey -> {
85103
secureBackupEntryPoint.nodeBuilder(this, buildContext)
86104
.params(SecureBackupEntryPoint.Params(SecureBackupEntryPoint.InitialTarget.EnterRecoveryKey))
87-
.callback(object : SecureBackupEntryPoint.Callback {
88-
override fun onDone() {
89-
lifecycleScope.launch {
90-
// Move to the completed state view in the verification flow
91-
backstack.newRoot(NavTarget.Root)
92-
}
93-
}
94-
})
105+
.callback(secureBackupEntryPointCallback)
106+
.build()
107+
}
108+
is NavTarget.CreateNewRecoveryKey -> {
109+
secureBackupEntryPoint.nodeBuilder(this, buildContext)
110+
.params(SecureBackupEntryPoint.Params(SecureBackupEntryPoint.InitialTarget.CreateNewRecoveryKey))
111+
.callback(secureBackupEntryPointCallback)
95112
.build()
96113
}
97114
}

features/ftue/impl/src/main/res/values-be/translations.xml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,13 @@
22
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
33
<string name="screen_notification_optin_subtitle">"Вы можаце змяніць налады пазней."</string>
44
<string name="screen_notification_optin_title">"Дазвольце апавяшчэнні і ніколі не прапускайце іх"</string>
5+
<string name="screen_qr_code_login_initial_state_item_1">"Адкрыйце Element на настольнай прыладзе"</string>
6+
<string name="screen_qr_code_login_initial_state_item_2">"Націсніце на свой аватар"</string>
7+
<string name="screen_qr_code_login_initial_state_item_3">"Выберыце %1$s"</string>
8+
<string name="screen_qr_code_login_initial_state_item_3_action">"“Звязаць новую прыладу”"</string>
9+
<string name="screen_qr_code_login_initial_state_item_4">"Выберыце %1$s"</string>
10+
<string name="screen_qr_code_login_initial_state_item_4_action">"“Паказаць QR-код”"</string>
11+
<string name="screen_qr_code_login_initial_state_title">"Адкрыйце Element на іншай прыладзе, каб атрымаць QR-код"</string>
512
<string name="screen_welcome_bullet_1">"Званкі, апытанні, пошук і многае іншае будзе дададзена пазней у гэтым годзе."</string>
613
<string name="screen_welcome_bullet_2">"Гісторыя паведамленняў для зашыфраваных пакояў пакуль недаступна."</string>
714
<string name="screen_welcome_bullet_3">"Мы будзем рады пачуць вашае меркаванне, паведаміце нам аб гэтым праз старонку налад."</string>

features/ftue/impl/src/main/res/values-ru/translations.xml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,13 @@
22
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
33
<string name="screen_notification_optin_subtitle">"Вы можете изменить настройки позже."</string>
44
<string name="screen_notification_optin_title">"Разрешите уведомления и никогда не пропустите сообщение"</string>
5+
<string name="screen_qr_code_login_initial_state_item_1">"Откройте Element на настольном устройстве"</string>
6+
<string name="screen_qr_code_login_initial_state_item_2">"Нажмите на свое изображение"</string>
7+
<string name="screen_qr_code_login_initial_state_item_3">"Выбрать %1$s"</string>
8+
<string name="screen_qr_code_login_initial_state_item_3_action">"\"Привязать новое устройство\""</string>
9+
<string name="screen_qr_code_login_initial_state_item_4">"Выбрать %1$s"</string>
10+
<string name="screen_qr_code_login_initial_state_item_4_action">"\"Показать QR-код\""</string>
11+
<string name="screen_qr_code_login_initial_state_title">"Откройте Element на другом устройстве, чтобы получить QR-код"</string>
512
<string name="screen_welcome_bullet_1">"Звонки, опросы, поиск и многое другое будут добавлены позже в этом году."</string>
613
<string name="screen_welcome_bullet_2">"История сообщений для зашифрованных комнат в этом обновлении будет недоступна."</string>
714
<string name="screen_welcome_bullet_3">"Мы будем рады услышать ваше мнение, сообщите нам об этом через страницу настроек."</string>

features/ftue/impl/src/main/res/values/localazy.xml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,13 @@
22
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
33
<string name="screen_notification_optin_subtitle">"You can change your settings later."</string>
44
<string name="screen_notification_optin_title">"Allow notifications and never miss a message"</string>
5+
<string name="screen_qr_code_login_initial_state_item_1">"Open Element on a desktop device"</string>
6+
<string name="screen_qr_code_login_initial_state_item_2">"Click on your avatar"</string>
7+
<string name="screen_qr_code_login_initial_state_item_3">"Select %1$s"</string>
8+
<string name="screen_qr_code_login_initial_state_item_3_action">"“Link new device”"</string>
9+
<string name="screen_qr_code_login_initial_state_item_4">"Select %1$s"</string>
10+
<string name="screen_qr_code_login_initial_state_item_4_action">"“Show QR code”"</string>
11+
<string name="screen_qr_code_login_initial_state_title">"Open Element on another device to get the QR code"</string>
512
<string name="screen_welcome_bullet_1">"Calls, polls, search and more will be added later this year."</string>
613
<string name="screen_welcome_bullet_2">"Message history for encrypted rooms isn’t available yet."</string>
714
<string name="screen_welcome_bullet_3">"We’d love to hear from you, let us know what you think via the settings page."</string>

features/lockscreen/impl/src/main/res/values-sv/translations.xml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
<string name="screen_app_lock_settings_change_pin">"Byt PIN-kod"</string>
44
<string name="screen_app_lock_settings_enable_biometric_unlock">"Tillåt biometrisk upplåsning"</string>
55
<string name="screen_app_lock_settings_remove_pin">"Ta bort PIN-kod"</string>
6-
<string name="screen_app_lock_settings_remove_pin_alert_message">"Är du säker på att du vill ta bort PIN-koden?"</string>
76
<string name="screen_app_lock_settings_remove_pin_alert_title">"Ta bort PIN-koden?"</string>
87
<string name="screen_signout_in_progress_dialog_content">"Loggar ut …"</string>
98
</resources>

features/roomdetails/impl/src/main/res/values-be/translations.xml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@
3131
<string name="screen_room_change_role_confirm_demote_self_title">"Панізіць сябе?"</string>
3232
<string name="screen_room_change_role_invited_member_name">"%1$s (У чаканні)"</string>
3333
<string name="screen_room_change_role_invited_member_name_android">"(У чаканні)"</string>
34-
<string name="screen_room_change_role_moderators_admin_section_footer">"Адміністратары аўтаматычна маюць права мадэратара"</string>
3534
<string name="screen_room_change_role_moderators_title">"Рэдагаваць мадэратараў"</string>
3635
<string name="screen_room_change_role_section_administrators">"Адміністратары"</string>
3736
<string name="screen_room_change_role_section_moderators">"Мадэратары"</string>
@@ -59,7 +58,6 @@
5958
<string name="screen_room_details_room_name_label">"Назва пакоя"</string>
6059
<string name="screen_room_details_security_title">"Бяспека"</string>
6160
<string name="screen_room_details_share_room_title">"Падзяліцца пакоем"</string>
62-
<string name="screen_room_details_title">"Інфармацыя аб пакоі"</string>
6361
<string name="screen_room_details_topic_title">"Тэма"</string>
6462
<string name="screen_room_details_updating_room">"Ідзе абнаўленне пакоя…"</string>
6563
<string name="screen_room_member_list_ban_member_confirmation_action">"Заблакіраваць"</string>

features/roomdetails/impl/src/main/res/values-cs/translations.xml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,6 @@
3030
<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>
3131
<string name="screen_room_change_role_confirm_demote_self_title">"Degradovat se?"</string>
3232
<string name="screen_room_change_role_invited_member_name">"%1$s (čekající)"</string>
33-
<string name="screen_room_change_role_invited_member_name_android">"(Čeká na vyřízení)"</string>
34-
<string name="screen_room_change_role_moderators_admin_section_footer">"Správci mají automaticky oprávnění moderátora"</string>
3533
<string name="screen_room_change_role_moderators_title">"Upravit moderátory"</string>
3634
<string name="screen_room_change_role_section_administrators">"Správci"</string>
3735
<string name="screen_room_change_role_section_moderators">"Moderátoři"</string>
@@ -59,7 +57,6 @@
5957
<string name="screen_room_details_room_name_label">"Název místnosti"</string>
6058
<string name="screen_room_details_security_title">"Zabezpečení"</string>
6159
<string name="screen_room_details_share_room_title">"Sdílet místnost"</string>
62-
<string name="screen_room_details_title">"Informace o místnosti"</string>
6360
<string name="screen_room_details_topic_title">"Téma"</string>
6461
<string name="screen_room_details_updating_room">"Aktualizace místnosti…"</string>
6562
<string name="screen_room_member_list_ban_member_confirmation_action">"Vykázat"</string>

features/roomdetails/impl/src/main/res/values-de/translations.xml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,6 @@
3030
<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>
3131
<string name="screen_room_change_role_confirm_demote_self_title">"Möchtest Du Dich selbst herabstufen?"</string>
3232
<string name="screen_room_change_role_invited_member_name">"%1$s (Ausstehend)"</string>
33-
<string name="screen_room_change_role_invited_member_name_android">"(Ausstehend)"</string>
34-
<string name="screen_room_change_role_moderators_admin_section_footer">"Administratoren haben automatisch Moderatorenrechte"</string>
3533
<string name="screen_room_change_role_moderators_title">"Moderatoren bearbeiten"</string>
3634
<string name="screen_room_change_role_section_administrators">"Administratoren"</string>
3735
<string name="screen_room_change_role_section_moderators">"Moderatoren"</string>
@@ -59,7 +57,6 @@
5957
<string name="screen_room_details_room_name_label">"Raumname"</string>
6058
<string name="screen_room_details_security_title">"Sicherheit"</string>
6159
<string name="screen_room_details_share_room_title">"Raum teilen"</string>
62-
<string name="screen_room_details_title">"Raum Informationen"</string>
6360
<string name="screen_room_details_topic_title">"Thema"</string>
6461
<string name="screen_room_details_updating_room">"Raum wird aktualisiert…"</string>
6562
<string name="screen_room_member_list_ban_member_confirmation_action">"Sperren"</string>

0 commit comments

Comments
 (0)