Commit Graph

266 Commits

Author SHA1 Message Date
Honza Rychnovský e1ab2e2af6
[#1047] Consistent Zatoshi amounts representation
* [#1047] Consistent Zatoshi amounts representation

- Closes #1047
- Tests
- Changelog update

* Address review comment
2024-06-27 16:00:07 +02:00
Milan 31649ff718
[#1413] [#1460] [#1461] QR code scanning from gallery picker (#1479)
* [#1413] [#1460] [#1461] QR code scanning from gallery picker

Closes #1413
Closes #1460
Closes #1461

* [#1413] [#1460] [#1461] Code cleanup

* [#1413] [#1460] [#1461] Camera scan frame anchored to a static view

Closes #1413
Closes #1460
Closes #1461

* [#1413] [#1460] [#1461] Code cleanup

Closes #1413
Closes #1460
Closes #1461

* Changelog update

- Unrelated change: this commit also removes a log from Navigation that was introduced in some of the previous changes and does not describe the actual execution state

---------

Co-authored-by: Milan Cerovsky <milan.cerovsky@leeaf.life>
Co-authored-by: Honza <rychnovsky.honza@gmail.com>
2024-06-21 10:36:45 +02:00
Honza Rychnovský 987595eaa2
[#1011] Dark mode
* [#1011] Rework buttons design system

* [#1011] Dark mode in Onboarding screen

* [#1011] Welcome animation dark mode

* [#1011] SecurityWarning screen dark mode

+ Proper coloring of the labeled checkbox across the app

* [#1011] NewWalletRecovery dark mode

+ Chip and ChipGrid coloring
+ Navigation button and Dialog coloring
+ NewWalletRecovery screen button copy update

* [#1011] RestoreView dark mode

+ Chip components coloring

* [#1011] RestoreView.Birthday dark mode

+ Fix Primary/Secondary colors

* [#1011] Settings screen dark mode

- Fix TopAppBar colors in dark mode

* [#1011] Support screen dark mode

* Fix static code analysis warnings

* [#1011] About screen dark mode

* [#1011] ChooseServer screen dark mode

+ LabeledRadioButton coloring
- Closes #1410

* [#1011] AppAlertDialog dark mode

* [#1011] Not Enough Free Space screen dark mode

- Screen redesigned to align with latest design specifications
- Added Go To System Settings and Go To App Settings buttons to the screen
- Closes #1337
- Few unused resources removed

* [#1011] App Update screen dark mode

* [#1011] Balances screen dark mode

+ dividers’ color review

* [#1011] Receive screen dark mode

* [#1011] Send.Form screen dark mode

* [#1011] Send.Confirmation screen dark mode

* [#1011] Send.MultipleTrxError screen dark mode

* [#1011] Scan screen dark mode

* [#1011] TransactionHistory screen dark mode

* Changelog update

* Address review comments
2024-06-19 14:09:28 +02:00
Milan-Nerevar 4cdb9f3024
[#1412] Receive Page split into horizontal pager
* ISSUE-1412 Receive Page split into horizontal pager

* ISSUE-1412 Code cleanup

* ISSUE-1412 Code cleanup

* Resolve code analysis warnings

* Improve vertical paddings

- So the entire screen is scrollable as expected
- This also moves us towards the newly updated screen design

---------

Co-authored-by: Milan Cerovsky <milan.cerovsky@leeaf.life>
Co-authored-by: Honza <rychnovsky.honza@gmail.com>
2024-06-14 15:59:17 +02:00
Serhii Ihnatiev 0a35c4fffd
[#1259] Add bubble message component
* [#1259] - Add bubble message component

- Closes #1418
- Wrap history and send message fields in bubble style
- Update changelog

* Change bubble message component file name

* Apply bubble design to SendConfirmationView

* Use different design for sent and received history transactions

* Simplify Send transaction recognition

* Color bubble arrow in transparent receiver case

---------

Co-authored-by: Serhii Ihnatiev <serhii.ihnatiev@ext.grandcentrix.net>
Co-authored-by: Honza Rychnovský <rychnovsky.honza@gmail.com>
2024-06-14 08:54:20 +02:00
Serhii Ihnatiev 34e741e3b3
[#1418] Display all transaction messages
* [#1418] - Display all transaction messages as separate items

- Closes #1418
- Fix new line indent
- Mention functionality in the changelog
- Use plurals for title when displaying transaction history messages

---------

Co-authored-by: Serhii Ihnatiev <serhii.ihnatiev@ext.grandcentrix.net>
2024-06-14 07:33:56 +02:00
Honza Rychnovský 6f878ea609
[#1463] Display Disconnected app state
- Closes #1463
- Disconnected dialog text update
- Changelog updated
2024-06-05 12:52:43 +02:00
Honza Rychnovský d813c1a9da
[#1458] Detect unavailable service and show a dialog
* [#1458] Detect unavailable service and show a dialog

- Closes #1458
- Changelog update

* Provide unsorted trx list when disconnected

- These changes also improve the app’s ability to use the SDK’s APIs to provide a transaction history list, even in a disconnected state. In such a case, the list is sorted by its original order.
- Changelog update
2024-06-03 18:41:06 +02:00
Honza Rychnovský 75e90607d1
[#1456] runCreateTransactions on lifecycleScope
- Closes #1456
- Also, these changes leverage updated snapshot Zcash SDK version  2.1.2
- Changelog update
2024-06-03 08:12:07 +02:00
Honza Rychnovský 030d2e20b0
[#1085] Grid pattern in the screen background
- Closes #1085
- Closes #1091
- These are prerequisites for the Dark mode adoption within #1011
- A few unused UI components have been removed to simplify the dark mode adoption
- BlankSurface and GridSurface have been added and used instead of the previous GradientSurface
- A new BlankBgScaffold, GridBgScaffold, BlankBgColumn, and GridBgColumn UI components have been prepared to provide an easy grid or blank screen background adoption across the whole app
- Several colors from resources have been eliminated, as the design doc simplified its color palette
- The grid pattern has been added to the screens according to the design doc and iOS platform
- Changelog updated
2024-05-30 13:32:35 +02:00
Honza Rychnovský 7e9e89725b
[#1449] Display Synchronizer details in dialog
- Closes #1449
- Synchronizer status details are now available to users by pressing the simple status view. The details are displayed within the predefined Zashi dialog on the Balances and Account screens
- As this view also presents information about Zashi app updates available on Google Play, by pressing the view, the app redirects users to Google Play Zashi’s page
- As agreed, we’re moving towards more rounded corners in dialogs, which is part of these changes, too
- Added also several minor Balances screen UI improvements
- Improved biometric flow without any authentication method set on older Android versions
- Changelog update
2024-05-24 10:41:57 +02:00
Honza Rychnovský 00db536674
[#1417] Add in-app authentication
* [#1417] Add authentication

- Closes #1417
- Closes #326
- Partially addresses [Electric-Coin-Company/zashi#7] too
- Creates reusable AuthenticationVM component with all necessary logic that reports authentication status to its callers
- Addresses authentication requirements for the Send funds, Delete wallet, Export private data, and Recovery phrase. The App access authentication use case is prepared and can be turned on anytime.
- The new logic also counts with possible future user customization via the app UI of the default on/off states for all implemented authentication use cases
- Send.Confirmation logic simplification
- This also adds the welcome screen (splash) animation to all the app entry points (the app recreation caused by system included)

* Allow unauthenticated access

- In case no authentication method is available on the device

* Build supported authenticators for the device

- Based on the device Android SDK version

* Disable broken screenshot testing

- This is a temporary change until #1448 is addressed

* Changelog update

* Add temporary placeholder screenshot test

To suppress no test error
2024-05-22 15:59:38 +02:00
Honza Rychnovský a97b71d922
[#1338] Redesign Update-Available screen
- Closes  #1338
- Changelog update
2024-05-07 16:57:45 +02:00
Honza Rychnovský 6c3307748a
Improve delete wallet app state reset (#1438) 2024-05-06 19:29:50 +02:00
Honza Rychnovský c3cf711ee6
[#1382] Improve Onboarding screen dynamic height calculation
- Closes #1382
- Changelog update
2024-05-06 18:54:52 +02:00
Honza Rychnovský 5c21a776d5
[#1434] Improve Shielding UX
* [#1434] Improve Shielding UX

- Closes #1434
- Changelog update

* Trigger balances refresh after sending too
2024-05-06 16:33:31 +02:00
Honza Rychnovský 6160554d64
[#1431] Minor UI improvements
* [#1431] Minor UI improvements

- Account - syncing bar vertical paddings too big

* Add missing bottom padding on About

* Changelog update

* Improve OS info in the support email template

* [#1348] Update restore wallet text field copy

Closes #1348
2024-05-03 13:53:10 +02:00
Honza Rychnovský 2828c25c21
[#1350] No message included in transaction
- Closes #1350
2024-05-03 10:15:59 +02:00
Honza Rychnovský e2ddebe47c
[#1429] Deduplicate messages on transaction
- Closes #1429
- Changelog update
2024-05-02 12:53:21 +02:00
Honza Rychnovský 448177c2d1
[#1427] Do not concatenate memos
- Closes #1427
- Changelog update
2024-05-02 12:37:50 +02:00
Honza Rychnovský 09febc6ff1
[#1425] Improve Balances widget loader logic
- Closes #1425
- Changelog update
2024-05-02 12:04:49 +02:00
Honza Rychnovský a1cf59f9b2
[#1407] Add Delete wallet feature
- Closes #1407
- Changelog update
- Link a new snapshot version of the Zcash SDK
2024-05-02 10:07:28 +02:00
Honza Rychnovský b0ccdef6e3
Fix server selection in Restore wallet flow (#1404) 2024-04-26 16:42:54 +02:00
Honza Rychnovský 9b2bad6f10
Add zec.rocks lightwalletd server options (#1401)
- Default wallet option changed to zec.rocks:443
- Changleog update
2024-04-26 13:02:07 +02:00
Honza Rychnovský 2ac9f5ebd4
Add more servers to the list (#1394)
- 8 more servers added to the list
- Order of servers changed to show default as 1st, custom as 2nd
2024-04-24 18:47:23 +02:00
Honza Rychnovský d9565e68e0
Remove unused resources (#1390) 2024-04-23 18:08:58 +02:00
Honza Rychnovský 45ca274f98
Display only 3 decimals within fee amount (#1387)
- The proper solution will be added with #1047
2024-04-23 13:30:11 +02:00
Honza Rychnovský 66ba050719
Scroll to Send button (#1386) 2024-04-23 13:29:12 +02:00
Honza Rychnovský 1ffbaf986f
[#1284] Rework Scan screen
- Closes #1284
- Closes #423
- Closes #437
- Changelog update
2024-04-23 10:05:15 +02:00
Honza Rychnovský dd371348eb
[#372] Improve scrolling on Onboarding
* [#372] Improve scrolling on Onboarding

- Closes #372
- All screens were checked
- The Onboarding screen behavior on very small screens improved
- Tested with Split screen OS feature to emulate a very small screen

* Fixed status and navigation bars height
2024-04-23 08:45:27 +02:00
Honza Rychnovský 551055e65c
[#1291] Balances hint box copy update
Closes #1291
2024-04-23 08:43:48 +02:00
Honza Rychnovský 786c8c2cab
[#1371] Improve Balances widget loader logic
- Closes #1371
- This also covers the security audit recommendation: 4.2.14 (App) This comment in WalletSnapshot.kt should be ticketed
2024-04-23 08:42:34 +02:00
Honza Rychnovský fb5d446bab
[#1367] Send 0 funds only within shielded transaction
- Closes #1367
- Plus slightly refactored SendForm composable to two functions
- Changelog update
2024-04-23 08:39:40 +02:00
Honza Rychnovský e92c0b613c
[#1359] Remove fixed US locale
* [#1359]: Use default Locale in PercentDecimal

* Intended use of Local.US

* Use default Locale in Transaction history dates

* Use default Locale in Balance widget

* Use default Locale in Send tests

* Use default Locale in WalletDisplayValues.kt
2024-04-18 13:05:32 +02:00
Honza Rychnovský afd47e513e
[#1352] Remove test fixture values ZIP321
- Addresses issue J from the security audit: Payment URI parser uses a test fixture address
- This also removes unused Request screen with its logic and tests
- Closes #1352
2024-04-18 08:10:08 +02:00
Honza Rychnovský dc955d6ee3
[#1342] Dependency update
* [#1342] Bip-39 1.0.8-SNAPSHOT

* Gradle versions 0.51.0

* Ktlint 1.2.1

* Kotlin 1.9.23 + Compose Compiler 1.5.11

* Gradle 8.7

* compose Activity 1.8.2

* AndroidX Annotation 1.7.1

* Test Macrobenchmark 1.2.3

* Compose 1.6.5

* AndroidX Core 1.12.0

* AndroidX Lifecycle 2.7.0

* Uiautomator 2.3.0

* Accompanist Permission 0.34.0

* Firebase Bom 32.8.1

* Google Play Service Plugin 4.4.1 + Firebase CL Tools 4.4.1

* UiAutomater version fix

* Zxing 3.5.3

* Detekt 1.23.6 + Detekt Compose 0.3.15

* Kotlin Immutable Collections 0.3.7

* Emulator Wtf Gradle Plugin 0.16.2

* Changelog update

[skip ci]

* Bip-39 1.0.8

* AGP 8.3.0

* Jacoco 0.8.12
2024-04-15 17:46:49 +02:00
Honza Rychnovský 47937ffabc
Show initial restoring dialog (#1335) 2024-04-12 15:02:44 +02:00
Honza Rychnovský cad8e48bf8
[#1319] Restoring state UI in Account and Balances (#1334)
* [#1319] Restoring state UI in Account and Balances

- Closes #1319

* [#1319] Restoring state widget in Account

- Closes #1319

* Add syncing widget to Account while restoring

* Update changelog

Plus reset the previously unreleased app record
2024-04-12 11:55:44 +02:00
Honza Rychnovský bcdf328cb4
Fix shielding state interpretation (#1333) 2024-04-10 14:41:41 +02:00
Honza Rychnovský c9308546ab
Release 0.2.0 (594) (#1330) 2024-04-09 16:20:17 +02:00
Honza Rychnovský 0d3d0c4d19
[#1263] Statuses of the sync process
- Closes #1263
- Changelog update
2024-04-09 12:19:13 +02:00
Honza Rychnovský bca1c32b8c
[#1264] Handle unavailable AccountBalance
- Closes #1264
- Changelog update
2024-04-08 12:59:03 +02:00
Honza Rychnovský b34d086cc0
Extend shielding state (#1322)
- This adds `ShieldState.Shielded` that helps us keep the correct UI state of the Transparent funds widget after the user starts shielding action
- This also brings little UI improvement in PrimaryButton sizing
2024-04-08 07:49:53 +02:00
Honza Rychnovský 8c027003cc
[#1164] Restoring UI state in TopAppBar
- Closes #1164
- This incorporates the new wallet restoring label into the custom TopAppBar UI component, so it’s accessible from all screens
- This also fixes the adjust brightness feature that previously stayed turned on when the user left to a surrounding tab screen (Send or Balances)
- Changelog update

Move DisableScreenTimeout into the parent HomeView

Persist restoring state

Fix infinite loading trx history UI state

Add New wallet syncing state

This also adds the wallet restoring state into the transaction history state calculation
2024-04-05 13:09:08 +02:00
Honza Rychnovský e398af5690
[#1317] Improve balances logic calculation
- Closes #1317
2024-04-03 14:16:51 +02:00
Honza Rychnovský 2c45ab642b
[#1162] Finish expandable trx item UI state
- Closes #1162
- Closes #1237
- Closes #1078
- This removes unused DangerousButton component and its related resources
- It fixes the Collapse button vector icon
- It brings send_failed and receive_failed states into the trx item UI
- It adds the fee part of the expandable item
- Its follow-up is #1047
- Changelog updated
2024-04-03 09:18:46 +02:00
Honza Rychnovský c8a14f0375
[#1312] Display SDK error cause in dialog
* [#1312] Display SDK error cause in dialog

- Closes #1312
- Changelog reverter as the previous release hasn’t been deployed yet due to a new bug

* Too long dialog text scrollable
2024-04-02 08:29:08 +02:00
Honza Rychnovský a8ad649ef8
[#1310] Release 0.2.0 (583)
* [#1310] Release 0.2.0 (583)

Closes #1310

* Fix valid message check
2024-03-29 21:23:39 +01:00
Honza Rychnovský 4ae3fde690
[#1162] Expandable transaction history item
Although this brings many changes to the transaction history item UI, it only partly solves Expandable transaction history item #1162
Follow-up PR will close it
2024-03-29 20:27:30 +01:00
Honza Rychnovský c99c2907b1
[#1307] Keep transaction history UI state
- Closes #1307
- Changelog update
- #1162 is the direct follow-up of this PR
2024-03-28 12:57:04 +01:00