Commit Graph

84 Commits

Author SHA1 Message Date
Carter Jernigan 52b6382d47
Configure build with GitHub Actions 2022-01-26 15:13:19 -05:00
Carter Jernigan 40950a0377 [#169] Android Gradle Plugin 7.1
Besides bumping the version, we can now integrate this plugin the same way we do the others.  The version is now declared in the settings.gradle.kts.

The change is a bit noisy, due to needing to move our repository restrictions around.
2022-01-25 15:13:11 -05:00
Carter Jernigan d46cf8187c
[#145] Profile scaffold 2022-01-13 12:49:08 -05:00
Carter Jernigan 35055c3cfe
[#171] Add onboarding image assets (#172)
This also fixes a bug with state for navigation buttons not updating correctly.  Previously it was working by accident.
2022-01-06 10:48:11 -05:00
Francisco Gindre b59c7a187b
Merge pull request #170 from zcash/166-included-build
[#166] Included build for SDK development
2022-01-05 10:57:38 -03:00
Carter Jernigan eb550f680e [#166] Included build for SDK development
Note that the SDK master branch contains breaking API changes, which the Secant app hasn't yet been updated to support, so enabling an included build will have compile failures.
2022-01-04 16:20:37 -05:00
Carter Jernigan ee96e915ae
[#62] Wallet details scaffold
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
2021-12-31 08:28:16 -05:00
Carter Jernigan 205344c201
[#12] Home screen scaffold (#158)
This provides a very basic scaffold of the home screen and navigation to other child screens.  Additional work needs to be done in both the SDK and this app to build all of the functionality.  Specific known gaps
 - Displaying synchronization status to the user, pending full designs on the progress and animation behaviors
 - Improved APIs for listing and filtering transactions.  This is the issue in the SDK https://github.com/zcash/zcash-android-wallet-sdk/issues/242
 - Implement the UI for displaying transaction history
 - Display fiat currency values
 - Hook up buttons to navigate to other screens (scan #137, profile #145, send #134, request #135)
2021-12-29 14:38:14 -05:00
Francisco Gindre dcea0ec842
Merge pull request #155 from zcash/154-gradle-7.3.3
[#154] Gradle 7.3.3
2021-12-27 12:00:17 -03:00
Carter Jernigan 5df93d2423
[#120] Coroutines 1.6.0
In addition to bumping the dependency version, also leverage the new coroutines testing APIs
2021-12-24 08:34:17 -05:00
Carter Jernigan 5e4929945e [#154] Gradle 7.3.3 2021-12-23 06:50:55 -05:00
Francisco Gindre a3a30792c3
Merge pull request #152 from zcash/17-import-wallet
[#17] Import wallet
2021-12-20 12:21:06 -03:00
Carter Jernigan b03d1500ee Address review comments 2021-12-20 08:18:06 -05:00
Carter Jernigan 2e40af9390 [#17] Import wallet 2021-12-17 10:35:22 -05:00
Francisco Gindre 45b29c59d1
Merge pull request #149 from zcash/dependency-updates
Dependency updates
2021-12-17 11:47:15 -03:00
Carter Jernigan 01a1177e9a [#125] Play Publisher 3.7.0 2021-12-16 15:00:41 -05:00
Carter Jernigan c34d2b1226 [#130] Test Orchestrator 1.4.1 2021-12-16 15:00:02 -05:00
Carter Jernigan 17c5c2ba6a [#148] Kotlin 1.6.10 2021-12-16 14:57:21 -05:00
Francisco Gindre 03b89c9fff
Merge pull request #122 from zcash/51-gradle-wrapper-validation
[#51] Updated build integrity documentation
2021-12-15 11:29:28 -03:00
Francisco Gindre 3c1a87340c
Merge pull request #124 from zcash/update-setup-instructions
Update setup instructions
2021-12-15 11:28:35 -03:00
Francisco Gindre eb3d889a80
Merge pull request #129 from zcash/128-gradle-7.3.2
[#128] Gradle 7.3.2
2021-12-15 11:28:11 -03:00
Carter Jernigan c1b6e676e2 Update instructions for Kotlin plugin updates 2021-12-15 07:57:07 -05:00
Carter Jernigan b1aeb753ca [#128] Gradle 7.3.2 2021-12-15 07:40:59 -05:00
Carter Jernigan 22fe9fbfc7
Apply suggestions from code review
Co-authored-by: Francisco Gindre <francisco@z.cash>
2021-12-13 16:04:16 -05:00
Francisco Gindre b0c85ce1af
Merge pull request #126 from zcash/121-agp-7.0.4
[#121] Android Gradle Plugin 7.0.4
2021-12-13 13:56:50 -03:00
Carter Jernigan 0ca63f9c75 [#121] Android Gradle Plugin 7.0.4 2021-12-11 08:16:45 -05:00
Carter Jernigan 61c79531ac Fix broken lockfile 2021-12-11 08:11:21 -05:00
Carter Jernigan 24cd0e2b25 Update project setup instructions 2021-12-11 07:08:12 -05:00
Carter Jernigan 84795ad213
[#65] Add background gradient 2021-12-09 15:18:18 -05:00
Carter Jernigan ca457b1116
[#118] Fix backup verification UI 2021-12-09 15:03:01 -05:00
Carter Jernigan dd5390d837 [#51] Updated build integrity documentation 2021-12-09 07:58:53 -05:00
Francisco Gindre 8c514e8232
Merge pull request #111 from zcash/101-improve-performance-api-25
[#101] Improve app startup pre API 26
2021-12-07 11:24:09 -03:00
Carter Jernigan 694d5d73c9 [#101] Improve app startup pre API 26 2021-12-06 15:31:39 -05:00
Carter Jernigan 4a07b2e0b9 [#14] Splash screen 2021-12-04 09:01:21 -05:00
Francisco Gindre 1fdd86d2d8
Merge pull request #108 from zcash/88-kotlin-1.6
88 kotlin 1.6
2021-12-03 19:06:38 -03:00
Carter Jernigan 227f4be54a [#55] Partial implementation of dependency locking
With the release of Kotlin 1.6, dependency locks can apply pure Kotlin modules.

Android modules are not yet supported.
2021-12-03 08:16:24 -05:00
Carter Jernigan 66750a58b1 [#88] Kotlin 1.6
Updating the Compose compiler must happen in lockstep with the Kotlin version, because they are tightly coupled

Kotlin 1.6 also fixes some annoying issues with Java 17, which will make first-time setup less error prone for new contributors
2021-12-03 08:16:24 -05:00
Carter Jernigan f0d9c6d398
[#23] Minify release builds 2021-12-03 08:12:40 -05:00
Carter Jernigan 72c6628649
[#49] Implement copy to clipboard 2021-12-02 15:33:55 -05:00
Carter Jernigan f738666cd2
[#42] Add app deployment process
This enables deployment to Google Play internal testing.

Note these changes cannot be fully tested until the signing and API keys are in place.  Non-deployed builds are continuing to work as expected (e.g. `./gradlew assemble`)
2021-12-02 15:18:17 -05:00
Carter Jernigan 010e1a857b
[#94] Update to Zcash SDK 1.3.0-beta19 2021-12-02 15:17:55 -05:00
Carter Jernigan 1d4048318c
[#87] Enable non-transitive R classes 2021-12-02 15:17:08 -05:00
Carter Jernigan 6567f6c18d
[#100] Update AndroidX dependencies 2021-12-02 15:16:52 -05:00
Carter Jernigan c457406bc3
[#98] Detekt 1.19.0 2021-12-02 15:16:34 -05:00
Carter Jernigan d10ff6eb46
[#20] Add launcher icon 2021-12-02 15:16:20 -05:00
Carter Jernigan 8e9f8037c7 [#99] Ktlint 0.43.1 2021-12-01 15:24:34 -05:00
Carter Jernigan 541ed915c1 [#90] Fix backup res directory name 2021-11-30 14:16:22 -05:00
Carter Jernigan be08c85c38 [#89] Resolve Gradle build warnings 2021-11-30 14:16:22 -05:00
Carter Jernigan 9db77e2afe
[#16] Skeleton for wallet creation
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
2021-11-17 15:19:49 -05:00
Carter Jernigan ec983f1f8f [#28] Initial SDK integration
This sets up the infrastructure needed to continue implementing the onboarding UI for create and import of wallets.  By fleshing out the global state management in the app now, we can better manage asynchronous IO to avoid blocking the UI.

This adds:

 - Load and persistence a wallet in encrypted preferences
     - The stored data is written as a single JSON object, as opposed to multiple entries, to ensure atomic writes
     - The data is versioned, so that we can change the JSON format readily in the future
 - Detection of application state, e.g. onboarding versus loading the user's wallet
 - Touch points to initialize the SDK
2021-11-12 07:09:43 -05:00