Commit Graph

130 Commits

Author SHA1 Message Date
Kevin Gorham de84bcbe7c
Updated and corrected home screen icons. 2020-08-28 04:00:32 -04:00
Kevin Gorham 5b02f188f6
Fix: Iterated on send flow from last sprint.
Addressed most design feedback from this list https://github.com/zcash/zcash-android-wallet/issues/113\#issuecomment-676622252
2020-08-28 03:58:35 -04:00
Kevin Gorham cf1c035c78
Added new design assets. 2020-08-28 03:52:11 -04:00
Kevin Gorham 25ffce866c
New: Updated receive screen and scan screen.
Removed the buttons that allowed navigation between the two screens, which has the nice benefit of removing the second way that the user could enter the Send flow. Lastly, split the address back into 8 parts and did other UI cleanup on the receive screen.
2020-08-28 03:52:10 -04:00
Kevin Gorham 462e3e10d9
Migrated some capabilities over to the MainActivity.
Most of these changes center around managing addresses. We might want to further compose the MainActivity and allow another object to handle these capabilities but for now they live in a place that's central for all fragments.
2020-08-28 03:45:58 -04:00
Kevin Gorham 46c7cee030
New: Added first-use dialog and lockbox for app settings.
Since we do not want to pester users most of our dialogs, going forward, will prompt the user select a setting not to see them again. This commit also gets rid of two separate approaches for sharedPreferences and settles on a second instance of lockbox. Our current lockbox is used for keys so we create another that contains no cryptographic info and use it for settings. This will use the device's secure element, when present and do the most secure thing falling back to our minSDK.
2020-08-28 03:45:58 -04:00
Kevin Gorham 77e77ab724
New: Update to 1.2.0 version of RecyclerView to take advantage of new StateRestorationPolicy
which automatically handles some of the more complex state management. Without this change, the recyclerview would lose its scroll position after viewing tx details. Now it handles it perfectly due to setting transactionAdapter.stateRestorationPolicy =
            RecyclerView.Adapter.StateRestorationPolicy.PREVENT_WHEN_EMPTY
2020-08-28 03:19:13 -04:00
Kevin Gorham 94f942136b
Fix: Trim improperly parsed characters from memos. 2020-08-28 03:05:08 -04:00
Kevin Gorham f314bdc78b
Fix: keypad stops working when navigating back to home screen.
Addresses one of the issues mentioned in https://github.com/zcash/zcash-android-wallet/issues/113\#issuecomment-676622252 . The core problem was that the underlying model was getting cleared but the view retained its state. The fix is to prevent clearing the model whenever the view already has a value.
2020-08-28 03:05:08 -04:00
Kevin Gorham 1577b3223d
Fix: prevent black screen after failed initialization.
If a crash occurs before feedback is started then attempting to report that crash will, itself, crash because the lateinit feedback instance is not initialized. The result is a black screen on launch! This fixes that by catching everything while trying to report an error.
2020-08-28 03:05:07 -04:00
Kevin Gorham 953aeb32ea
Allow color resources to be used in vector drawables.
Without these changes, hard coded colors must be used on APIs prior to 24.
2020-08-28 03:05:07 -04:00
Kevin Gorham 35d268622c
Allow ViewModel injection from the MainActivity. 2020-08-28 03:05:06 -04:00
Kevin Gorham 22d3e19ddf
Renamed 'WalletDetail' to 'History'. 2020-08-28 03:05:06 -04:00
Kevin Gorham 74485df432
Updated version. 2020-08-14 00:02:55 -04:00
Kevin Gorham c167099438
New: Change the default lightwalletd server.
The old server will be shutting down to coincide with our internal app deployment changes.
2020-08-13 23:48:43 -04:00
Kevin Gorham 649e50c3b0
New: Fully removed crashlytics, in favor of bugsnag. 2020-08-13 23:46:53 -04:00
Kevin Gorham 38a1f36539
New: Add bugsnag for better crash reporting.
Removed crashlytics.
2020-08-13 23:25:00 -04:00
Kevin Gorham 20c3317564
New: Entirely revamped the send flow.
Before it was more of a wizard but now it is all done on one screen. Indirectly, this also made 'cancellation' a first-class citizen, again.
2020-08-01 03:02:45 -04:00
Kevin Gorham 00ccb674aa
New: added expired state and mined height to details view.
Showing the mined height is helpful so users can more easily select their birthday height, when needed.
2020-08-01 03:00:52 -04:00
Kevin Gorham 002152c847
New: added view utilities. 2020-08-01 02:57:38 -04:00
Kevin Gorham 92b19820cb
Fix: amount not clearing when returning to the home screen.
After a transaction was sent, the old value would linger. That's fine in the case of a failure so the user can try again but it is not okay after completing a transaction. The issue was that the fragment was staying in memory and it's UiModel was still available. The fix is to let the SendViewModel be the source of truth about what amount the user has entered.
2020-08-01 02:56:42 -04:00
Kevin Gorham a9bc645cb1
Fix: wallet history now correctly scrolls to the top.
Previously, it would chop off the last transaction which happens to be what users are most interested in seeing. This was happening because the scroll was being called before the list contents were fully loaded from the database so we were scrolling to the top of an empty list.
2020-08-01 02:53:01 -04:00
Kevin Gorham 3a336396a0
New: added convenience function to get the latest height.
This is cached in the processor so we're basically just bubbling it up. No processing is needed to return this value.
2020-08-01 02:50:25 -04:00
Kevin Gorham c92cfaf07d
New: more precise birthday height support
This is important because sync times are getting longer, every day. If users can see and input a more accurate birthday, then they will have dramatically improved sync times.
2020-08-01 02:48:20 -04:00
Kevin Gorham 8e5c87e301
New: Add biometric authentication support. 2020-08-01 02:46:49 -04:00
Kevin Gorham 6f44dbcb8b
New: improve reply-to support in memos. 2020-08-01 02:45:18 -04:00
Kevin Gorham 8f9da23f27
Pull in SDK changes from hackathon. 2020-07-29 13:10:32 -04:00
Kevin Gorham f9e085f661
Merge pull request #181 from zcash/bugfix/possible-shell-injection
Fix: security finding in issue #121.
2020-07-29 02:25:46 -04:00
Kevin Gorham 9873e9efbe
Improve handling of files with spaces. 2020-07-29 02:15:00 -04:00
Kevin Gorham 9ac3f23130
Switch from 'sent from' to 'Reply-To'.
Addresses #183 but still allows the UI to show things as it did, before. We removed the aggressive address parsing because it is not necessary and might lead to vulnerabilities.
2020-07-08 16:41:54 -04:00
Kevin Gorham 7d95585c4e
Fix: security finding in issue #121.
Avoids shell injection by verifying that the supplied value is a file. Also allows for spaces in the file path, which probably fixes certaind devices that were crashing when trying to open logs.
2020-07-02 18:30:25 -04:00
Kevin Gorham f6622d2320
Merge pull request #180 from zcash/feature/show-scan-error
Feature: show message for scan errors.
2020-07-02 18:27:14 -04:00
Kevin Gorham e3a243259b
Addresses #157 by adding a scan message.
Whenever something is scanned that is not a proper address for the given network, the user will be presented with that value and an error message. This requires a bit of additional support in the SDK but, for now, a workaround is enough.
2020-07-02 18:25:12 -04:00
Kevin Gorham 5891f948b1
Fixes #106 per suggestions from @CrystalPony. 2020-07-02 18:15:01 -04:00
Hlib 45a4f43079 Changes for #177
Replaced doBeforeTextChanged and doAfterTextChanged calls with a TextWatcher
Moved the limitDecimalPlaces code to the EditText ext
Implemented uniform currency formatter functions
Hugely simplified limitDecimalPlaces code
This fixes all cases related to the user's locale
2020-07-02 14:40:44 +03:00
Hlib 68e14cc754 PR #177 changes 2020-06-29 00:39:38 +03:00
Hlib d9386b98b0 Limits decimal places in amount inputs on the home and send screens
Adds a zero in front of the amount if dot is entered on the send screen
Prevents and removes odd leading zeroes in the address text input on the send screen
2020-06-28 18:36:05 +03:00
Hlib c6872d20eb Fix address field cursor position resetting after trimming spaces 2020-06-27 23:56:03 +03:00
Kevin Gorham 258b622d58
Fixes seed phrase display issue by upgrading dependency. 2020-06-11 18:45:28 -04:00
Kevin Gorham 1ceaa2a996
Update to the latest SDK which adds explicity x86_64 compatibility. 2020-06-11 17:00:35 -04:00
Kevin Gorham 24064e7fd5
Contributing guide and helper file for easier builds. 2020-06-10 18:06:38 -04:00
Kevin Gorham 1bda85c1c4
Updated product name and removed local dependency. 2020-06-10 17:09:20 -04:00
Kevin Gorham e9d7bea423 Simplify the build, per the README instructions. 2020-06-10 12:53:23 -04:00
Kevin Gorham de69567812
Explicitly disable all feedback, dev info and crash reporting.
Addresses https://github.com/zcash/zcash-android-wallet/issues/143 by placing everything behind a user setting that can be enabled in the future by users who want to continue helping us improve the user experience. For the most part, this will just be turned on for internal company releases in order to continue learning and improving the app.
2020-06-10 10:02:53 -04:00
Kevin Gorham 340fb8c993
Address security finding #127 by validating address.
This just needs to be tested on detail views with a lot of transactions to be sure that rapid scrolling doesn't cause too much backpressure.
2020-06-10 08:50:52 -04:00
Kevin Gorham ebbe69125c
New: Provide checksum warning to user.
If the user enters an invalid seed phrase, let them know immediately, per #120.
2020-06-10 08:26:21 -04:00
Kevin Gorham 4c4ef46efe
Updated to the newly refactored (and published) SDK. 2020-06-10 07:49:38 -04:00
Kevin Gorham 901db38ee0
Remove NovaCrypto dependency because of license issue.
Add Zcash implementation instead.
2020-06-04 13:50:43 -04:00
Kevin Gorham 7717612524
Dependency cleanup so plugin dependencies are easier to find. 2020-05-27 14:37:44 -04:00
Kevin Gorham 5632de7493
Bump version to 1.0.0-alpha25 2020-03-27 16:47:07 -04:00