Commit graph

426 commits

Author SHA1 Message Date
Severiano Jaramillo
6439b55c69 Properly handle the response from the node when trying to upgrade the current account to LTM. When it is successful the app shows a dialog explaining just that and also sends a request to the node to update the account info, to update the account with the LTM property set as true. When it is not successful, the app shows a dialog explaining that there was an error due maybe to an insuficient balance. 2019-02-25 09:01:45 -06:00
Severiano Jaramillo
0330588885 Created methods to request and add the BlockData to the transaction to upgrade the current account to LTM, that information is necessary. And created a different identifier to identify when a request for Dynamic Global Properties is for the nodes dialog or for the Upgrade to LTM transaction. 2019-02-22 17:34:50 -06:00
Nelson R. Perez
d59480cd23 - Fixed problem with decoding the sender's memos
- Updated graphenej
2019-02-22 18:32:23 -05:00
Severiano Jaramillo
b1a1abf231 Added a responseMap to the SettingsFragment to differentiate different requests made to the Node through graphenej's NetworkService. Added a method to obtain the encrypted private keys from the db through the SettingsFragmentViewModel, to create and sign the Upgrade to LTM transaction. 2019-02-22 17:01:32 -06:00
Severiano Jaramillo
99e378d123 Created SettingsFragmentViewModel to serve as an intermediary between the UserAccountRepository (db) and the SettingsFragment. Added the Accounts section to the Settings UI with a subsection to let the user upgrade its account to LTM. Added a listener that when the 'Upgrade to LTM' button is tapped, shows a dialog explaining what is needed to be LTM and its cost. 2019-02-21 15:11:45 -06:00
Severiano Jaramillo
eb0ae56a26 Modified SettingsFragment to extend from ConnectedFragment, which in turns handles all the communication with the Node trough graphenej's NetworkService. 2019-02-21 12:25:56 -06:00
Severiano Jaramillo
3c0c3a5114 Added Crashlytics custom key so that the crash reports include the last visited screen, that could help track crashes where the crash report alone does not include enough information. 2019-02-21 11:16:04 -06:00
Severiano Jaramillo
29c85d3d3c Changed the title and subtitle of both PINSecurityLockDialog and PatternSecurityLockDialog 2019-02-21 10:53:42 -06:00
Severiano Jaramillo
d20183e36f Forced to focus the EditText field and show the keyboard in the PINSecurityLockDialog as soon as it opens. 2019-02-21 10:27:15 -06:00
Severiano Jaramillo
2a869d7fe8 In the dialog that appears to choose a security lock, changed its title and modified the list to use a single choice list with radio buttons and pre-selecting the actual security lock option. 2019-02-21 10:09:10 -06:00
Severiano Jaramillo
2b7cd1c8c1 Updated the Material Dialogs library. 2019-02-21 09:36:50 -06:00
Severiano Jaramillo
364f6374ce Updated Google maps library version. 2019-02-21 09:30:05 -06:00
Severiano Jaramillo
3553fc623d Bumping version code to 5 and version name to 0.11.0-beta 2019-02-20 17:57:47 -06:00
Severiano Jaramillo
202466a71f Fix PatternView too big on small screens in PatternSecurityLockDialog. 2019-02-20 17:18:50 -06:00
Severiano Jaramillo
4ad841d525 Correctly handle error gracefully in the RxBus that receives information from the Node through graphenej, to avoid a crash. 2019-02-20 17:12:41 -06:00
Severiano Jaramillo
8d257876a0 Fix issue in both PIN and Pattern SecurityLockDialogs, that the error message was not appearing correctly when the user wrongly entered the PIN/Pattern and also the error message was not being cleared once the cooldown timer expired. 2019-02-20 16:53:34 -06:00
Severiano Jaramillo
9e714d8f84 Wrap the contents of the CreateAccountFragment into a ScrollView, so that all its contents are available even for very small devices. 2019-02-20 14:10:51 -06:00
Severiano Jaramillo
5570229cef Created the methods to show the messages and errors in the correct format and color in the PatternSecurityLockDialog. 2019-02-20 12:06:19 -06:00
Severiano Jaramillo
19ede70c69 Added the option to lock the pattern security lock option when the user has entered it wrong too many times. Once the cooldown timer ends the pattern is re-enabled so the user can try again. 2019-02-20 11:32:15 -06:00
Severiano Jaramillo
2ea32af377 Created the methods required to block the security lock PIN option when the user has entered incorrectly the current PIN more times than the max allowed. When that happens the text field to type the PIN gets disabled and a propper message is shown, explaining the issue and also showing the time that needs to pass until he can try again. 2019-02-20 11:03:39 -06:00
Severiano Jaramillo
97d9e8bcfb Make sure to save the hash of the user selected PIN plus the salt used to generate it are both saved into the shared preferences, when creating or importing an account. 2019-02-18 14:13:02 -06:00
Severiano Jaramillo
fac7bb031e Changed the method used to store the user selected PIN/Pattern into the shared preferences, the app now uses a hashed version of the PIN/Pattern with added salt at the beginning instead of an encrypted one. The salt is being saved into the shared preferences so that we can confirm the current PIN/Pattern when the user requires to do so. 2019-02-18 14:06:48 -06:00
Severiano Jaramillo
b0811ab2c8 Added a step to first verify the user's Security Lock before trying to send a transaction in SendTransactionFragment. 2019-02-16 17:48:50 -06:00
Severiano Jaramillo
a10a8cd836 Added the verification of the Pattern security lock option, before changing the current Security Lock or viewing the BrainKey in the Settings, when Pattern is the current security lock. 2019-02-16 16:58:36 -06:00
Severiano Jaramillo
fb329658eb Added the logic to create a new Security Lock pattern and save it encrypted in the preferences, with all used strings translated to Spanish. 2019-02-16 16:41:02 -06:00
Severiano Jaramillo
e44f4ea6e2 Created PatternSecurityLockDialog, which will be in charge of creating and confirming a new Pattern of validating the existing one, with a logic similar to PINSecurityLockDialog's. Created basic PatternSecurityLockDialog with a UI that resembles Android's. 2019-02-14 19:57:42 -06:00
Severiano Jaramillo
e8e1259314 Added the options to change the Security Lock option between PIN and None, and force the UI to show the correct one when it is changed. 2019-02-14 15:17:29 -06:00
Severiano Jaramillo
b4965d8a01 Create the methods to ask for the current Security Lock before showing the BrainKey. 2019-02-14 13:41:27 -06:00
Severiano Jaramillo
f3c85e8875 Added the functionality to PINSecurityLockDialog to check if the entered PIN corresponds with the current PIN and if that is the case let the calling fragmet about it, so that the fragment can respond accordingly 2019-02-14 12:53:35 -06:00
Severiano Jaramillo
123482e996 Added the PatternLockView library to the project, which will let us add the pattern security option. Modified the Settings screen so that when the user tries to change its Security Lock option and the current one is PIN, show the PIN dialog first. Created the PINSecurityLockDialog which will host the logic of creating and confirming the new PIN, and verifying the current one. Finally, created BaseSecurityLockDialog which will host the shared logic between the PIN and Pattern Security Lock dialogs. 2019-02-14 09:06:22 -06:00
Severiano Jaramillo
084a90d515 Add a Security section to the Settings screen, with a Security Lock option where the user can see the currently selected Security Lock option. When it is tapped a dialog appears where the user can select his desired Security Lock (PIN/Pattern/None). 2019-02-13 13:37:15 -06:00
Severiano Jaramillo
19c50a0b6e Update Navigation and Crashlytics library versions. 2019-02-12 15:33:09 -06:00
Severiano Jaramillo
d249f165d9 Change equivalent value text to just value in eReceipts. 2019-02-12 09:34:15 -06:00
Severiano Jaramillo
26abfffb1d Disable proguard's minify until it can be properly configured 2019-02-11 20:41:29 -06:00
Severiano Jaramillo
4ab5ecbe6e Bumping version code to 4 and version name to 0.10.0-beta 2019-02-11 20:40:23 -06:00
Severiano Jaramillo
5d8dbd0664 Correctly handle the scenario when the user scans a QR that requests an asset that he does not own, when that happens just parse the To and Memo fields and show a snackbar with a proper message, do not fill the amount field. 2019-02-11 20:38:46 -06:00
Severiano Jaramillo
dd8a52451a Make sure to use the asset precision to correctly format the asset amount when reading QRs in SendTransactionActivity. 2019-02-11 20:10:21 -06:00
Severiano Jaramillo
1e67fdf065 Improve the camera preview in SendTransactionFragment, so that both the preview and the scan zone are squared. 2019-02-11 18:53:18 -06:00
Severiano Jaramillo
653bdbec69 Fix a proguard rule and enable proguard on debug builds too. 2019-02-11 16:10:14 -06:00
Severiano Jaramillo
5465dcaa44 Enable proguard's minify and fix warnings to be able to create the apks. 2019-02-11 15:21:24 -06:00
Severiano Jaramillo
21c6b776af Make use of Kotlin's null safe operations to avoid NullPointerException in various places in the app. Use of the ContextCompat and ConfigurationCompat classes in different screens to safely access app configuration and resources in a backwards compatible way. 2019-02-11 12:16:56 -06:00
Severiano Jaramillo
42e0fc74b0 Changed the comparator used to sort the transactions in TransactionsActivity to compare the Long representation of the transfer ID instead of the String representation.
Even though transfer IDs are incremental in the form 1.11.x where x is the number that increments for each transfer, the field is a string and that causes errors when doing the comparisons because the string 9 is 'greater' than 123456789 so instead of doing the string comparison we had to convert the ID to a long number and only then do the comparison to make sure the transactions are correctly ordered.
2019-02-07 16:42:57 -06:00
Severiano Jaramillo
e5677436b1 Add the equivalent value to both PDF and CSV export options. 2019-02-07 13:40:26 -06:00
Severiano Jaramillo
d68b34f973 Add the functionality in TransactionsFragment to filter transactions by Equivalent Value range, taking into account the currency precision. 2019-02-07 13:20:24 -06:00
Severiano Jaramillo
abfbed91f5 Extract string resources from FilterOptionsDialog and add their Spanish translation. 2019-02-07 13:07:04 -06:00
Severiano Jaramillo
76fea6cfc1 Added the filter by Equivalent Value range option to the TransactionsFragment' FilterOptioinsDialog, which communicates the user selection back and forth. Also, renamed all string instances of Fiat Equivalent to Equivalent Value in order to use the same convention in all the screens 2019-02-07 12:52:37 -06:00
Severiano Jaramillo
d36de0b30a Fix db migration for the transfers table and for transfers of other asset than BTS, so that its propper bts_value can be fetched later. 2019-02-07 10:26:09 -06:00
Severiano Jaramillo
e4dce3cad4 Merge branch 'develop' of github.com:Agorise/bitsy-wallet into develop 2019-02-06 21:17:25 -06:00
Nelson R. Perez
94b5ae7780 - Commented some tests in the TransfersTests that no longer work due to changes in the API 2019-02-06 17:38:30 -05:00
Nelson R. Perez
cf8771ac5e - Introduced a small modification to the db migration to version 3 that will take care of filling up the 'bts_value' of pre-existing entries in the 'transfer' table made with BTS
- Extended the unit test for the 2-to-3 database migration to take in consideration said change
2019-02-06 17:38:01 -05:00