diff --git a/res/lang/de.json b/res/lang/de.json index 546f8b6..50a9890 100644 --- a/res/lang/de.json +++ b/res/lang/de.json @@ -1084,6 +1084,7 @@ "send_amount": "Betrag", "send_amount_details": "BETRAGSDETAILS", "send_amount_upper": "BETRAG", + "send_cannot_send_now": "Senden derzeit nicht möglich — prüfen Sie Verbindung, Synchronisierung und verfügbares Guthaben.", "send_clear_fields": "Alle Formularfelder leeren?", "send_contacts_button": "Aus Kontakten auswählen", "send_copy_error": "Fehler kopieren", diff --git a/res/lang/es.json b/res/lang/es.json index 997c47e..686a2cc 100644 --- a/res/lang/es.json +++ b/res/lang/es.json @@ -1084,6 +1084,7 @@ "send_amount": "Cantidad", "send_amount_details": "DETALLES DE CANTIDAD", "send_amount_upper": "CANTIDAD", + "send_cannot_send_now": "No se puede enviar ahora — revisa la conexión, la sincronización y el saldo disponible.", "send_clear_fields": "¿Limpiar todos los campos del formulario?", "send_contacts_button": "Elegir de contactos", "send_copy_error": "Copiar Error", diff --git a/res/lang/fr.json b/res/lang/fr.json index e69645b..c5bc73b 100644 --- a/res/lang/fr.json +++ b/res/lang/fr.json @@ -1084,6 +1084,7 @@ "send_amount": "Montant", "send_amount_details": "DÉTAILS DU MONTANT", "send_amount_upper": "MONTANT", + "send_cannot_send_now": "Envoi impossible pour le moment — vérifiez la connexion, la synchronisation et le solde disponible.", "send_clear_fields": "Effacer tous les champs du formulaire ?", "send_contacts_button": "Choisir parmi les contacts", "send_copy_error": "Copier l'erreur", diff --git a/res/lang/ja.json b/res/lang/ja.json index 0c2b5f6..f92fbff 100644 --- a/res/lang/ja.json +++ b/res/lang/ja.json @@ -1084,6 +1084,7 @@ "send_amount": "金額", "send_amount_details": "金額の詳細", "send_amount_upper": "金額", + "send_cannot_send_now": "現在送信できません — 接続、同期、利用可能な残高を確認してください。", "send_clear_fields": "すべてのフォームフィールドをクリアしますか?", "send_contacts_button": "連絡先から選択", "send_copy_error": "エラーをコピー", diff --git a/res/lang/ko.json b/res/lang/ko.json index 7bba317..6444b27 100644 --- a/res/lang/ko.json +++ b/res/lang/ko.json @@ -1084,6 +1084,7 @@ "send_amount": "금액", "send_amount_details": "금액 상세", "send_amount_upper": "금액", + "send_cannot_send_now": "지금 보낼 수 없습니다 — 연결, 동기화, 사용 가능한 잔액을 확인하세요.", "send_clear_fields": "모든 양식 필드를 지우시겠습니까?", "send_contacts_button": "연락처에서 선택", "send_copy_error": "오류 복사", diff --git a/res/lang/pt.json b/res/lang/pt.json index 581e1a0..2212f50 100644 --- a/res/lang/pt.json +++ b/res/lang/pt.json @@ -1084,6 +1084,7 @@ "send_amount": "Valor", "send_amount_details": "DETALHES DO VALOR", "send_amount_upper": "VALOR", + "send_cannot_send_now": "Não é possível enviar agora — verifique a conexão, a sincronização e o saldo disponível.", "send_clear_fields": "Limpar todos os campos do formulário?", "send_contacts_button": "Escolher dos contatos", "send_copy_error": "Copiar Erro", diff --git a/res/lang/ru.json b/res/lang/ru.json index 5789543..666194b 100644 --- a/res/lang/ru.json +++ b/res/lang/ru.json @@ -1084,6 +1084,7 @@ "send_amount": "Сумма", "send_amount_details": "ДЕТАЛИ СУММЫ", "send_amount_upper": "СУММА", + "send_cannot_send_now": "Сейчас отправить нельзя — проверьте соединение, синхронизацию и доступный баланс.", "send_clear_fields": "Очистить все поля формы?", "send_contacts_button": "Выбрать из контактов", "send_copy_error": "Копировать ошибку", diff --git a/res/lang/zh.json b/res/lang/zh.json index 9063b9a..7196e03 100644 --- a/res/lang/zh.json +++ b/res/lang/zh.json @@ -1084,6 +1084,7 @@ "send_amount": "金额", "send_amount_details": "金额详情", "send_amount_upper": "金额", + "send_cannot_send_now": "现在无法发送 — 请检查连接、同步和可用余额。", "send_clear_fields": "清除所有表单字段?", "send_contacts_button": "从联系人中选择", "send_copy_error": "复制错误", diff --git a/src/ui/windows/send_tab.cpp b/src/ui/windows/send_tab.cpp index a6d0214..11cc73f 100644 --- a/src/ui/windows/send_tab.cpp +++ b/src/ui/windows/send_tab.cpp @@ -696,7 +696,11 @@ void RenderSendConfirmPopup(App* app) { float popupAvailW = ImGui::GetMainViewport()->Size.x * S.drawElement("tabs.send", "confirm-popup-width-ratio").size; float popupW = std::min(schema::UI().drawElement("tabs.send", "confirm-popup-max-width").size, popupAvailW); float popVs = Layout::vScale(); - if (material::BeginOverlayDialog(TR("confirm_send"), nullptr, popupW, 0.94f)) { + material::OverlayDialogSpec ov; + ov.title = TR("confirm_send"); ov.p_open = nullptr; + ov.style = material::OverlayStyle::BlurFloat; + ov.cardWidth = popupW; ov.idSuffix = "confirmsend"; + if (material::BeginOverlayDialog(ov)) { if (ImGui::IsKeyPressed(ImGuiKey_Escape) && !s_sending) { s_show_confirm = false; @@ -826,7 +830,7 @@ void RenderSendConfirmPopup(App* app) { double liveAvail = GetAvailableBalance(app); if (!app->isConnected() || liveState.sync.syncing || s_amount <= 0 || (s_amount + s_fee) > liveAvail) { - s_tx_status = "Cannot send now — check connection, sync, and available balance."; + s_tx_status = TR("send_cannot_send_now"); s_status_success = false; s_status_timestamp = ImGui::GetTime(); } diff --git a/src/util/i18n.cpp b/src/util/i18n.cpp index 374207e..acc7d10 100644 --- a/src/util/i18n.cpp +++ b/src/util/i18n.cpp @@ -1837,6 +1837,7 @@ void I18n::loadBuiltinEnglish() strings_["send_total"] = "Total"; strings_["send_tx_failed"] = "Transaction failed"; strings_["send_tx_sent"] = "Transaction sent!"; + strings_["send_cannot_send_now"] = "Cannot send now — check connection, sync, and available balance."; strings_["send_tx_success"] = "Transaction sent successfully!"; strings_["send_status_unconfirmed"] = "Transaction status could not be confirmed"; strings_["send_err_needs_rescan"] = "Your wallet's shielded note data is out of date with the blockchain (this happens after a bootstrap or reindex). Run a full rescan via Settings -> Rescan Blockchain and let it finish completely, then try sending again.";