* [#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>
- Removes unused Oboarding alternative LongOnboarding screen with all related resources
- Removes related integration tests and screen decision logic
- Removes related is_short_onboaridng remote configuration logic
- Closes#1003
[#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
* [#951] Add Archivo font
- Font added
- License documentation file updated
- This slightly changes the provided font accessibility. Both Inter and Archivo are now available with the `ZcashTheme.typography` API.
- Closes#951
* Update license documents
* [#664] Transaction history
* Move under the screens folder
* Fix Request screen Preview
* Add TODO link
* Improve Text design component
* HistoryView UI enhancing
* Adopt ZcashCurrency API
* Add transaction history sync state
* Compact time format
* Bump Compose Material Icons to v1.5.0-beta02
* Add support for pending and expired transactions
* Add progress in syncing with no transaction yet
* Screenshot test
* Simplified no transaction check
* Transaction history manual test case
* Home screen history button test
* Fix flow collecting
* View tests
* Sent transaction sign
* Remove unused transaction snapshot from VM
---------
Co-authored-by: Honza <rychnovsky.honza@gmail.com>
* [#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>
Combining multiple flows will hang if the group of flows is empty
- Updated profile installer lib
- Removed benchmark operations receiver fix
- Added new benchmark results
---------
Co-authored-by: Honza <rychnovsky.honza@gmail.com>
Adds an option to enable/disable background sync, as well as an option to keep the screen on during sync
---------
Co-authored-by: Honza <rychnovsky.honza@gmail.com>
These files are used by Android Studio in debug builds to discover the version of Compose being used by an app. They should be preserved for debug builds but can be stripped from release builds.
Co-authored-by: Honza <rychnovsky.honza@gmail.com>
* Temporary enable FTL test
* Enable emulator.wft tests for ui-integration-test module on CI
* Rebase onto main
* Test Fladle configuration for ui-integration-test module
* Fix Fladle for ui-integration-test module
* Rename ui-integration-test module flade configuration
* Disable again FTL action from PRs
* Clear support for FTL from ui-integration-test module
* Refactor the emulator.wtf support across our modules.
* [#599] Macrobenchmark test module
- Created new dedicated macrobenchmark test module
- Updated related Architecture and Setup documentation
- Connected to app module
- New benchmark build type
- Related run configuration above custom Gradle task
- Basic startup benchmark test included
* Benchmark build variant simplification
* Run benchmarking simplification
* Documentation update.
* New property IS_SIGN_RELEASE_BUILD_WITH_DEBUG_KEY
- It enables signing the release build with debug key configuration. Default value is false.
- First, we check if we can sign it with release configs, otherwise with debug.
- Documentation updated.
* Benchmarking documentation update
* Adds support for Android SDK 32 and 33
- Bumped benchmark library to the latest alpha version
- Which results in a need of adding profile-installer library in target module (app)
- Now we're able to run benchmarking on Android SDK level 29 and higher (i.e. latest levels included)
- Updated related documentation
* Enables benchmarking for emulators
- I've decided to support emulator devices with our benchmark test module at the end. Documentation and code comments explain to a user that the results may not be the same as on a real physical device. But until we have it set up in CI, we can benefit from having it set up like this.
* Temporary enable FTL test
* Enable emulator.wft tests for ui-integration-test module on CI
* Test Fladle configuration for ui-integration-test module
* Fix Fladle for ui-integration-test module
* Rename ui-integration-test module flade configuration
* Disable again FTL action from PRs
* Clear support for FTL from ui-integration-test module
* Refactor the emulator.wtf support across our modules.
* [#598] Refactoring ScreenshotTest to a separate test module
- Created a new com.android.test module
- Moved our ScreenShotTest to the separate module
- Enabled the new module for emulator.wtf service
- Cleaned up the app module from ScreenShotTest
- Updated Architecture and Setup documentation
* Exclude pure test modules from Detekt check
* Improved run configurations
- Changed common emulator.wtf run configuration name to align with the rest of our configurations
- Added configuration for the new screenshot tests module
- Updated documentation
* Linked code TODO
* Disabled self-instrumenting
- As it appeared to be the way how to leverage the app module Gradle settings in this new module
- App name is taken from app module settings
- Screenshot tests works with pseudolocales again
* [#525] Refactoring Integration Test Module
- Change module type to test + related Gradle scripts change
- Rename module to - remove the trailing Lib suffix + documentation
- Move module structure from test to main source
* Static checks result fix
* Temporary enable FTL test
* Test updated emulator.wft version
* Update locked emulator.wtf dependency version
* Enable emulator.wft tests for ui-integration-test module on CI
* Fix enable emulator.wft tests for ui-integration-test module on CI
- Update documentation
* Test Fladle configuration for ui-integration-test module
* Fix Fladle for ui-integration-test module
* Rename ui-integration-test module flade configuration
* Disable again FTL action from PRs
* Clear support for FTL from ui-integration-test module
* Refactor the emulator.wtf support across our modules.
* Fix Mermaid graph syntax
* Minor change in comment
* Fix ui-integration-test module run configuration
- Fixed manually
- Aligned with other run configurations
- Stable and beta versions of AS behave differentially, but after this fix it seems to be working as expected in both
* Update emulator.wtf run configuration
- Covered ui-integration-test module too
- Changed configuration name
* [#167] Increase brightness when displaying QR Code
* Use collectWith(lifecycleScope)
* Fix copy-paste errors
* manual test
Co-authored-by: Carter Jernigan <git@carterjernigan.com>
* [#551] Prevent screenshots when seed phrase is displayed on the screen
* Minor review changes
Make ScreenSecurity object simpler by eliminating additional ways of mutating its state.
* Add debug and test checks
* secured screens with seed phrase
* codereview fixes
* added test for Seed screen
* added Screen security test for backup views
* test for ScreenSecurity class
* added manual testing for Screen security
* ktlint format
* Clean up ScreenSecurityTest
* Remove debug check
I decided this would be annoying, especially for manual testing
* ktlint
* removed test logging
* removed test logging
Co-authored-by: Carter Jernigan <git@carterjernigan.com>