- 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
* [#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
- Closes#1159
- Closes#1269
- Closes#1073
- Its direct follow-ups are #1294 and #1161
- Other follow up is #1260
- These changes also enable having two Primary buttons side-by-side
- This adds sorting history of transactions by a new calculated height after send done
- This also changes how we treat empty transaction dates from `-` to `` in UI
- Changelog update
* Adopt Zcash SDK v2.0.8-SNAPSHOT
* [#1285] Adopt proposal API
- Closes#1285
- Manually tested and the updated send and shield features work as expected
* [#1201] Enhance SendStage.SendFailure with error
- Closes#1201
- The changes also contain custom saver for SendStage
- The error is printed on the SendFailure screen as a simple text for now
- Changelog updated
- Closes#1195
- The fixture recipient address type changed from the unified to the sapling on several tests to avoid temporary address TODO text obtained from the SDK fixture
- WalletDisplayValues have the updateAvailable optional with false as a default value
- Changelog updated
* [#1138] Malformed pattern: Grouping separator
- This handles possible malformed format pattern exceptions in Zashi, but the proper solution needs to be provided within the SDK. See #1315.
- Closes#1138
* Changelog update
[#942] New Wallet Recovery Phrase Screen
[#1006] Enhance VersionInfo with other fields
[#947] About screen UI + logic + tests
[#1040] Extract logo and title on top of screens
- Place it into a separate UI component
- Used across several screens
- Closes#1040
Remove long version of the Backup screen
- We previously had a configuration field that controlled which version of the screen should be displayed to a user
- Removed
- Partly solves #1003
Backup screen view redesign
Tests + docummentation
Update links to the Zashi Github repository
As the GitHub repository was recently moved from Zcash under the ECC company
[#1014] Unify screen name with Figma design
[#1045] Adopt Zcash SDK v2.0.3
Closes#1045
Fix screenshot test
The new wallet recovery screen is now much taller; scrolling to the acting button is needed.
Fix Restore screen test
Lint tools warnings
- PrimaryButton centered horizontally on all screen
- Compose Preview switched to light theme on all screens as Zashi supports light theme only
- Closes#975
* [#808] Use Dimens across the app
- Shorter Onboarding screen design enhanced
* Shorter New Wallet Backup screen UI enhanced
* Home screen UI enhance
* Seed screen UI enhance
* Link SendArgumentsWrapper issue
* Move custom buttons paddings to PaddingValues
- Optional Modifier parameter should have a default value of Modifier
- Thanks to this we introduced the outerPaddingValues parameter to all our buttons with default paddings
- Also notice the difference between e.g. ShortOnboardingView and ShortNewWalletBackupView. In the backup, we have the bottom button to be part of Scaffold’s bottomBar, which is maybe a better pattern than stretching the buttons with spacers in case of part of the screen content view, but it has also its tradeoffs.
* Settings screen enhance
* Support screen UI enhance
* About screen UI enhance
* Scan screen UI enhance
- Move modifiers to the caller’s side
- Match texts to predefined styles
- Add color to Small text component + reorder parameters
* Send screen UI enahnce
- Lifted out some modifiers arguments to the caller’s side
- Fixed button’s horizontal paddings
* Scan move BackHandler to Android class
* Update screen UI enhance
* Receive screen UI enhance
* Address screen UI enhance
* Ignore AndroidUpdate back action test
- Will be refactored soon
* Remove TODO as already implemented
* Restore screens UI enhance
* Create UpdateViewAndroidTest
* [#807][Design system] Remove deprecated Paddings
* [#705] Instrumentation coverage generation fails locally
* [#808] Use Dimens across the app
- Shorter Onboarding screen design enhanced
* Shorter New Wallet Backup screen UI enhanced
* Home screen UI enhance
* Seed screen UI enhance
* Link SendArgumentsWrapper issue
* Move custom buttons paddings to PaddingValues
- Optional Modifier parameter should have a default value of Modifier
- Thanks to this we introduced the outerPaddingValues parameter to all our buttons with default paddings
- Also notice the difference between e.g. ShortOnboardingView and ShortNewWalletBackupView. In the backup, we have the bottom button to be part of Scaffold’s bottomBar, which is maybe a better pattern than stretching the buttons with spacers in case of part of the screen content view, but it has also its tradeoffs.
* Settings screen enhance
* Support screen UI enhance
* About screen UI enhance
* Scan screen UI enhance
- Move modifiers to the caller’s side
- Match texts to predefined styles
- Add color to Small text component + reorder parameters
* Send screen UI enahnce
- Lifted out some modifiers arguments to the caller’s side
- Fixed button’s horizontal paddings
* Scan move BackHandler to Android class
* Update screen UI enhance
* Receive screen UI enhance
* Address screen UI enhance
* Ignore AndroidUpdate back action test
- Will be refactored soon
* Remove TODO as already implemented
* Restore screens UI enhance
* Create UpdateViewAndroidTest
* [#807][Design system] Remove deprecated Paddings
* Address review comments
* [#791] Add Scan Button To Send Screen
- Switched Send.Form screen input fields ordering to match the MFP design
- Added Scan button to Send.Form
- Changed navigation to pass the scanned result to the Send.Form screen
- Added leading and trailing icons to FormTextField component
- Created SendArgumentsWrapper to pass any future Zcash URL parsed parameters
* Report invalid address scanned
- Merged composes to provide snackbar after invalid address scanned
* Add SendView tests
- Added one for scanner click and one for initial send arguments inserted
- This led to input and check amount and memo as part of the SendArgumentsWrapper too to have it prepare for future Zcash URI parsing
* Static analysis warnings fixes
* Don't make camera feature required
- And hide the scanner button on Send.Form when any camera is not supported by the device
* Let SendArgumentsWrapperFixture use SDK fixtures
* Tweak hint text
We need better text, but this is at least more correct than the previous iteration.
* Replace assertTextContains with assertTextEquals
- To compare inputs texts to an exact match to avoid potentially missing bugs if there is extra text in the field that we're not expecting
* Fix ktlint warning
---------
Co-authored-by: Carter Jernigan <git@carterjernigan.com>
* [#804][Design system] Paddings - Dimens
- Initial commit to ensure it meets our requirements
- This solution is now in parallel with a simpler existing Paddings solution
- Four spacing groups defined
- Provides a way to define default and custom spacing values
- Distinguished by screen size, but other metrics also available (e.g. orientation, aspect ratio, layout direction or screen shape)
* Fix spacing value
* Move spacings change logic to comment
- We've decided to have only one regular spacing group for now, which is suitable for most of current phone devices
* Move Dimens out of internal package
* Link TODO for later Paddings remove
* Link issue of Use Dimens across the app to TODO
* [#792] Add sending screens
- This extends the Send screen logic with several subscreens
- A transaction submission connected to the Synchronizer
- Some logic moved to Android specific class
- System back navigation handler implemented
- Styling with dimes introduced to all Send screens
- New UI, Android specific, integration and screenshot tests added
- Additionally we could consider implementing a proper SendState mechanism, as we do in e.g. BackupState
* File issue of problematic pseudolocales texts inserted in Send.Form screen
* Add scrolling to send view
* Switch SendViewIntegrationTest away from TestSetup
* Provide MockSynchronizer to integration test
---------
Co-authored-by: Carter Jernigan <git@carterjernigan.com>
* [#785] Remove press-and-hold for send confirmation
- Timed button replaced by standard behaviour button
- Related SendView test updated
* Remove unused API
If we need this back, we can restore it from the Git history.
* Remove unused imports
---------
Co-authored-by: Carter Jernigan <git@carterjernigan.com>
* [#804][Design system] Paddings - Dimens
- Initial commit to ensure it meets our requirements
- This solution is now in parallel with a simpler existing Paddings solution
- Four spacing groups defined
- Provides a way to define default and custom spacing values
- Distinguished by screen size, but other metrics also available (e.g. orientation, aspect ratio, layout direction or screen shape)
* Fix spacing value
* Move spacings change logic to comment
- We've decided to have only one regular spacing group for now, which is suitable for most of current phone devices
* Move Dimens out of internal package
* Link TODO for later Paddings remove
* Link issue of Use Dimens across the app to TODO
* Add vertical scrolling feature to SendForm screen
* Add vertical scrolling feature to Settings screen
+ Switched from Paddings to Dimens spacing system
* Add paddings, vertical scrolling, move modifiers
- As part of this is also move modifiers to the caller side where it makes sense
* Improve Send screen layout
- Added header view to the screen
- Added spacers between some UI parts of the screen
- Fixed background colors
- And improved textfields sizes
* Link Fix ZEC balance number formatting issue
* Link Disable Memo UI field in case of Transparent address issue
* Replace all .dp with predefined Dimens spacing in SendView
* Create custom FormTextField UI component
* Re-write paddings to spacers in list
Twitter had a set of Compose rules, which have been forked into Detekt, Ktlint, and Android Lint implementations.
I see ktlint as mostly being formatting, Detekt being more for multiplatform static analysis, and Android Lint for Android-specific issues. Android lint is slow, so I didn’t want to use it as the first choice.
I went with the Detekt implementation which can be useful if we leverage multiplatform for our Composables in the future.
- Implementing regex solution for validation of input ZecAmount after confirm button is pressed.
- Added also unit tests for this new feature.
- Move necessary components from sdk-ext-lib to sdk-ext-ui module.
- Align implementation with comments form PR.
- Fix name of run configuration.
- Ensure consistent behavior of tests.
- Prevent illegal input in ZEC Send/Request form.
- New SDL-EXT-UI module for UI related SDK helper components.
- Regex for continuous validation of the entered ZEC amount.
- Added a new unit tests for validation of the regex too.
- Using the regex on ZEC Request and ZEC Send screens.
- Updated existing and created a new UI tests for validating entered ZEC amount values on Request and Send screens.
- Improve code to be validated with DetektAll static analyzation.
- Architecture documentation update with the newly added sdk-ext-ui module.
- Added run configuration sdk-ext-lib:connectedCheck for AS.
- Added check for digits count between grouping separators + tests.
- Refactoring test class name and its separator value.