Commit graph

1607 commits

Author SHA1 Message Date
OmarHatem
5ba313cb13 Fix Conflicts with main 2023-05-26 16:43:30 +03:00
OmarHatem
53d3db5340 Merge branch 'main' of https://github.com/cake-tech/cake_wallet into linux/password-direct-input
 Conflicts:
	cw_core/lib/wallet_base.dart
	lib/core/auth_service.dart
	lib/di.dart
	lib/main.dart
	lib/router.dart
	lib/routes.dart
	lib/src/screens/dashboard/desktop_widgets/desktop_wallet_selection_dropdown.dart
	lib/src/screens/restore/restore_wallet_from_seed_page.dart
	lib/src/screens/settings/security_backup_page.dart
	lib/src/screens/wallet_list/wallet_list_page.dart
	lib/store/settings_store.dart
	lib/view_model/wallet_creation_vm.dart
	macos/Podfile.lock
	pubspec_base.yaml
	res/values/strings_bg.arb
	res/values/strings_en.arb
	res/values/strings_id.arb
	res/values/strings_my.arb
	res/values/strings_nl.arb
	res/values/strings_pt.arb
	res/values/strings_ru.arb
	res/values/strings_th.arb
	res/values/strings_tr.arb
	res/values/strings_uk.arb
	res/values/strings_ur.arb
	res/values/strings_zh.arb
2023-05-26 15:09:55 +03:00
Godwin Asuquo
75c65d67bf
CW-404 Add yoruba language (#946)
* Add Yoruba translation

* Add Yoruba localization

* Rename flag
2023-05-25 20:30:21 +03:00
Rafael Saes
baabc0a915
Cw 373 theme refactoring in preparation to support additional themes (#933)
* 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
2023-05-25 02:19:51 +03:00
Serhii
c835059d13
CW-371-Restore-height-issue-with-QR-code-Wallet-incorrectly-assigns-today's-restore-height-to-legacy-wallets (#925)
* fix height for legacy wallets

* get height by first tx under singular seed
2023-05-25 00:00:54 +03:00
Serhii
18ba724009
CW-379-Investigate-trade-ID-status-updates (#930)
* 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>
2023-05-24 19:12:42 +03:00
Justin Ehrenhofer
53c55523c2
Ionia don't->didn't (#941) 2023-05-24 19:02:28 +03:00
Rafael Saes
9668863655
CW-320-validate-address-case (#934)
* feat: allow all-lowercase OR all-uppercase ltc1 addresses (btc1 already working)

* fix: ltc length
2023-05-24 16:48:06 +03:00
Godwin Asuquo
1ac74b3182
CW-388 Add hausa language (#936)
* 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>
2023-05-19 17:33:16 +03:00
Godwin Asuquo
1e868f876e
CW-352 add enable disable screenshot feature to i os (#931)
* Disable ios screen recording

* Minor Enhancements

---------

Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
2023-05-17 18:34:41 +03:00
Adegoke David
43e062d1ac
Cw-263-TOTP-2FA-In-Security-Settings (#892)
* CW-263-TOTP-2FA-in-security-settings WIP

* Implement TOTP 2FA WIP

* Implement TOTP 2FA Authentication

* chore: Remove unneeded formatting

* revert formatting

* fixes

* CW-263-TOTP-2FA-in-security-settings WIP

* Setup TOTP Complete, left with Modify TOTF

* CW-263-TOTP-2FA-in-security-settings

* CW-263-TOTP-2FA-in-security-settings

* CW-263-TOTP-2FA-in-security-settings

* fix: Add copy-to-clipboard for qr secret key

* fix: Translation

* chore: Move strings into translation files

* feat: End to end flow for TOTP

* hotfix: Switch totp to use sha512

* Update strings; 8 digits and error explanation

* fix: Totp 2fa implementation feedback

* hotfix: same action for button and alert close

* feat: App should show both normal and totp auths when totp is enabled

* hotfix: prevent barrier from dismissing

* fix: Changes requested during PR review

* - Minor Enhancements
- Minor UI fixes

---------

Co-authored-by: Justin Ehrenhofer <justin.ehrenhofer@gmail.com>
Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
2023-05-17 17:43:23 +03:00
Rafael Saes
40f3ccbe42
Cw 268 contact address validation (#905)
* 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
2023-05-15 15:43:52 +03:00
Rafael Saes
0231298381
CW-254-proper-bitcoin-address-validation-in-exchange-screen (#900)
* 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
2023-05-15 15:39:00 +03:00
Rafael Saes
7fa7c45c0c
CW-370-add-options-to-enable-disable-buy-and-sell-actions (#920)
* 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
2023-05-15 15:26:56 +03:00
Omar Hatem
1a3d47748d
V4.6.4 bug fixes (#922)
* 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
2023-05-10 16:58:31 +03:00
Rafael Saes
e28e2fbdde
CW-376-picker-ui-issue (#919)
* 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>
2023-05-10 15:19:38 +03:00
Godwin Asuquo
759e61f67e
Fix keyboard is not entering text in fields until focus (#918) 2023-05-10 14:35:41 +03:00
Serhii
086019d926
CW-365-Wallet-QR-codes-not-working-properly-on-some-devices (#909)
* 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>
2023-05-08 23:30:14 +03:00
Godwin Asuquo
9714961298
CW-260 show amount received for each account (#907)
* Show amount received for each account

* Enable litcoin send all

* disable litcoin send all

* Indent code

* Fix large font resolution for account title
2023-05-05 15:58:41 +03:00
Godwin Asuquo
25b743df47
CW-368 Fix Range error accessing outputs (#912) 2023-05-05 03:15:35 +03:00
Rafael Saes
f012aaebf4
Cw 363 back button on receive screen in bright theme is white (#910)
* 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
2023-05-04 03:33:05 +03:00
Serhii
f47f690803
fix getting correct currency from template (#898) 2023-05-03 10:01:51 +03:00
Omar Hatem
367efb3cae
V4.6.4 fixes (#904)
* 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]
2023-04-27 17:06:09 +02:00
Omar Hatem
82b513d1f8
V4.6.3 bug fixes (#896)
* Add blocking screenshots native function to Monero.com [skip ci]

* Fix seeds QR data

* Update app versions and release notes [skip ci]

* Update only build number for macos since it wasn't released yet [skip ci]

* Fix adding sub-address

* Fix Accounts Popup UI

* Update app versions and release notes [skip ci]

* Fix add/edit node issue

* Update app versions and release notes [skip ci]

* Fix input fields focus/keyboard issues

* Update app versions and release notes [skip ci]
2023-04-26 14:59:27 +02:00
Omar Hatem
9d47e0e67c
V4.6.3_1.3.3 (#893)
* - Update App versions
- Add release notes

* Modify Monero.com release notes

* Fix issues with Frozen balance for Monero.com build

* Update cake wallet app build number
2023-04-24 14:02:17 +02:00
Serhii
1eb8d0c698
CW-229 Improved restore options from QR code (#793)
* add restoring wallet from qr

* add restore mode

* add alert for exceptions

* add restore from seed

* add check for create wallet state

* convert sweeping page into stateful

* fix parsing url

* restoration flow update

* update restoring from key mode

* update config

* fix restor of BTC and LTC wallets

* fix pin code issue

* wallet Seed/keys uri or code fix

* fix key restore credentials

* update the restore workflow

* update from main

* PR coments fixes

* update

* update

* PR fixes
2023-04-21 20:36:47 +02:00
Godwin Asuquo
f2b8dd21a1
CW-240 Receive fiat currency amount and receive animations (#877)
* Redesign receive amount field

* Fix issues with animations

* Fix issues with animations

* Fix max fraction digit to 8

* add another 0

* Update amount when currency is changed

---------

Co-authored-by: Justin Ehrenhofer <justin.ehrenhofer@gmail.com>
Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
2023-04-21 20:03:42 +02:00
M
d251539f13 Change package_info to package_info_plus 2023-04-21 11:48:02 -04:00
Serhii
8ffac75e8c
CW-59-New-update-highlight-popup (#863)
* add update pop up

* add release notes for monero com

* PR comments fixes

* Pr coments fixes

* minor fixes

* update from main

* [skip ci] remove unrelated mac os files

* add check isNewInstall

* update pop-up UI

* fix size

* Add update popup to desktop dashboard page [skip ci]

---------

Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
2023-04-21 17:21:31 +02:00
Justin Ehrenhofer
ab20312e61
Add btcln; add 2 assets to SideShift (#890)
* Add btcln; add 2 assets to SideShift

* fix regex line

* change ordering
2023-04-20 20:55:44 +02:00
Adegoke David
8f16af4748
CW-344-Exchanging-TO-the-current-wallet-currency-should-allow-changing-the-address (#880)
* CW-344-Exchanging-TO-the-current-wallet-currency-should-allow-changing-the-address

* Delete widget_test.dart

* fix: Revert unneeded changes made

* CW-344-Exchanging-TO-the-current-wallet-currency-should-allow-changing-the-address

* CW-344-Exchanging-TO-the-current-wallet-currency-should-allow-changing-the-address

* fix: Requested changes

* Update

* CW-344-Exchanging-TO-the-current-wallet-currency-should-allow-changing-the-address

* fix: Filter address in address book

* Update local branch

* CW-344-Exchanging-TO-the-current-wallet-currency-should-allow-changing-the-address

* CW-344-Exchanging-TO-the-current-wallet-currency-should-allow-changing-the-address
2023-04-20 19:14:11 +02:00
Serhii
315c4c911c
CW-325-Coin-Control-enhancements (#846)
* fix checkbox

* save the output state

* add note as a header

* Allow copy the Amount and Address

* add frozen balance to dashboard

* add block explorer

* fix url launcher

* code formatting

* minor fixes

* Revert "minor fixes"

This reverts commit d230b6a07b.

* fix missing implementations error

* [skip ci] update localization

* fix unspent with same txid

* add amount check

* add vout check

* remove formattedTotalAvailableBalance

* remove unrelated mac os files
2023-04-20 15:46:41 +02:00
Serhii
f26815efb8
CW-351-Add-option-in-Privacy-settings-to-enable-disable-screenshots (#885)
* add prevent screenshots option

* fix prevent screen recording

* update localization

* Update strings_ja.arb
2023-04-20 11:59:59 +02:00
Adegoke David
7b91b0e938
Cw 262 better handle user exchange amount below minimum or maximum trade size (#868)
* 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
2023-04-20 03:13:37 +02:00
Godwin Asuquo
efef30f8eb
CW-278 Enhance PIN timeout feature code (#886)
* CW-278 enhance pin timeout feature

* CW-278 enhance pin timeout feature

* Update flow to remove extension

* Replace pin request on other instances
2023-04-20 02:54:25 +02:00
M
d34dca99ed Remove duplication for routes. Removed unused constant and fixed TransactionInfoRow iterator for macos/Classes/monero_api.cpp. 2023-04-19 16:11:01 -04:00
M
2ff6cf43b3 Merge branch 'main' of github.com:cake-tech/cake_wallet into linux/password-direct-input 2023-04-19 15:18:43 -04:00
Omar Hatem
27961f2f25
Pre-release bug fixes (#888)
* Fix Exchange picker UI issue

* Fixate local_auth_android version

* Remove shared pref android package override since it's fixed
2023-04-19 16:38:07 +02:00
M
2e19e9d2b6 Fixes for Linux build scripts. Fixes for load cw_monero on Linux. Catch exception for get PackageInfo in SettingsStore. Add excludeFlutterSecureStorage to app_config.sh for Linux. Add FUNCTION_VISABILITY_ATTRIBUTE for monero_api.cpp. 2023-04-18 16:45:32 -04:00
Rafael Saes
5ad67b62a5
Cw 304 enhance talkback (#887)
* 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
2023-04-18 19:36:56 +02:00
Omar Hatem
9e7009f339
V4.6.2 Bug Fixes (#874)
* 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]
2023-04-17 21:09:26 +02:00
Godwin Asuquo
a472527c6f
CW-33 Add app review after successful transactions and exchange (#864)
* Add app reveiw on transactions and exchange

* Update Onramper page

* Fix issues in popup review
2023-04-17 20:06:58 +02:00
Adegoke David
4a203a43c8
CW-331-Add-option-to-disable-market-place-in-display-settings (#872)
* CW-331-Add-option-to-disable-market-place-in-display-settings [skip ci]

* CW-331-Add-option-to-disable-market-place-in-display-settings [skip ci]
2023-04-16 15:45:35 +02:00
Rafael Saes
77ab6b49f4
feat: Add Click to Copy for the Exchange Amount in the invoice (#882)
Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
2023-04-16 15:27:33 +02:00
Serhii
3b69aa8686
CW-273-Don't-add-node-under-Advanced-Privacy-Settings-if-it-already-exists (#876)
* don't add existing node

* minor fixes

* Add back IsExecutingState to connect [skip ci]

---------

Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
2023-04-14 20:55:12 +02:00
Rafael Saes
ff7a217d84
CW-338: Currency picker UI when keyboard is showing (#854)
* 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
2023-04-14 16:52:07 +02:00
Omar Hatem
c5477e4f9e
Dashboard desktop view (#737)
* 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>
2023-04-14 06:39:08 +02:00
M
8efedbccf6 Add ability to set custom data application directory 2023-04-13 19:48:51 -04:00
M
f52c45b167 Change encryption method for electrum wallets is wallet password provides directly. Add ability to user for repeat wallets password and compare with original wallet password before wallet creation for cases when wallet password provides directly. 2023-04-10 19:16:13 -04:00
Godwin Asuquo
4fd8b722e9
Add padding to adjust top (#861)
* Add padding to adjust top

* Update padding
2023-04-07 17:53:01 +02:00