diff --git a/cw_bitcoin/lib/electrum_wallet_addresses.dart b/cw_bitcoin/lib/electrum_wallet_addresses.dart index ac2397561..c43d4988a 100644 --- a/cw_bitcoin/lib/electrum_wallet_addresses.dart +++ b/cw_bitcoin/lib/electrum_wallet_addresses.dart @@ -241,6 +241,8 @@ abstract class ElectrumWalletAddressesBase extends WalletAddresses with Store { final index = _addresses.indexOf(addressRecord); _addresses.remove(addressRecord); _addresses.insert(index, addressRecord); + + updateAddressesByMatch(); } @action diff --git a/lib/src/screens/receive/widgets/address_cell.dart b/lib/src/screens/receive/widgets/address_cell.dart index a07456284..9385a4df8 100644 --- a/lib/src/screens/receive/widgets/address_cell.dart +++ b/lib/src/screens/receive/widgets/address_cell.dart @@ -1,5 +1,6 @@ import 'package:auto_size_text/auto_size_text.dart'; import 'package:cake_wallet/generated/i18n.dart'; +import 'package:cake_wallet/utils/responsive_layout_util.dart'; import 'package:cake_wallet/view_model/wallet_address_list/wallet_address_list_item.dart'; import 'package:flutter/material.dart'; import 'package:flutter_slidable/flutter_slidable.dart'; @@ -81,41 +82,45 @@ class AddressCell extends StatelessWidget { child: Column( children: [ Row( - mainAxisAlignment: MainAxisAlignment.center, + mainAxisAlignment: name.isNotEmpty ? MainAxisAlignment.spaceBetween : MainAxisAlignment.center, mainAxisSize: MainAxisSize.max, children: [ - if (isChange) - Padding( - padding: const EdgeInsets.only(right: 8.0), - child: Container( - height: 20, - padding: EdgeInsets.all(4), - decoration: BoxDecoration( - borderRadius: BorderRadius.all(Radius.circular(8.5)), - color: textColor), - alignment: Alignment.center, - child: Text( - S.of(context).unspent_change, - style: TextStyle( - color: backgroundColor, - fontSize: 10, - fontWeight: FontWeight.w600, + Row( + children: [ + if (isChange) + Padding( + padding: const EdgeInsets.only(right: 8.0), + child: Container( + height: 20, + padding: EdgeInsets.all(4), + decoration: BoxDecoration( + borderRadius: BorderRadius.all(Radius.circular(8.5)), + color: textColor), + alignment: Alignment.center, + child: Text( + S.of(context).unspent_change, + style: TextStyle( + color: backgroundColor, + fontSize: 10, + fontWeight: FontWeight.w600, + ), + ), ), ), - ), - ), - if (name.isNotEmpty) - Text( - '$name - ', - style: TextStyle( - fontSize: 14, - fontWeight: FontWeight.w600, - color: textColor, - ), - ), + if (name.isNotEmpty) + Text( + '$name', + style: TextStyle( + fontSize: 14, + fontWeight: FontWeight.w600, + color: textColor, + ), + ), + ], + ), Flexible( child: AutoSizeText( - formattedAddress, + responsiveLayoutUtil.shouldRenderTabletUI ? address : formattedAddress, maxLines: 1, overflow: TextOverflow.ellipsis, style: TextStyle( diff --git a/lib/src/screens/settings/privacy_page.dart b/lib/src/screens/settings/privacy_page.dart index 444457d1c..7e7f3589b 100644 --- a/lib/src/screens/settings/privacy_page.dart +++ b/lib/src/screens/settings/privacy_page.dart @@ -55,7 +55,9 @@ class PrivacyPage extends BasePage { }), if (_privacySettingsViewModel.isAutoGenerateSubaddressesVisible) SettingsSwitcherCell( - title: S.current.auto_generate_subaddresses, + title: _privacySettingsViewModel.isMoneroWallet + ? S.current.auto_generate_subaddresses + : S.current.auto_generate_addresses, value: _privacySettingsViewModel.isAutoGenerateSubaddressesEnabled, onValueChange: (BuildContext _, bool value) { _privacySettingsViewModel.setAutoGenerateSubaddresses(value); diff --git a/lib/utils/responsive_layout_util.dart b/lib/utils/responsive_layout_util.dart index 428ab61cc..86a4a3776 100644 --- a/lib/utils/responsive_layout_util.dart +++ b/lib/utils/responsive_layout_util.dart @@ -46,6 +46,10 @@ abstract class ResponsiveLayoutUtilBase with Store, WidgetsBindingObserver { (orientation == Orientation.portrait && screenWidth < screenHeight) || (orientation == Orientation.landscape && screenWidth < screenHeight); } + + bool get shouldRenderTabletUI { + return screenWidth > _kMobileThreshold && screenWidth < kDesktopMaxDashBoardWidthConstraint; + } } _ResponsiveLayoutUtil _singletonResponsiveLayoutUtil = _ResponsiveLayoutUtil(); diff --git a/lib/view_model/settings/privacy_settings_view_model.dart b/lib/view_model/settings/privacy_settings_view_model.dart index 831a45357..9ebbd92bb 100644 --- a/lib/view_model/settings/privacy_settings_view_model.dart +++ b/lib/view_model/settings/privacy_settings_view_model.dart @@ -44,6 +44,8 @@ abstract class PrivacySettingsViewModelBase with Store { _wallet.type == WalletType.litecoin || _wallet.type == WalletType.bitcoinCash; + bool get isMoneroWallet => _wallet.type == WalletType.monero; + @computed bool get shouldSaveRecipientAddress => _settingsStore.shouldSaveRecipientAddress; diff --git a/res/values/strings_ar.arb b/res/values/strings_ar.arb index d0f1a2043..6b3aae14e 100644 --- a/res/values/strings_ar.arb +++ b/res/values/strings_ar.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "PIN خطأ", "authenticated": "تم المصادقة", "authentication": "المصادقة", + "auto_generate_addresses": "تلقائي توليد العناوين", "auto_generate_subaddresses": "تلقائي توليد subddresses", "automatic": "تلقائي", "available_balance": "الرصيد المتوفر", diff --git a/res/values/strings_bg.arb b/res/values/strings_bg.arb index 249952d75..30d9945d1 100644 --- a/res/values/strings_bg.arb +++ b/res/values/strings_bg.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "Грешен PIN", "authenticated": "Удостоверено", "authentication": "Удостоверяване", + "auto_generate_addresses": "Автоматично генериране на адреси", "auto_generate_subaddresses": "Автоматично генериране на подадреси", "automatic": "Автоматично", "available_balance": "Наличен баланс", diff --git a/res/values/strings_cs.arb b/res/values/strings_cs.arb index 9b3b06ffd..577cd9813 100644 --- a/res/values/strings_cs.arb +++ b/res/values/strings_cs.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "Nesprávný PIN", "authenticated": "Ověřeno", "authentication": "Ověřování", + "auto_generate_addresses": "Automatické generování adres", "auto_generate_subaddresses": "Automaticky generovat podadresy", "automatic": "Automatický", "available_balance": "Dostupný zůstatek", diff --git a/res/values/strings_de.arb b/res/values/strings_de.arb index 8a914628f..f0ba70c84 100644 --- a/res/values/strings_de.arb +++ b/res/values/strings_de.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "Falsche PIN", "authenticated": "Authentifiziert", "authentication": "Authentifizierung", + "auto_generate_addresses": "Automatisch generieren Adressen", "auto_generate_subaddresses": "Unteradressen automatisch generieren", "automatic": "Automatisch", "available_balance": "Verfügbares Guthaben", @@ -422,8 +423,8 @@ "placeholder_transactions": "Ihre Transaktionen werden hier angezeigt", "please_fill_totp": "Bitte geben Sie den 8-stelligen Code ein, der auf Ihrem anderen Gerät vorhanden ist", "please_make_selection": "Bitte treffen Sie unten eine Auswahl zum Erstellen oder Wiederherstellen Ihrer Wallet.", - "please_reference_document": "Bitte verweisen Sie auf die folgenden Dokumente, um weitere Informationen zu erhalten.", "Please_reference_document": "Weitere Informationen finden Sie in den Dokumenten unten.", + "please_reference_document": "Bitte verweisen Sie auf die folgenden Dokumente, um weitere Informationen zu erhalten.", "please_select": "Bitte auswählen:", "please_select_backup_file": "Bitte wählen Sie die Sicherungsdatei und geben Sie das Sicherungskennwort ein.", "please_try_to_connect_to_another_node": "Bitte versuchen Sie, sich mit einem anderen Knoten zu verbinden", diff --git a/res/values/strings_en.arb b/res/values/strings_en.arb index 3fe9474c5..f8bd6b3a2 100644 --- a/res/values/strings_en.arb +++ b/res/values/strings_en.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "Wrong PIN", "authenticated": "Authenticated", "authentication": "Authentication", + "auto_generate_addresses": "Auto generate addresses", "auto_generate_subaddresses": "Auto generate subaddresses", "automatic": "Automatic", "available_balance": "Available Balance", diff --git a/res/values/strings_es.arb b/res/values/strings_es.arb index 47b11bc48..cf70a2c2d 100644 --- a/res/values/strings_es.arb +++ b/res/values/strings_es.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "Contraseña PIN", "authenticated": "Autenticados", "authentication": "Autenticación", + "auto_generate_addresses": "Auto Generar direcciones", "auto_generate_subaddresses": "Generar subdirecciones automáticamente", "automatic": "Automático", "available_balance": "Balance disponible", diff --git a/res/values/strings_fr.arb b/res/values/strings_fr.arb index edae901a3..d21e21dae 100644 --- a/res/values/strings_fr.arb +++ b/res/values/strings_fr.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "Mauvais code PIN", "authenticated": "Authentifié", "authentication": "Authentification", + "auto_generate_addresses": "Adresses de génération automatique", "auto_generate_subaddresses": "Générer automatiquement des sous-adresses", "automatic": "Automatique", "available_balance": "Solde Disponible", diff --git a/res/values/strings_ha.arb b/res/values/strings_ha.arb index c7174d23f..35a6be1b8 100644 --- a/res/values/strings_ha.arb +++ b/res/values/strings_ha.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "PIN na gaskiya", "authenticated": "Ingantacce", "authentication": "Tabbatarwa", + "auto_generate_addresses": "Adireshin Auto", "auto_generate_subaddresses": "Saɓaƙa subaddresses ta kai tsaye", "automatic": "Na atomatik", "available_balance": "KUDI", diff --git a/res/values/strings_hi.arb b/res/values/strings_hi.arb index 4ee9bd4f8..a6bcab4ab 100644 --- a/res/values/strings_hi.arb +++ b/res/values/strings_hi.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "गलत पिन", "authenticated": "प्रमाणीकृत", "authentication": "प्रमाणीकरण", + "auto_generate_addresses": "ऑटो उत्पन्न पते", "auto_generate_subaddresses": "स्वचालित रूप से उप-पते उत्पन्न करें", "automatic": "स्वचालित", "available_balance": "उपलब्ध शेष राशि", diff --git a/res/values/strings_hr.arb b/res/values/strings_hr.arb index a4de56dcf..e01857a94 100644 --- a/res/values/strings_hr.arb +++ b/res/values/strings_hr.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "Pogrešan PIN", "authenticated": "Autentificiran", "authentication": "Autentifikacija", + "auto_generate_addresses": "Automatsko generiranje adresa", "auto_generate_subaddresses": "Automatski generirajte podadrese", "automatic": "Automatski", "available_balance": "Raspoloživ iznos", diff --git a/res/values/strings_id.arb b/res/values/strings_id.arb index 411daf9e0..c487a6750 100644 --- a/res/values/strings_id.arb +++ b/res/values/strings_id.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "PIN yang salah", "authenticated": "Terotentikasi", "authentication": "Otentikasi", + "auto_generate_addresses": "Auto menghasilkan alamat", "auto_generate_subaddresses": "Menghasilkan subalamat secara otomatis", "automatic": "Otomatis", "available_balance": "Saldo Tersedia", diff --git a/res/values/strings_it.arb b/res/values/strings_it.arb index 7cf298cae..0af315426 100644 --- a/res/values/strings_it.arb +++ b/res/values/strings_it.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "PIN non corretto", "authenticated": "Autenticato", "authentication": "Autenticazione", + "auto_generate_addresses": "Auto Genera indirizzi", "auto_generate_subaddresses": "Genera automaticamente sottindirizzi", "automatic": "Automatico", "available_balance": "Saldo Disponibile", diff --git a/res/values/strings_ja.arb b/res/values/strings_ja.arb index 42377fa85..a0b3973b2 100644 --- a/res/values/strings_ja.arb +++ b/res/values/strings_ja.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "間違ったPIN", "authenticated": "認証済み", "authentication": "認証", + "auto_generate_addresses": "Autoはアドレスを生成します", "auto_generate_subaddresses": "Autoはサブアドレスを生成します", "automatic": "自動", "available_balance": "利用可能残高", diff --git a/res/values/strings_ko.arb b/res/values/strings_ko.arb index c67d531ce..98bc40e77 100644 --- a/res/values/strings_ko.arb +++ b/res/values/strings_ko.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "잘못된 PIN", "authenticated": "인증", "authentication": "입증", + "auto_generate_addresses": "자동 생성 주소", "auto_generate_subaddresses": "자동 생성 서브 아드 드레스", "automatic": "자동적 인", "available_balance": "사용 가능한 잔액", diff --git a/res/values/strings_my.arb b/res/values/strings_my.arb index e373eefc0..8d846f3d6 100644 --- a/res/values/strings_my.arb +++ b/res/values/strings_my.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "ပင်နံပါတ် မှားနေသည်။", "authenticated": "အစစ်အမှန်", "authentication": "စစ်ဆေးခြင်း", + "auto_generate_addresses": "Auto Generate လိပ်စာများ", "auto_generate_subaddresses": "အော်တို Generate Subaddresses", "automatic": "အလိုအလျောက်", "available_balance": "လက်ကျန်ငွေ ရရှိနိုင်", diff --git a/res/values/strings_nl.arb b/res/values/strings_nl.arb index 1fc85a28b..8b3edee4b 100644 --- a/res/values/strings_nl.arb +++ b/res/values/strings_nl.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "Incorrect PIN", "authenticated": "Authenticated", "authentication": "Authenticatie", + "auto_generate_addresses": "Auto -genereer adressen", "auto_generate_subaddresses": "Automatisch subadressen genereren", "automatic": "automatisch", "available_balance": "Beschikbaar saldo", diff --git a/res/values/strings_pl.arb b/res/values/strings_pl.arb index f279dbaa7..93dafa352 100644 --- a/res/values/strings_pl.arb +++ b/res/values/strings_pl.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "Niepoprawny PIN", "authenticated": "Uwierzytelniony", "authentication": "Uwierzytelnianie", + "auto_generate_addresses": "Auto generują adresy", "auto_generate_subaddresses": "Automatycznie generuj podadresy", "automatic": "Automatyczny", "available_balance": "Dostępne środki", diff --git a/res/values/strings_pt.arb b/res/values/strings_pt.arb index ba3acae88..ae07bb177 100644 --- a/res/values/strings_pt.arb +++ b/res/values/strings_pt.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "PIN incorreto", "authenticated": "Autenticado", "authentication": "Autenticação", + "auto_generate_addresses": "Endereços gerados automaticamente", "auto_generate_subaddresses": "Gerar subendereços automaticamente", "automatic": "Automático", "available_balance": "Saldo disponível", diff --git a/res/values/strings_ru.arb b/res/values/strings_ru.arb index b24f940dd..5e75631c6 100644 --- a/res/values/strings_ru.arb +++ b/res/values/strings_ru.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "Некорректный PIN", "authenticated": "Аутентифицировано", "authentication": "Аутентификация", + "auto_generate_addresses": "Авто генерируйте адреса", "auto_generate_subaddresses": "Авто генерируйте Subaddresses", "automatic": "автоматический", "available_balance": "Доступный баланс", diff --git a/res/values/strings_th.arb b/res/values/strings_th.arb index 0795faf2e..c8183c031 100644 --- a/res/values/strings_th.arb +++ b/res/values/strings_th.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "รหัสผ่านไม่ถูกต้อง", "authenticated": "ได้รับการยืนยันสิทธิ์", "authentication": "การยืนยันสิทธิ์", + "auto_generate_addresses": "สร้างที่อยู่อัตโนมัติ", "auto_generate_subaddresses": "Auto สร้าง subaddresses", "automatic": "อัตโนมัติ", "available_balance": "ยอดคงเหลือที่ใช้งานได้", diff --git a/res/values/strings_tl.arb b/res/values/strings_tl.arb index 91ca5a548..def38820c 100644 --- a/res/values/strings_tl.arb +++ b/res/values/strings_tl.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "Maling pin", "authenticated": "Napatunayan", "authentication": "Pagpapatunay", + "auto_generate_addresses": "Auto bumuo ng mga address", "auto_generate_subaddresses": "Ang Auto ay bumubuo ng mga subaddresses", "automatic": "Awtomatiko", "available_balance": "Magagamit na balanse", diff --git a/res/values/strings_tr.arb b/res/values/strings_tr.arb index 784ebfb7e..111ff91f4 100644 --- a/res/values/strings_tr.arb +++ b/res/values/strings_tr.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "Hatalı PIN", "authenticated": "Doğrulandı", "authentication": "Doğrulama", + "auto_generate_addresses": "Otomatik Adres Oluşturma", "auto_generate_subaddresses": "Alt adresleri otomatik olarak oluştur", "automatic": "Otomatik", "available_balance": "Kullanılabilir Bakiye", diff --git a/res/values/strings_uk.arb b/res/values/strings_uk.arb index 65a1f5c96..a0000418d 100644 --- a/res/values/strings_uk.arb +++ b/res/values/strings_uk.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "Некоректний PIN", "authenticated": "Аутентифіковано", "authentication": "Аутентифікація", + "auto_generate_addresses": "Авто генерувати адреси", "auto_generate_subaddresses": "Автоматично генерувати підадреси", "automatic": "Автоматичний", "available_balance": "Доступний баланс", diff --git a/res/values/strings_ur.arb b/res/values/strings_ur.arb index 6c768daa8..a7d4b896d 100644 --- a/res/values/strings_ur.arb +++ b/res/values/strings_ur.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "غلط PIN", "authenticated": "تصدیق شدہ", "authentication": "تصدیق", + "auto_generate_addresses": "آٹو پیدا کرنے والے پتے", "auto_generate_subaddresses": "آٹو سب ایڈریس تیار کرتا ہے", "automatic": "خودکار", "available_balance": "دستیاب بیلنس", diff --git a/res/values/strings_yo.arb b/res/values/strings_yo.arb index b5f2d69a3..9ac033917 100644 --- a/res/values/strings_yo.arb +++ b/res/values/strings_yo.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "Òǹkà ìdánimọ̀ àdáni kọ́ ni èyí", "authenticated": "A ti jẹ́rìísí yín", "authentication": "Ìfẹ̀rílàdí", + "auto_generate_addresses": "Awọn adirẹsi ṣe agbekalẹ awọn adirẹsi", "auto_generate_subaddresses": "Aṣiṣe Ibi-Afọwọkọ", "automatic": "Ó máa ń ṣàdédé", "available_balance": "Ìyókù owó tó wà níbẹ̀", diff --git a/res/values/strings_zh.arb b/res/values/strings_zh.arb index e9a6b63f2..26bb1b286 100644 --- a/res/values/strings_zh.arb +++ b/res/values/strings_zh.arb @@ -59,6 +59,7 @@ "auth_store_incorrect_password": "PIN码错误", "authenticated": "已认证", "authentication": "认证方式", + "auto_generate_addresses": "自动生成地址", "auto_generate_subaddresses": "自动生成子辅助", "automatic": "自动的", "available_balance": "可用余额",