* [#944] Adopt SDK version with SbS included
- This supposes to fail in the build until the proper SDK version is consumed
- Tested via included builds
* Switch to latest v2.0.0-rc.2
* Adopt latest SDK snapshot version
* [#972] Adopt PersistableWallet API changes in SDK
Closes #972.
* Adopt SDK supporting PersistableWallet.endpoint
* [#944] Adopt SDK version with SbS included
- This supposes to fail in the build until the proper SDK version is consumed
- Tested via included builds
* Adopt latest SDK changes
* Adopt changed TransactionOverview API
* Switch to latest v2.0.0-rc.2
* Fix transaction history test fixture
* Adopt latest SDK snapshot version
* Switch to latest production Zcash SDK version
* [#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>
* Adopt SDK 1.10.0 API changes
* Rename ShieldedSapling -> LegacySapling
* Viewing key re-derived for fix fixture value
* Changes used API for retrieving Transparent address
- Switched API DerivationTool.deriveTransparentAddress() -> Synchronizer.getLegacyTransparentAddress()
- Renamed Transparent -> LegacyTransparent
* Adds new common transaction model class
- Synchronizer.toTransactions() now works only with clearedTransactions and pendingTransactions
-Added CommonTransaction wrapper for all attributes of PendingTransaction and TransactionOverview to cover as much as possible. It's prepared for discussion about which attributes we really need and which we can omit.
* Regeneration of addresses in fixture
- Applies for both Transparent and Sapling addresses
- Fixed related test
- Added a new test for checking Transparent address abbreviation, as it also serves as a little check of the fixture address and can prevent an incorrect address change in the future
* Remove Viewing key usage from entire app
- As we agreed that the app should not access to it now
- Removed from all related places
* Change CommonTransaction to sealed class
* Comments update
* Switch SDK to 1.10.0-beta01-SNAPSHOT version
* Revert back legacy naming on Transparent and Sapling addresses
* Increased timeout limit to satisfy SDK initialization
* Remove unused import
Note that this change modifies the on-disk representation of the wallet. Anyone who has an earlier build install will see a runtime crash. This is expected, as we are not supporting data migrations at this stage of development. The solution is to uninstall/reinstall the app.
* [#310] [Scaffold] Progress Status Circular Bar
- Added Z to Home ZECs balance
- Added USD balance text to Home
- Prepared Text extension functions for both
- Provided Zatoshi to USD conversion methods + filed related SDK conversion issue
* Update Home screen UI with progress bars
- Implemented scaffolding UI of progress bars
- Added related texts to strings
* Update Home screen UI with progress bars
- Connected some of the implemented UI elements to SDK values
- Added app update information to Home screen
- Update WalletSnapshot with progress field
* Update Home screen UI with progress bars
- Capturing and handling errors from SDK Synchronizer.
- Added related error strings.
- Simplified Home screen UI.
* Zboto font added. Load it in runtime. Import to Typography.
* Updated ZEC sign icon.
* Draw ZEC balance with Zboto font
* Simplify Home screen balances assigning
* Switch to PercentDecimal progress representatiton
* Support different locales while working with fiat currency
* Fix bug in checking of fiat currency value
* Generalize strings to provide possibility of other fiat currencies
* Add fiat currency conversion states mechanism
* Add TODO comment with reference to follow up SynchronizerError issue
* Add WalletDisplayValues to simplify HomeView composable
* Add CurrencyConversion class for connection to Price API (and convert Zatoshi to fiat currency)
* Add basic HomeView tests
* Add basic HomeViewIntegration test
* Review changes
- Used Duration API for times
- Allow injecting clock into currency conversion
- Moved FiatCurrencyConversionRateState to sdk-ext-ui because I suspect that we’ll consider this to be a UI object. I based this on the fact that current/stale cutoff values are arbitrary and probably should be the domain of the UI rather than the SDK.
- Added some tests, although additional coverage is needed
- Added fixtures for model objects
* Minor code refactoring
- Move UpdateInfoFixture class to fixture dir
- Remove unnecessary annotation
- Add common application context method to test suite
- Fix Test class import
- Move several WalletSnapshotFixture parameters to const fields
* Add WalletDisplayValuesTest to cover the model class.
* Fix import after changes merged
* Use the new MonetarySeparatorsFixture in related tests
* Add a few basic Zatoshi -> USD conversion tests
* Turn on core lib desugaring for sdk-ext-ui-lib module
* Make WalletDisplayValues a data class
I think there may be some instances where this can help with recomposition
* Add preference key for fiat currency
This allows us to configure reading the value with observers correctly, even if we don’t allow the user to change it right now.
* Delegate symbol and formatting to JVM
* Add tests for Locale
Co-authored-by: Carter Jernigan <git@carterjernigan.com>
- Includes Zip321UriBuildFixture for the toUri() method from the Rust layer.
- Includes Zip321UriParseFixture for the fromUri() method from the Rust layer.
- Added ZecRequestTest class for testing ZecRequest methods.
- Align Zip321UriBuildFixture and Zip321UriParseFixture parameters.
- Added comments to the new() methods of Zip321BuildFixture and Zip321ParseFixture.
Implements a basic scaffold for sending ZEC.
Some new model objects and an extension method were added that I hope to move to the SDK.
Followup issues include
- Press-and-hold for the Send button #249
- Prevent illegal input in input form #218
- Prevent undefined behavior if locale changes #217
- Add error handling to the Zec send screen #250
- Add confirmation after send is created #252
Implements a details screen showing various wallet addresses
Some known issues requiring followup in future pull requests:
- #159 Colors for light theme have not been defined yet
- #160 Color blocks have 2x borders along the top/bottom of the middle item
- #161 Some address types display placeholder values
In addition to the UI, this implements improved state management for the WalletViewModel which emits a sealed class now.
Work remaining for followup PRs:
- Use drag-and-drop for chips instead of dropdown menus #85
- Add red background color for test fail screen #86
- Add images for various screens (depends on #66#64)
- Implement copy to clipboard #49