Commit Graph

276 Commits

Author SHA1 Message Date
Milan fb138c2412
[#234] AppCompat removal (#1509)
* [#234] AppCompat removal

Closes #234

* [#234] Crash fix

Closes #234

* Changelog update

---------

Co-authored-by: Honza <rychnovsky.honza@gmail.com>
2024-07-22 15:24:14 +02:00
Milan 906873b6fb
Activity configuration handling (#1511)
* Activity configuration handling

* Code cleanup

* Changelog update

---------

Co-authored-by: Honza <rychnovsky.honza@gmail.com>
2024-07-22 12:31:50 +02:00
Milan a503091ab2
QR scanner better cropping & support for inverted colors
* QR scanner fixes

* QR cropping

* Code cleanup

* Scanning frame offsets change

* Changelog update

---------

Co-authored-by: Honza <rychnovsky.honza@gmail.com>
2024-07-19 14:28:59 +02:00
Milan 741601b65f
[#1467] Activity resizing according to soft keyboard (#1506)
* [#1467] Activity resizing according to soft keyboard

Closes #1467

* [#1467] Seed keyboard handling

* [#1467] Seed keyboard handling

Closes #1467

* [#1467] Documentation update

* TODO reference

* [#1467] Documentation update

Closes #1467

* [#1467] Detekt fix

Closes #1467

---------

Co-authored-by: Honza <rychnovsky.honza@gmail.com>
2024-07-19 12:00:50 +02:00
Milan 0bc7757aa2
[#1492] Restore success dialog refactor (#1507)
* [#1492] Restore success dialog refactor

Closes #1492

* [#1492] Code cleanup

Closes #1492

* Create a separate Android layer

* Changelog update

* Move restore success string resources

* Rename logic related variables

+ File a follow-up issue

* Resources rename

* Move drawable to its package

---------

Co-authored-by: Honza <rychnovsky.honza@gmail.com>
2024-07-19 10:17:45 +02:00
Milan 1a0b634ab6
[#1499] StyledBalance configuration defaults added
* [#1499] StyledBalance configuration defaults added

Closes #1499

* [#1499] Code cleanup

Closes #1499

* Rename model paramaters

As the floating point is not the diving point for the different styles

* Changelog update

---------

Co-authored-by: Honza <rychnovsky.honza@gmail.com>
2024-07-18 14:07:15 +02:00
Milan 23e1bb7e75
[#1440][#1415] In-app update information - What's New screen
* [#1440] Inject in-app-update information

* [#1415] What's new screen

Closes #1415

* [#1415] Code cleanup

Closes #1415

* [#1415] Test hotfix

Closes #1415

* Clear What’s New docummentation

* Improve parser logic

So it’s able to parse the first changelog entry or the first unfinished one (i.e. [Unreleased] entries only)

* Order alphabetically

* [#1440] About redesign

* Changelog update

* Use of small button style on About

- Primary button’s parameters have been slightly changed, too

* Add IN_APP_UPDATE_PRIORITY to gradle.properties

* Rename functions

To align with the existing pattern

* Sort alphabetically

* Add ChangelogFixture

* Create ChangelogFixture

* Move navigation from Android layer to Navigation

* Fix changelog parsing

This way, it will also work with `-` in the middle of the sentence. With such a solution, we need to ensure the `\n-` characters sequence in every changelog entry. But it’s replaced by the bullet character at the end. It will work for Google Play within in-app updates, as well.

---------

Co-authored-by: Honza <rychnovsky.honza@gmail.com>
2024-07-18 10:48:02 +02:00
Honza Rychnovský bbf730d8f5
[#1414] Hide Balances
* [#1414] Hide Balances

- Closes #1414
- Reworked TopAppBar back navigation-related parameters across the app to enable us to inject a different action - hide balances instead of just the back navigation
- Tests updated to reflect the above changes
- A simple new button UI test was added, too
- Changelog update
2024-07-03 15:29:49 +02:00
Milan 42deed3391
#814 Compose back handler (#1494)
* #814 Compose back handler

Closes #814

* #814 Test hotfixes

Closes #814

* Back handling for onboarding

Closes #814

* [#814] Changelog update

Closes #814

---------

Co-authored-by: Milan Cerovsky <milan.cerovsky@leeaf.life>
2024-07-01 12:44:51 +02:00
Honza Rychnovský 508552f0fa
[#1496] Authentication success after previous failure
- Closes #1496
- The onFailed callback now does not reset the helper compose variable anymore
- Toast duration shortened in the auth failed state to improve its UX
- Changelog update
2024-06-28 16:23:45 +02:00
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