* feat: Support Send templates with multiple recipients
* feat: use only first name for template display, and sum total amount
* fix: amounts being wiped
* feat: make send template card buttons function like send card
* feat: replace amount -> name for template name
* fix: template name
* feat: Replace trash and swipe with edit icons on node list item
- replaces yellow Test button with red Delete node button with confirmation on the edit node page
* feat: make node indicator icons bigger (figma comment)
* feat: Replace trash and swipe with edit icons on wallet list page and create wallet_edit_page.dart
* fix: make delete buttons red
* fix: make wallet name wrap when it is too long
* refactor: improve logic & fix observer not refreshing
* fix: add string
* feat: remove the confirmation pop-up for switching between wallets
- which was another item on the jira issue
* fix: remove slideable widgets from node list
* feat: add edit button to currently selected node & disable deleting if selected
* fix: rename wallet also renames to new wallet files
* feat: make sure edits can't overlap existing names
* fix: improve rename flow, fix electrum transactions refresh & add delete old logic
* fix: also fix rename for monero & haven
* refactor: fix identations
* refactor: dont declare the current wallet twice
* refactor: missing newWalletInfo.id
* fix: dont unnecessarily load the current wallet
* fix: remove unnecessary reaction
* feat: make save button disabled until the text is changed
* feat: make walletEditViewModel and make state useful for pending actions
* fix: add back reaction for desktop flow
* - Remove un-necessary code
- Format Edit page
---------
Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
* fix: make welcome screen scrollable
* fix: make pre seed page scrollable
* fix: make wallet seed page scrollable
* refactor: remove unnecessary and stacked widgets and remove IntrinsicHeight & LayoutBuilder used for SingleChildScrollView, and replace it for CustomScrollView on welcome_page.dart
* refactor: remove unnecessary Flexible widgets and remove IntrinsicHeight & LayoutBuilder for SingleChildScrollView and replace it for CustomScrollView on pre_seed_page.dart
* refactor: remove unnecessary and stacked widgets and remove IntrinsicHeight & LayoutBuilder used for SingleChildScrollView, and replace it for CustomScrollView on wallet_seed_page.dart
* fix: revert welcome_page.dart unwanted changes
* fix: image expands more than needed
* fix: fix image expands more than needed while testing on Linux build
* Fix Scrolling behavior on Desktop and Overflow on Mobile
---------
Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
* feat(Talkback): make add contact button labeled
* feat(Talkback): add labeled semantics to cakepay buttons
- Use BasePage's default labeled back button instead of override
- Add filter button semantics
- Add ExcludeSemantics to search icon because it was messing with the whole search input box semantics and making it sound like an unlabeled button
- Add profile button label
* feat(Talkback): add labeled semantics to send page buttons
- Add semantics label to Paste button
- Add semantics label to Scan button
- Add semantics label to Address Book button
* fix: use i18n strings instead of hardcoded semantics labels and add missing 'profile' string
* fix: also add localization to back button on base page
* fix(Talkback): add the rest of localized strings & add missing close string
* fix: pt strings
* feat: add correct strings using translate script
* Update strings_yo.arb [skip ci]
---------
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
* refactor: Improve Monero/Haven account selection picker
* feat: If the amount would be wrapped, instead display it under the account name
* fix: balance str
* refactor: add theme changes
* refactor: remove duplicate observer
* - Replace payfura widget with direct browser link
- Remove Payfura widget class as it is duplicate for the web view page
* Revert removing swipe to delete wallet feature
* Pump app versions and update release notes
* feat: replace "swipe to delete" wallet action with a delete / trash icon on the right
* fix: remove InkWell and _actionPane actions
* feat: add a bit of padding from the end
* feat: allow reversing displayMode by long pressing on transactions page
* feat: allow reversing displayMode by long pressing on send page
* revert: revert transaction_list_item.dart but keep BalanceDisplayMode get displayMode => balanceViewModel.displayMode
* Fix null error on back navigation after pushReplacementNamed
* Fix null error on back navigation after pushReplacementNamed
* Close all visible keyboard for page navigation context
* Fix issue with market place navigation
* Remove focus before back navigation
* Fix background color
* Fix background color
* Fix background color
* chore: Setup
* hotfix: null check operator used when totp arguments are null causing issues
* hotfix: null check operator used when totp arguments are null causing issues
* hotfix: null check operator used when totp arguments are null causing issues
* hotfix: null check operator used when totp arguments are null causing issues
* fix: Review changes
---------
Co-authored-by: David Adegoke <blazebrain@Davids-MacBook-Pro.local>
* refactor(Theme): migrate accentColor
- based on the specs at https://docs.flutter.dev/release/breaking-changes/theme-data-accent-properties#migration-guide.
* refactor(Theme): all deprecated TextTheme styles
* refactor(Theme): deprecated backgroundColor for colorScheme.background
* refactor(Theme): deprecated buttonColor to use TextTheme backgroundColor instead
* refactor(Theme): deprecated isAlwaysShown to use thumbVisibility instead
* cancel Anonpay updateInvoice timer
* Remove un-needed dependency injection of anonpayDetailsViewModel since it can be accessed via the parent class [skip ci]
---------
Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
* Add hausa language
* Add hausa language
* Add cupertino delegete
* Add flag to git
* - Fix hausa_intl.dart issue
- Fix menu items not updating properly
- Fix Nav bar issue
---------
Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
* feat: Proper Bitcoin address validation in exchange screen
* fix: use custom validation in addition to RegEx to make sure all address cases are validated
- for cases like P2SH addresses starting with a 3, which are not validated by bitcoin_flutter functions
* feat: add bitcoin_flutter to root project
* refactor: improve conditional isValid return chain
* feat: enhance contact page address validation
- only shows address box when a currency is selected, to prevent the selected value from being null
- changes TextValidator() for the new AddressValidator()
* fix: use -1 for initial selectedAtIndex, since there is no currency yet selected
* feat: Proper Bitcoin address validation in exchange screen
* fix: use custom validation in addition to RegEx to make sure all address cases are validated
- for cases like P2SH addresses starting with a 3, which are not validated by bitcoin_flutter functions
* feat: add bitcoin_flutter to root project
* refactor: improve conditional isValid return chain
* feat: In the privacy settings screen, add 2 options to Enable/Disable Buy and Sell actions
* fix: add strings
* fix: add the rest of the strings
* fix: disable instead of hide buy & sell buttons
* fix: use disableSell
* fix: main actions able to be onTapped even when disabled
* Fix Concurrent modification exception
* Fix minor UI issues
* Change onramper crypto asset name for Litcoin
* Fix secure storage issue, fetching password/PIN with null
* - Fix Navigation issue while keyboard is displaying
- Remove deprecated screen
* Take currency From/To info from our trade not the returned one
* Fix anon pay fields UI
* Fix Anonpay border/icons UI
* Add extra padding in QR image as a safe layer
* Generalize ignored connection error
* Remove Bio Auth option from desktop
* Fix some Transaction info not parsed correctly
* feat: use common modal widget for repeated picker logic and display
* refactor: rename widget
* refactor: clear wrapper logic from picker widget and move title to hasTitle
* Minor code readability enhancements [skip ci]
---------
Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
* add exception for range error
* add app links for wallets
* Update reference to qr.flutter clone
* QrImage update
* Update fullscreen_qr_page.dart
* Add automatic version for wallet QR
---------
Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
* Show amount received for each account
* Enable litcoin send all
* disable litcoin send all
* Indent code
* Fix large font resolution for account title
* feat: Add missing title on wallet_list_page.dart
* feat: add bool lightTitleColor value when theme needs lighter color title, instead of hardcoding to Colors.white
- Light color theme taken from Share button from receive page
* fix: revert changes & use currentTheme.type to use proper theme style
* fix: use share button color logic also on overriden leading Widget on address_page
* refactor: remove unnecessary titleColor
* Check if context is still mounted or not before showing popup
* - Refactor Restore route flow
- Fix Monero.com restore from QR
- Remove deprecated restore classes
- Update Monero.com app version and notes
* Update Macos version and release notes
* Fixate android plugin versions as Flutter published new fail packages version
* Revert desktop changes as it's not supported yet to scan QR code on Desktop [skip ci]
* Revert macos version update [skip ci]
* CW-262-Better-handle-user-exchange-amount-below-minimum-or-maximum-trade-size
* fix: App should compute conversion even if it's not within the limits
* fix(#536): add talkback support to missing main and common elements
* fix(#564): add talkback support for slidable node items & addresses page
* fix: add missing delete button from add pin widget
* Added a temporary workaround for empty receive addresses
* Fix Typo in PR template
* Make existing node private [skip ci]
* Fix transactions page background color [skip ci]
* Update ios version for internal test build [skip ci]
* update macos version for internal test build [skip ci]
* fix: Currency picker UI when keyboard is showing
* refactor: move picker logic into the common Picker widget
- CurrencyPicker uses the common Picker widget in grid mode
- SeedLanguagePicker uses the common Picker widget in grid mode
- Added logic for keyboard showing UI into Picker widget
- Added `softWrap: true` to the item text, so it doesn't overflow
* fix: remove subPickerItemsList
* fix: add final
* fix: move function out of initState()
* fix: keep build functions separate to remove boolean comparisons
* fix: remove onItemSelected from already selected item
* fix: change Expanded for Flexible widget
* Add build scripts for macOS. Add macos for cw_monero plugin. Add macos proj to the application.
* - Update Flutter secure storage to work with macos
- Enable uni links only on Mobile
- Update devcelocale to work with macos
* Add network access to mac
* Change Dashboard view on desktop size screens
* Add on Tap to desktop_action_button.dart
Remove unused functions
* Fix arch match for monero lib for darwin x86_64 -> x86-64
* Add Bundle ID in entitlements files through app config script
* Update deployment target to 10.13
* Revert back to Cake fork for secure storage
* Revert back to Cake fork for secure storage
* Revert mac os version
* Revert mac os version
* Add platform channel specific code for mac os
* Add desktop sidebar
* [skip ci] Add desktop sidebar
* [skip ci] Add desktop sidebar
* - Remove legacy migration from macos
- Remove wake lock native code and just use the ready made package
* Remove wake lock native code and just use the ready made package
* Remove unstoppable domain from macos since it's not supported
* Temporarily fetch unstoppable domains only on mobile
* refactor desktop settings sidebar
* Ignore increasing brightness for non-mobile platforms
* Add Wallet selection dropdown to dashboard desktop view
* Generate MacOS icons
* localize settings
* fix dashboard sidebar and responsive utils
* Change Mac os app name and bundle id
* Fix exchange page as fullScreenDialog
* Remove constants
* - Refactor onRamper to have a single point of modification
- Enlarge initial app size
- update Flutter and Packages
* Add pubspec.lock and Podfile.lock to gitignore
* Remove Podfile.lock from cache
* Fix bug on sidebar reset
* Fix issues from code review
* [skip ci] reformat desktop dashboard
* [skip ci] reformat desktop dashboard
* Revert removing .lock files
* Revert changes in .gitignore
* [skip ci] remove .project changes
* [skip ci] remove .project changes
* Separate Dashboard desktop view from mobile view
* constraint images and pincoded box
* Remove drawer from mac os
* - Listen to keyboard events in PIN screen
- Fix PIN buttons style
* Fix desktop nav bar UI
* Add Marketplace to dashboard view
* Update trailing icon to open transaction page
* Update widget contraints
* Add empty trailing to center page title on desktop
* Refresh desktop dashboard actions on wallet change
* Change ionia welcome page animation
* Fix Constrained width screens UI
* Refactor sidebar state management
* remove empty line
* Add max width constrain to Welcome page
* Change Exchange page UI depending on platform
* - Change design/paddings for Send page on desktop view
- Make AddTemplateButton instead of having it duplicated in send/exchange
* Fix Desktop dashboard actions background color
* Constrain primary Buttons width
* Make side menu items toggle back to dashboard
* Add padding to support page
* Add width constraints to desktop dashboard
* Fix UI issues, paddings and alignments
* Rename misleading variable
Change initial mac window size
* Fix wallet create in settings
* remove unnecessary code
* remove unnecessary code
* Remove duplicated constrains
* - Use close icon on main screens
- Minor UI fixes
* fix pageview controller reset index
* Add create and restore wallet options to dropdown menu
* Fix desktop background color and address book view issues
* Fix input field
* Add onFieldSubmitted to allow "enter" button interaction
* Fix issue from code review
* Fix Popup width constraint and add focus orders
* Fix variable name
* Fix issues from code review
* refactor dropdown items
* Fix alignment in create and restore wallet screens
* Fix dropdown change state bug
Hide scanner for desktop
* remove space
* override navbar with desktopnavbar
* Remove autofocus
* remove unused code
* Fix ionia input field alignment
* Replace removed code
* Add app lock feature on mac
* Add assertion to avoid null
* Add Nano currency image
* Enable adding contact from send screen
* Fix UI issues
Add missing translation
* pop only PIN screen after successful auth
* Add back wallet settings page to desktop settings actions
* Fix Navigation animation for settings screens
* Fixate MobX version to fix restore issue
* CW-324 Refresh current settings page if wallet changed (#811)
* Fix refresh current settings page if wallet changed
* Fix refresh current settings page if wallet changed
* Refresh Wallet Seeds/Keys List upon wallet change
---------
Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
* Remove navigation workaround for duplicate key, and fix the issue by handling creation/disposing of global key (#840)
* Cw 323 add wallet list to settings on mac (#843)
* Remove navigation workaround for duplicate key, and fix the issue by handling creation/disposing of global key
* - Register Wallet List as singleton in Desktop to be modify the same instance from settings and dropdown
- General Fixes and Enhancements
* Fix Changing/Restoring wallet from settings
* Fix Create wallet not showing seeds screens if launched from settings
* Add max width constraint for Alerts
* - Add Desktop API keys
- Fix Change back up password issue
- Fix Popup width
* Sync Mac with latest main updates
* Swap Transactions icon with lock icon
* Save backup file locally on desktop
* Sync with latest main updates
* Fix Navigation issues with anonpay
* Update macos build version
* Remove deprecated custom wake lock code for Android
* Remove Legacy CryptoSwift package from MacOS
* - Refactor Payfura page code
- Add OnRamper new configs to onramper_buy_provider.dart
- Fix Conflicts with main
* Updated device locale package
* Update android tools
* Revert changes and update only gradle version
* Downgrade android tools version
* Update gradle version
* Update package/gradle/plugin version
* - Fixate device locale version
- Downgrade gradle version
* Update kotlin version
* Update gradle version
* Trial for a custom fork from devicelocale
* Fixate shared preferences package version
* Revert gradle version
* Revert kotlin version
* Downgrade gradle version
* Downgrade gradle version
* Repair cache and clean before build
* Fixate flutter version
* update google services version
* revert google services version
* Force shared pref android version
* Override shared prefs android package version
* Override shared prefs android package [skip ci]
---------
Co-authored-by: M <m@cakewallet.com>
Co-authored-by: Godwin Asuquo <godilite@gmail.com>
Co-authored-by: Godwin Asuquo <41484542+godilite@users.noreply.github.com>
* Add exception handler to anypay api response failure
* Check if context is still mounted before fetching iPad position
* Add user connection issue to ignored errors
* Wrap launchURL in empty try catch to avoid package un-needed exceptions
* Add user network connection issue to ignored errors
* Check current nodes on each app start
* Add user network connection error to ignored errors
* Fix sharing files issue on iOS
* wallet QR code on Wallet/Seed screen
* fix restore height for new wallet
* fix height parameter
* fix currenHeight and HeightByDate for haven
* update configure.dart
* fix coments
* minor fix
Adds:
AED, ARS, BDT, CLP, COP, EGP, GHS, GTQ, IRR, MAD, NGN, PKR, SAR, THB, TRY, UAH, VND
This may mess things up because of TRY, so I'll test the PR and make changes as needed
This way we don't need to translate and create different strings for the "on", which will appear odd in languages other than English. I also added it for FIO and OpenAlias.
Further, I removed the 1 instance of openalias_alert_title. It can be removed from the localization file if/when it's convenient.
I did NOT change anything for Unstoppable, because that appeared to touch a dependency. That has its own custom (but similar) text response
bttc mapped to trx, so changed the label instead of changing the mapping
maticpoly was mislabeled on changenow
maticpoly and matic were mislabeled on simpleswap
- Revert disabling UI error reporting as it will also disable some errors from the view models
- Fix warnings in node list row (potential nullability issue fix)