diff --git a/lib/l10n/intl_et.arb b/lib/l10n/intl_et.arb index b951437d6..8b5b5f49d 100644 --- a/lib/l10n/intl_et.arb +++ b/lib/l10n/intl_et.arb @@ -3504,6 +3504,14 @@ "@stickerPackName": {}, "attribution": "Autoriõigused", "@attribution": {}, + "skipChatBackup": "Jäta vestluse varundamine vahele", + "@skipChatBackup": {}, + "skipChatBackupWarning": "Kas oled kindel? Kui sa pole lülitanud sisse vestluste krüptovõtmete varundust, siis võid oma seadme vahetamisel kaotada ligipääsu oma senistele sõnumitele.", + "@skipChatBackupWarning": {}, + "loadingMessages": "Laadin sõnumeid", + "@loadingMessages": {}, + "setupChatBackup": "Võta kasutusele vestluste varundus", + "@setupChatBackup": {}, "writeAMessageLangCodes": "Kirjuta {l1} või {l2}...", "requests": "Päringud", "holdForInfo": "Vajuta ja hoia sõna info saamiseks.", diff --git a/lib/l10n/intl_ga.arb b/lib/l10n/intl_ga.arb index ce9d23916..abf8cda33 100644 --- a/lib/l10n/intl_ga.arb +++ b/lib/l10n/intl_ga.arb @@ -769,7 +769,7 @@ }, "chatHasBeenAddedToThisSpace": "Cuireadh comhrá leis an spás seo", "@chatHasBeenAddedToThisSpace": {}, - "chatBackupDescription": "Tá do sheanteachtaireachtaí slán le eochair athshlánaithe. Le do thoil déan cinnte nach gcaillfidh tú é.", + "chatBackupDescription": "Tá do theachtaireachtaí slán le heochair aisghabhála. Déan cinnte nach gcaillfidh tú í.", "@chatBackupDescription": { "type": "String", "placeholders": {} @@ -3509,6 +3509,14 @@ "@stickerPackName": {}, "attribution": "Atribution", "@attribution": {}, + "skipChatBackup": "Seachain cúltaca comhrá", + "@skipChatBackup": {}, + "skipChatBackupWarning": "An bhfuil tú cinnte? Mura gcumasaíonn tú an cúltaca comhrá, d’fhéadfá rochtain ar do theachtaireachtaí a chailleadh má athraíonn tú do ghléas.", + "@skipChatBackupWarning": {}, + "loadingMessages": "Ag lódáil teachtaireachtaí", + "@loadingMessages": {}, + "setupChatBackup": "Socraigh cúltaca comhrá", + "@setupChatBackup": {}, "writeAMessageLangCodes": "Clóscríobh i {l1} nó {l2}...", "requests": "Iarratais", "holdForInfo": "Bain triail as agus coinnigh síos le haghaidh eolas faoin bhfocal.", diff --git a/lib/l10n/intl_lv.arb b/lib/l10n/intl_lv.arb index 267460a6c..49df8998e 100644 --- a/lib/l10n/intl_lv.arb +++ b/lib/l10n/intl_lv.arb @@ -2348,7 +2348,7 @@ } } }, - "chatBackupDescription": "Iepriekšējās ziņas ir aizsargātas ar atkopes atslēgu. Lūgums nodrošināt, ka tā netiek pazaudēta.", + "chatBackupDescription": "Ziņas ir aizsargātas ar atkopes atslēgu. Lūgums nodrošināt, ka tā netiek pazaudēta.", "@chatBackupDescription": { "type": "String", "placeholders": {} @@ -3487,6 +3487,14 @@ "@stickerPackName": {}, "attribution": "Piedēvējums", "@attribution": {}, + "skipChatBackup": "Izlaist tērzēšanu rezerves kopēšanu", + "@skipChatBackup": {}, + "skipChatBackupWarning": "Vai tiešām? Bez tērzēšanu rezerves kopēšanas var tikt zaudēta piekļuve savām ziņām, kad tiks mainīta ierīce.", + "@skipChatBackupWarning": {}, + "loadingMessages": "Ielādē ziņas", + "@loadingMessages": {}, + "setupChatBackup": "Iestatīt tērzēšanu rezerves kopēšanu", + "@setupChatBackup": {}, "ignore": "Bloķēt", "ignoredUsers": "Bloķētie lietotāji", "writeAMessageLangCodes": "Rakstiet {l1} vai {l2}...", diff --git a/lib/l10n/intl_uz.arb b/lib/l10n/intl_uz.arb index eacb617ec..30c69c1b1 100644 --- a/lib/l10n/intl_uz.arb +++ b/lib/l10n/intl_uz.arb @@ -2400,7 +2400,7 @@ "@messageType": {}, "sender": "Yuboruvchi", "@sender": {}, - "openGallery": "Ochiq galereya", + "openGallery": "Galereyani ochish", "@openGallery": {}, "removeFromSpace": "Guruhdan olib tashlash", "@removeFromSpace": {}, @@ -3168,7 +3168,7 @@ }, "appWantsToUseForLoginDescription": "Siz bu bilan ilova va veb-saytga siz haqingizdagi axborotni ulashishga ruxsat berasiz.", "@appWantsToUseForLoginDescription": {}, - "open": "Ochiq", + "open": "Ochish", "@open": {}, "waitingForServer": "Server kutilmoqda...", "@waitingForServer": {}, diff --git a/lib/l10n/intl_zh.arb b/lib/l10n/intl_zh.arb index eee29e15a..3ce728285 100644 --- a/lib/l10n/intl_zh.arb +++ b/lib/l10n/intl_zh.arb @@ -362,7 +362,7 @@ "type": "String", "placeholders": {} }, - "chatBackupDescription": "你的旧消息受恢复密钥保护。请确保你不会丢失它。", + "chatBackupDescription": "你的消息受恢复密钥保护。请确保你不会丢失它。", "@chatBackupDescription": { "type": "String", "placeholders": {} @@ -3504,6 +3504,14 @@ "@stickerPackName": {}, "attribution": "作者", "@attribution": {}, + "skipChatBackup": "跳过聊天备份", + "@skipChatBackup": {}, + "skipChatBackupWarning": "确定吗?不开启聊天备份,如果切换设备可能无法访问消息。", + "@skipChatBackupWarning": {}, + "loadingMessages": "加载消息中", + "@loadingMessages": {}, + "setupChatBackup": "设置聊天备份", + "@setupChatBackup": {}, "writeAMessageLangCodes": "输入 {l1} 或 {l2}...", "requests": "请求", "holdForInfo": "点击并按住获取单词信息。", diff --git a/lib/pages/bootstrap/bootstrap_dialog.dart b/lib/pages/bootstrap/bootstrap_dialog.dart index e1cdca0b9..7d91593c0 100644 --- a/lib/pages/bootstrap/bootstrap_dialog.dart +++ b/lib/pages/bootstrap/bootstrap_dialog.dart @@ -89,8 +89,31 @@ class BootstrapDialogState extends State { _goBackAction(false); } - void _goBackAction(bool success) => - context.canPop() ? context.pop(success) : context.go('/rooms'); + void _goBackAction(bool success) { + if (success) _decryptLastEvents(); + + context.canPop() ? context.pop(success) : context.go('/rooms'); + } + + void _decryptLastEvents() async { + for (final room in client.rooms) { + final event = room.lastEvent; + if (event != null && + event.type == EventTypes.Encrypted && + event.messageType == MessageTypes.BadEncrypted && + event.content['can_request_session'] == true) { + final sessionId = event.content.tryGet('session_id'); + final senderKey = event.content.tryGet('sender_key'); + if (sessionId != null && senderKey != null) { + room.client.encryption?.keyManager.maybeAutoRequest( + room.id, + sessionId, + senderKey, + ); + } + } + } + } void _createBootstrap(bool wipe) async { await client.roomsLoading; @@ -536,7 +559,7 @@ class BootstrapDialogState extends State { ); buttons.add( ElevatedButton( - onPressed: () => _goBackAction(false), + onPressed: () => _goBackAction(true), child: Text(L10n.of(context).close), ), ); diff --git a/pubspec.lock b/pubspec.lock index 2965c5390..19279f988 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -509,7 +509,7 @@ packages: dependency: "direct main" description: name: emoji_picker_flutter - sha256: "9a44c102079891ea5877f78c70f2e3c6e9df7b7fe0a01757d31f1046eeaa016d" + sha256: "984d3e9b9cf3175df9a868ce4a2d9611491e80e5d3b8e2b1e8991a4998972885" url: "https://pub.dev" source: hosted version: "4.3.0" diff --git a/pubspec.yaml b/pubspec.yaml index 0676400ef..362a120c1 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -30,7 +30,7 @@ dependencies: device_info_plus: ^12.2.0 diacritic: ^0.1.6 dynamic_color: ^1.8.1 - emoji_picker_flutter: ^4.3.0 + emoji_picker_flutter: ^4.4.0 file_picker: ^10.3.7 file_selector: ^1.1.0 flutter: