fix: reliable first-message send, QR routing, auto-lock recovery
Fixes reported by testers and found in an app review: - First message right after install no longer fails. Before the app finished registering with the relay, the outgoing message could crash on a null delivery address. The profile field is now optional and the send path throws a clear "still connecting, try again shortly" error while registration completes in the background. - The QR code and share link now appear only once the delivery address is ready. Previously a link generated before the first connection lacked routing, so the other side could not send the first message. The screen now shows a connecting state and reactively swaps in the QR when ready. - Incomplete contact links are rejected on import instead of failing at first send, with a clear prompt to ask for a fresh link. - Auto-lock no longer silences the app: after locking and unlocking, messaging is restarted (it previously stayed dead until app restart). - Group messages are marked failed on a non-per-member send error instead of hanging in the "sending" state forever. - Hardened the relay client against a rare duplicate connection when toggling Tor or locking mid-connect, and fromShareString now rejects a delivery address of the wrong length. - Pin unifiedpush below 6.2.0 to drop the webcrypto dependency (its native framework lacks LC_ENCRYPTION_INFO and blocked the iOS upload). - Skip Android release lint (network dependency check hangs on the build host and adds no value for a Flutter app).
This commit is contained in:
@@ -75,6 +75,8 @@
|
||||
"chatEdited": "изменено",
|
||||
"errorTrustRootChanged": "Trust root релея изменился! Соединение отклонено.",
|
||||
"errorRelayUnavailable": "Релей недоступен (sender certificate)",
|
||||
"errorNotYetRegistered": "Šepot ещё подключается к релею — попробуйте отправить сообщение через пару секунд.",
|
||||
"errorContactLinkIncomplete": "Ссылка неполная — собеседник создал её до подключения. Попросите у него новую ссылку sepot://.",
|
||||
"errorAttachmentTooLarge": "Вложение слишком большое (макс. {maxMb} МБ)",
|
||||
"errorGroupNeedsMember": "В группе должен быть хотя бы 1 участник",
|
||||
"errorGroupMaxMembers": "Максимальное число участников группы — {maxMembers}",
|
||||
@@ -294,6 +296,8 @@
|
||||
"chatListArchive": "Архивировать",
|
||||
"qrShareTitle": "Мой Šepot ID",
|
||||
"qrIdentityNotFound": "Идентичность не найдена",
|
||||
"qrShareConnectingTitle": "Подключение к релею…",
|
||||
"qrShareConnectingBody": "Ваш QR-код и ссылка появятся, как только Šepot подключится в первый раз. Подождите пару секунд.",
|
||||
"commonCopiedToClipboard": "Скопировано в буфер обмена",
|
||||
"qrShareInviteMessage": "Добавьте меня в Šepot!\n\n{shareString}",
|
||||
"commonShare": "Поделиться",
|
||||
|
||||
Reference in New Issue
Block a user