Commit Graph

495 Commits (master)

Author SHA1 Message Date
Severiano Jaramillo d7c728db2f Added the libraries to create PDF and CSV files directly from the app. Verify that the BiTSy folder exists in the external storage and if it doesn't then it creates it. Generate the filtered transactions' PDF with 7 columns: From, To, Memo, Date, Time, Asset Amount, and Fiat Equivalent. 2019-02-05 10:50:40 -06:00
Nelson R. Perez c285bf6da7 Completed the comments to the onCleared function 2019-02-04 21:02:41 -05:00
Nelson R. Perez 35561059ce This commit finishes with the second part of the equivalent values calculation. In this part of the procedure a query is performed
looking for entries in the 'transactions' table that are missing a corresponding entry in the 'equivalent_values' table.

Whenere a transaction is detected to not have an equivalent value for a given fiat, a network request is made to the Coingecko's API in order
to obtain the BTS market value at the day of that transaction. An equivalent value is thus calculated using the 'bts_value' of the transaction.
2019-02-04 21:00:57 -05:00
Nelson R. Perez 262a0d58ad - Automatically setting the bts_value column for BTS transfers. 2019-02-03 18:13:00 -05:00
Nelson R. Perez 85846b6c75 - A LiveData wrapped query looking for entries of the 'transfer' table that lack a BTS value now automatically trigger a GetMarketHistory network call
- The network response is parsed and a BTS equivalent value is stored in the database
2019-02-03 15:08:32 -05:00
Severiano Jaramillo b0e909072f Add a check to verify that the storage permission is already granted and if not then ask for it, before showing the export options dialog in the TransactionsFragment. 2019-02-01 16:29:21 -06:00
Severiano Jaramillo df5f8c46f7 Create Export filtered transactions dialog in TransactionsFragment, which opens when the user clicks on the Toolbar's export button, with the corresponding Spanish translation of the new strings. 2019-02-01 15:57:56 -06:00
Nelson R. Perez 771aed9429 Linking the getTransfersWithMissingValueIn method to the repository, viewmodel and activity 2019-01-31 22:26:41 -05:00
Nelson R. Perez f197e44262 Introducing the TransfersDao#getTransfersWithMissingValueIn(symbol: String) method, used to obtain only the transfers that lack a specific equivalent value entry, and related tests 2019-01-31 22:26:41 -05:00
Nelson R. Perez a10c527956 Introducing an optional field called bts_value in the Transfer entity 2019-01-31 22:24:21 -05:00
Severiano Jaramillo 032c627725 Order assets alphabetically on Spinners in ReceiveTransactionFragment, SendTransactionFragment and TransactionsFragment's FilterOptionsDialog, always trying to select BTS by default. 2019-01-31 19:37:05 -06:00
Severiano Jaramillo a8fe1ed2c5 Make the list of assets in the Balances section to be ordered by asset symbol ignoring the letters case. Show the bit prefix for smartcoins in the Transactions list. 2019-01-31 19:16:00 -06:00
Severiano Jaramillo b628260d77 Make all smartcoins to show the 'bit' prefix in all the screens that show them, but keeping the original asset symbol unmodified to be used in the places where the symbol is required. 2019-01-31 18:52:41 -06:00
Severiano Jaramillo 535796b0be Change the db assets table to include the issuer column, and provide the db migration. 2019-01-31 17:59:14 -06:00
Severiano Jaramillo 5739922bce Merge branch 'develop' of github.com:Agorise/bitsy-wallet into develop 2019-01-31 17:01:18 -06:00
Severiano Jaramillo 785b555baf Completely kill the app after three minutes of innactivity. 2019-01-31 17:01:09 -06:00
Nelson R. Perez deb8cf4401 Merge branch 'feat_equiv_values' into develop 2019-01-31 17:14:28 -05:00
Severiano Jaramillo 1a064c0a5e Avoid disabling the memo field in SendTransactionActivity if the QR code read's memo does not start with PP. 2019-01-31 16:12:26 -06:00
Severiano Jaramillo 981a14723e In the MerchantsFragment's Map InfoWindows allow line wraps for both name and address and if a section has no data do not show a blank line but just hide it. 2019-01-31 15:42:36 -06:00
Severiano Jaramillo fbb66864e5 Change the method to zoom the map camera when a suggestion is selected from the Toolbar's SearchView in MerchantsFragment, it now shows a much bigger area. 2019-01-31 15:22:40 -06:00
Severiano Jaramillo 980517c168 Merge branch 'develop' of github.com:Agorise/bitsy-wallet into develop 2019-01-31 15:00:46 -06:00
Severiano Jaramillo eaa661ba5d Fix crash in TransfersLoader when changing between night and day mode. 2019-01-31 14:59:40 -06:00
Nelson R. Perez 65250c57f5 Added an error handler to the RxBus instance subscription call 2019-01-31 15:27:00 -05:00
Nelson R. Perez 622205069d - Modified equivalent_values table in order to work directly with fiat values
- Introduced version 3 of the database with said modifications
- Introduced basic db migration
2019-01-31 15:12:14 -05:00
Severiano Jaramillo c7138c5e22 Dynamically obtain the status bar and navigation bar height, to automatically and correctly place the Toolbar and Map UI Controllers in MerchantsFragment. 2019-01-31 13:36:38 -06:00
Severiano Jaramillo 6e5c6b50b8 Enable crashlytics reports on release builds only, avoiding crashes in the debug version when trying to initialize crashlytics. 2019-01-31 12:18:21 -06:00
Nelson R. Perez d0218727e9 Enabling crashlytics reports on release builds only 2019-01-30 22:38:01 -05:00
Severiano Jaramillo 9594726052 Bumping version code to 3 and version name to 0.9.1-beta 2019-01-30 12:19:39 -06:00
Severiano Jaramillo e328eb149b Make sure the popup menu is dismissed when the toolbar or the search icon are clicked in the MerchantsFragment. 2019-01-30 12:11:57 -06:00
Severiano Jaramillo 1505a5642c In MerchantsFragment, change the popup window background to transparent to match the maps theme. Hide the MyLocation button while the popup is open to avoid it making it hard to see the switches in the popup menu. Color the popup menu's switches to use the same green and yellow color as their corresponding pon markers. Move the popup window down to remove the overlapping with the Toolbar. 2019-01-30 11:15:07 -06:00
Severiano Jaramillo 4a47b5b637 Created AutoScrollingTextView which automatically scrolls its contents horizontally in case the contents do not fit the available width and used it in the Map suggestions' address to display the complete address. Also, improved the Map Toolbar color. 2019-01-30 09:35:06 -06:00
Severiano Jaramillo 28e0e9df52 Make the MerchantsFragment's custom translucent Toolbar works with the up button, and menu items, looks good in day and night modes and make sure everything goes back to normal when returning to the HomeFragment. 2019-01-29 23:46:04 -06:00
Severiano Jaramillo 4d8ed68912 Add translucent navigation and status bar to the MerchantsFragment and adjust the content size so that the map grows below them. 2019-01-29 22:33:32 -06:00
Severiano Jaramillo ba82d50cc6 Change google map's night mode style. 2019-01-29 16:31:15 -06:00
Severiano Jaramillo def6fd4ec5 Disable the memo field in SendTransactionFragment when reading a QR code that contains a memo, to avoid problems in case the receipient is expecting that exact memo. 2019-01-29 15:57:07 -06:00
Severiano Jaramillo 3a0527a5bf Delay camera activation in SendTransactionFragment after the transition from the homescreen, to avoid flicker during the transition. 2019-01-29 15:00:30 -06:00
Severiano Jaramillo fb7c91d6bb Updated Navigation Architecture Component library version and tested it worked fine. Setted a maximum width to the MerchantsFragment's SearchView so that it does not move other items out of the screen. Added the auto hide keyboard feature to ReceiveTransactionFragment's AutoCompleteTextView when it loses focus. 2019-01-29 11:08:32 -06:00
Severiano Jaramillo 5fc5db88c2 Show merchants and tellers suggestions in MerchantsFragment's SearchView if they are enabled in the popup window. 2019-01-29 10:44:08 -06:00
Severiano Jaramillo 732d48796b Update google maps 2019-01-29 10:36:09 -06:00
Severiano Jaramillo e02ff42a85 Remove google_maps_api from version control. 2019-01-29 10:25:21 -06:00
Severiano Jaramillo 6bc3b77b79 Bumping version code to 2 and version name to 0.9.0-beta 2019-01-28 21:53:18 -06:00
Severiano Jaramillo c65cf1b69e When a suggestion is selected in the MerchantsFragment's SerachView, zoom and move the map camera to center the corresponding marker. 2019-01-28 21:50:32 -06:00
Severiano Jaramillo 978e8d6ee2 Improve responsivenes of suggestions in MerchantsFragment's SearchView by reducing the debounce effect and clearing the query results if the query is shorter than 2 chars. 2019-01-28 19:48:11 -06:00
Severiano Jaramillo 9ecac53f62 Create a new model MapObject to combine the returned list of Merchants and Tellers into the suggestions to appear under the MerchantsFragment's SearchView. 2019-01-28 19:21:19 -06:00
Nelson R. Perez aebff15033 - Added new methods that allow a query of a single term over name, address, phone, telegram an website fields
- Linking this result to the code that handles the UI update (working for merchants only)
2019-01-28 18:34:07 -05:00
Severiano Jaramillo 07e39e9001 Merge branch 'develop' of github.com:Agorise/bitsy-wallet into develop 2019-01-28 16:32:49 -06:00
Severiano Jaramillo 84a524c486 Update MerchantsFragment's SearchView suggestions UI so that they include the merchant or teller icon, to make it easier for users and improve UX. 2019-01-28 16:14:11 -06:00
Severiano Jaramillo f70e0434ff Added a custom layout to show suggestions to MerchantsFragment's SearchView so that it can show Merchat/Teller name and address. Added a way to figure out if the selected suggestion is a Merchant or a Teller, so we can decide on how to proceed to find its correct marker on the map. 2019-01-28 15:56:50 -06:00
Severiano Jaramillo db58d601f4 Added a SearchView to MerchantsFragment's Toolbar, with an autocomplete feature that once the user starts writing shows suggestions to the user and listens when he selects one of those suggestions. The suggestions show dummy data for now, but it will query the database to obtain such suggestions. 2019-01-28 15:02:49 -06:00
Severiano Jaramillo 8aab7c03ac Added a dialog to explain what merchants and tellers are, which is opened in from the About option in the Merchants & Tellers's popup menu. 2019-01-26 16:25:59 -06:00
Agorise 7e17a612cd
Update strings.xml
added "y Tellers" to title on toolbar
2019-01-26 10:10:09 -06:00
Severiano Jaramillo 227a52d032 Add the methods to hide/show both merchants and tellers markers depending on the current switches selection in the corresponding popup menu. 2019-01-25 22:33:20 -06:00
Severiano Jaramillo 0c41c76097 Make sure the MerchantsFragment's custom popup dialog is dismissed if it is open and the user clicks anywhere else in the map. 2019-01-25 22:11:05 -06:00
Severiano Jaramillo 52c2cf8211 Added an (i) icon to the About section in the MerchantsFragment's custom popup menu and improved the menu positioning moving it a bit to the top so that it overlaps the toolbar. 2019-01-25 21:51:58 -06:00
Severiano Jaramillo b9497a2db4 Created a three vertical dots icon and use it in the MerchantsFragment's Toolbar. Then forced that icon to display a custom Popup menu to control which pins will appear on the map (merchants and/or tellers). 2019-01-25 20:03:22 -06:00
Severiano Jaramillo 285a4b6c49 Add custom marker info window to teller markers, to show the complete information as with the merchants. 2019-01-24 19:18:59 -06:00
Severiano Jaramillo 2e07bc512f Improve merchants' marker info window layout. Added proper padding and nice rounded corners with a 1dp border to improve visibility. 2019-01-24 17:02:28 -06:00
Severiano Jaramillo 69c27d3092 Create a custom layout for Merchants marker's info dialogs in the MerchantsFragment map, to be able to show all the required information using a custom adapter. 2019-01-24 15:22:51 -06:00
Severiano Jaramillo 6a8def0cf1 Make some changes to the Merchant's map Cluster logic, so that both Merchants and Tellers clusters work at the same time and automatically as the map camera moves. 2019-01-24 13:37:06 -06:00
Severiano Jaramillo fbbb4f9f48 Add the map icons for teller and teller cluster. Create TellerRepository to delegate it the responsability to keep the tellers info up to date into the database and serve the info to the MerchantsViewModel and MerchantsFragment immediatly. Create TellerMarketRenderer which is in charge of creating and serving the icons used for the tellers and tellers' clusters in the map. 2019-01-23 19:15:06 -06:00
Severiano Jaramillo 5331d8ebe2 Improve Merchants & Tellers map default location and zoom. 2019-01-23 16:30:34 -06:00
Severiano Jaramillo 38d6d7f7a8 Improve MerchantRepository to perform merchants update only if at least one day has passed since the last update. Also, perform a full delete of merchants before inserting the list received from thewebservice to make sure merchants removed there are also removed from the app. 2019-01-23 16:08:04 -06:00
Severiano Jaramillo 4bb53de009 Create MerchantViewModel and MerchantRepository, the first to hold the merchants data and deliver it to the MerchantsFragment and the second to serve as a single source to fetch the Merchants list. When it gets a request for the merchants it retrieves and serves the list from the database and meanwhile refreshes the list from the WebService. 2019-01-23 15:37:13 -06:00
Severiano Jaramillo 6aad0ca624 Override the method that is called when a cluster is tapped, so that the map updated the camera focus on an area that shows all the items from the selected cluster. 2019-01-23 12:42:19 -06:00
Severiano Jaramillo a913f380bb Create MerchantMarkerRederer to create custom merchant and custom merchant cluster icons to show on the map. Use the same merchant cluster icon as in palmpay.io but with white text. 2019-01-23 12:17:46 -06:00
Severiano Jaramillo 6abcf6ed13 Add the android-maps-utils library and use the Cluster functionality to display a nice item amount when the markers are too close. 2019-01-22 20:14:17 -06:00
Severiano Jaramillo 8c56250d1a Position the Merchants & Tellers Map by default somewhere near Panama with a zoom of 6. 2019-01-22 16:30:23 -06:00
Severiano Jaramillo 2ed39fabdd Create a night mode style for the Merchants & Tellers map and apply it only when the app is in night mode, use the default map theme otherwise. 2019-01-22 15:53:14 -06:00
Severiano Jaramillo 227e0224a1 Add location permission request in the Merchants and Tellers screen, and if accepted show the icon on the map so that it can be moved to the current user's location if it is available already. Also, show the zoom UI controls on the map. 2019-01-22 15:31:24 -06:00
Severiano Jaramillo 55e57a11ad Change Toolbar title of Merchants section to Merchants & Tellers 2019-01-22 14:00:35 -06:00
Severiano Jaramillo 4558d54d27 Create db migration to add and use the merchants and tellers tables. 2019-01-22 13:55:28 -06:00
Severiano Jaramillo 6ed34d20eb Created MerchantDao and TellerDao to be able to access the merchants and tellers db tables. Modified Room to export the db schema to enable proper testing. 2019-01-22 13:28:17 -06:00
Severiano Jaramillo e043b83b36 Improve query to obtain the merchants information from the webservice. Move the Merchant model to the entities folder and annotate it so it can be used to create a Room table. Create the Teller entity to be used to fetch the Tellers info from the webservice and create the tellers Room table. Removed not needed classes Ambassador and AmbassadorLocation. 2019-01-22 13:11:23 -06:00
Severiano Jaramillo 4c3822e8c1 Fix crash with Google maps in Android 9 [Pie] devices. 2019-01-22 10:17:22 -06:00
Severiano Jaramillo 357cc97e40 Improve homescreen buttons layout, making the camera button bigger and putting it over the Send button in the border at ~-140°, and removing the line that connected the camera and send buttons. 2019-01-22 09:56:58 -06:00
Severiano Jaramillo 6841e3eb9a Created a tab_icon_selector file to dynamicaly color the Pie chart icon in the HomeFragment tabs in the activated/deactivated state in both day and night mode to match the same colors as the other tab's text. 2019-01-21 21:54:18 -06:00
Severiano Jaramillo e3f8e1d923 Remove '#bitsy' Memo from QR codes generated in ReceiveTransactionFragment. 2019-01-21 21:54:03 -06:00
Severiano Jaramillo ef5834264b Force the back button in the Toolbar in different screens to use the same white color as the Toolbar title text. 2019-01-21 12:05:40 -06:00
Severiano Jaramillo 00b8919566 Created a blue lightning bolt icon and use it in the Homescreen to show it to the left of the account name in case it is LTM. 2019-01-21 11:13:54 -06:00
Severiano Jaramillo 848768a038 Change fiat placeholder in the Transactions items. 2019-01-16 16:47:29 -06:00
Severiano Jaramillo 0da52c2ee8 Prepare the strings.xml file for translation by putting every string resource into a single line. Create Spanish translation human verified. 2019-01-16 16:40:49 -06:00
Severiano Jaramillo cfc8b13dbb Avoid adding an operation to send a fee to agorise when the amount is zero, this can happen when the amount that is going to be sent is very small such that 0.01% of that is less than the minimum amount available of that asset. 2019-01-16 15:31:54 -06:00
Severiano Jaramillo ea80a3e7e3 Improve SendTransactionFragment's QR code read feature to account for cases when the QR code is for a smartcoin (starts with bit). 2019-01-16 13:48:35 -06:00
Severiano Jaramillo 9a8af1b918 Make ReceiveTransactionFragment extend from ConnectedFragment to reduce boilerplate and repeated code. Change the method used to obtain the Assets list from the db in ReceiveTransactionFragment, it now retrieved only those Assets for which the user has a Balance > 0. Improve ReceiveTransactionFragment's function that obtains the suggestions for the AutoCompleteTextView when the user wants to receive a different Asset, to avoid crashes if the information received does not have the expected format. 2019-01-16 11:34:01 -06:00
Severiano Jaramillo ec57bea829 Created an extension function that can be used to hide the keyboard from any view and used that extension function to add the behavior of hiding the keyboard when a EditText loses focus which was included in a custom view MyTextInputEditText. Then used that class in all EditText fields in SendTransactionFragment, ReceiveTransactionFragment, ImportBrainkeyFragment and CreateAccountFragment to introduce the described behavior. 2019-01-16 10:30:11 -06:00
Severiano Jaramillo 12d17c54d3 Improve HomeFragment layout by increasing elevation (and shadows) of buttons, changing the line that connect the camera and send buttons to red color and also improving the Send and Receive text by using caps and a small spacing from the buttons above. 2019-01-16 09:47:17 -06:00
Severiano Jaramillo 7f10c931a4 Reduce the amount of assets that should be sent to agorise as a network fee when sending transactions using Bitsy. 2019-01-16 09:18:17 -06:00
Severiano Jaramillo 7165df42cb Fix crash when in ImportBrainkeyFragment when the user tries to import an account with an incorrect BrainKey. Also, removed trailing spaces from the written BrainKey before proceeding to verify it. 2019-01-16 09:02:18 -06:00
Severiano Jaramillo 887d9a249f Improve FilterOptionsDialog layout by moving the 'IgnoreNetworkFees' section above the 'Fiat Amount' section. 2019-01-15 21:43:24 -06:00
Severiano Jaramillo 3014e12a5a Add the functionality to filter all transactions sent to the agorise account, which are presumably transaction network fees. 2019-01-15 21:28:24 -06:00
Severiano Jaramillo 027f690480 Add a switch to the bottom of the Transactions' FilterOptionsDialog which will be used to hide/show the network fees sent to Agorise. Also added the communication back and forth from the Transactions to the Dialog to keep updated the user selection of the switch. 2019-01-15 21:23:54 -06:00
Severiano Jaramillo 6d4b229e7e Disable proguard's minify meanwhile a solution is found to avoid wrong and different behavior in the app when minify is enabled. 2019-01-15 20:58:18 -06:00
Severiano Jaramillo 6dc5e54ad1 Force amount validation in SendTransactionFragment when an asset is selected in Assets spinner. The amount validation was done only after the user changed the amount but it has to also be validated when the user selects a different Asset, because it is probable to have less of that asset than what is already typed in the amount field. 2019-01-15 17:13:02 -06:00
Severiano Jaramillo bda2299cb5 Create a list of IDs of BTS and all the SmartCoins in the Constants class, so that we can easily decide whether sending the agorise fee or not. If the Asset ID is contained into the list then the fee is sent. 2019-01-15 17:06:00 -06:00
Severiano Jaramillo 529d5db41d Improve SendTransactionFragment by adding description comments to all non-trivial functions and variables, and avoid crashes in many parts by always adding null-safe operations. 2019-01-15 14:34:42 -06:00
Severiano Jaramillo 086660409f Add the code to send the fee to Agorise in the case the transfer Asset is BTS.
This is the easiest case because we only need to calculate the fee as a percentage of the transfer and add it to the Transaction.
2019-01-15 13:46:27 -06:00
Severiano Jaramillo cb07673c8d Force the app to go back to the home screen once a transaction is successfuly sent. 2019-01-15 11:22:28 -06:00
Severiano Jaramillo 33f45a6775 Activate the memo functionality in SendTransactionFragment.
The memo encryption was not working properly for two reasons, there is a number called nonce used to encrypt the memo and it has to be positive. The app was sometimes using a negative nonce which caused encryption problems. The second problem was that the nonce was being serialized as an hexadecimal but the node was expecting a decimal so it was not able to convert back the nonce from string to decimal.
2019-01-15 11:08:15 -06:00
Severiano Jaramillo 98cfbbf90a Change versionName to 0.8.0-beta. 2019-01-14 15:29:58 -06:00
Severiano Jaramillo 561612368a Make node dialogs in ImportAccountFragment and SettingsFragment to stop asking for the DynamicGlobalProperties (block number, etc.) once they are dismissed. 2019-01-11 13:52:55 -06:00
Severiano Jaramillo 81531cc8b6 Add functionality to ImportBrainkeyFragment's 'View Network Status' to show the nodes dialog. Most of it was copied fom the same dialog already implemented in the Settings screen. 2019-01-11 13:46:50 -06:00
Severiano Jaramillo dd619be8c8 Update ImportBrainkeyFragment layout to show the 'View Network Status' text and newtwork status icon at the bottom. 2019-01-11 13:27:34 -06:00
Severiano Jaramillo 464f8da353 Change the elevation of enabled buttons to 3dp. 2019-01-10 16:10:55 -06:00
Severiano Jaramillo 67ad71ff88 Change brainkey error description and create and import button labels in ImportBrainkeyFragment. Also added an 'Or' string between the import and create buttons. 2019-01-10 15:57:53 -06:00
Severiano Jaramillo 8a02ab43df Remove focus from the first EditText by default in ImportBrainkeyFragment. 2019-01-10 15:32:30 -06:00
Severiano Jaramillo e3f227d5bd Add type checks to NetworkService responses in ImportBrainkeyFragment to avoid crashes. 2019-01-10 15:07:27 -06:00
Severiano Jaramillo 38039fc76b Add the selected node information to the Crashlytics reports. 2019-01-10 14:23:10 -06:00
Severiano Jaramillo 7c1a3577e9 Extract string resources from TransactionsFragment's FilterOptionsDialog, so they can be easily translated. 2019-01-10 12:44:56 -06:00
Severiano Jaramillo bd0b74eeaf In the FilterOptionsDialog, add the option to filter by Asset, where the user can select to see transactions involving all assets or only a specific one that can be selected in a Spinner. This selection is communicated back to the TransactionsFragment to respond and show the transactions matching with the user selected criteria. 2019-01-10 12:23:17 -06:00
Severiano Jaramillo f62286747c Create DateFragmentPicker, which shows a dialog with a calendar where the user can select a date. This picker is used in TransactiondFragment's filter dialog to filter transactions by date. The picker looks nice in both day and night mode. 2019-01-09 20:39:42 -06:00
Severiano Jaramillo 5470ca1523 Chaged BrainKey modal in the Settings, it does not copu the BrainKey to the clipboard anymore, it just shows it so that the user writes it down. 2019-01-09 18:16:15 -06:00
Severiano Jaramillo 5075c59b7b Remove border from FloatingActionButtons in HomeFragment and SendTransactionFragment.
This was the blue border that appeared around the rounded buttons in the mentioned screens.
2019-01-09 18:04:52 -06:00
Severiano Jaramillo 941a558a08 Force the app to start updating the account information just after it is imported/created.
This wasn't happening automatically the first time the account was imported, the the user had to close and reopen the app for the transfers update to take place. The problem was that the account information was only fetched from the shared preferences when the app started, thus a method to force the fetch was introduced just after the user imports/creates his user account.
2019-01-09 17:19:49 -06:00
Severiano Jaramillo e16d651a63 Fix crash related to trying to create a Dialog from a thread other than the UI thread. Also, add the password toggle buttons to the PIN fields in CreateAccountFragment. 2019-01-08 20:53:57 -06:00
Severiano Jaramillo 8894c48e5c Fix problem with Navigation from the ImportBrainkeyFragment and CreateAccountFragment when an account is imported/created and the user has to be taken back to the MainFragment. 2019-01-08 20:18:42 -06:00
Severiano Jaramillo 78909498c0 Added method to create Account using the Agorise's faucet, and also making use of Retrofit's suggested ServiceGenerator. 2019-01-08 16:35:14 -06:00
Severiano Jaramillo 860947b351 Create BaseAccountFragment, which is an abstract class that encapsulates the code needed in both ImportBrainkeyFragment and CreateAccountFragment to store into the information of the created/imported user account into the database. 2019-01-08 13:27:18 -06:00
Severiano Jaramillo 64d30f42ab Create method to validate if the suggested user account given by the user is an available account name or not and display a message to the user with the result, in CreateAccountFragment. 2019-01-07 20:35:29 -06:00
Severiano Jaramillo e530dc531e Add account name validation to CreateAccountFragment using Kotlin extension functions and RxJava debounce operator. 2019-01-05 20:47:04 -06:00
Severiano Jaramillo 9236e374bc Add PIN and Pin Confirmation validations to CreateAccountFragment using RxBindings with debounce, also add functionality to the 'CANCEL' button. 2019-01-05 20:02:07 -06:00
Severiano Jaramillo 14a4f79cb2 Added the BrainKey Bitshares dictionary as a text file in the app assets and make use of it to automatically generate BrainKeys in CreateAccountActivity when the user is trying to create a new account. 2019-01-05 16:30:57 -06:00
Severiano Jaramillo 991967cd7d Created CreateAccountFragment with its layout and the methods to show it when the user clicks the 'Create' button in the ImportBrainkeyFragment using Navigation AAC. 2019-01-05 15:23:42 -06:00
Severiano Jaramillo 0deecca8ed Remove no longer needed code from ConnectedActivity and MainActivity and add a description to each of the Activities to describe their purpose. 2019-01-04 17:01:06 -06:00
Severiano Jaramillo 2dd843fe91 Removed ImportBrainkeyActivity and created ImportBrainkeyFragment instead, with this the app is now using a single activity and all the content is divided in fragments. All the navigation inside the app is now controlled by the AAC Navigation component. 2019-01-04 16:50:56 -06:00
Severiano Jaramillo 58e1e0a575 Removed LicenseActivity and created LicenseFragment instead, to comply with the proposed app architecture using the AAC Navigation component where there is only one Activity and all the views are represented by Fragments. 2019-01-04 15:53:29 -06:00
Severiano Jaramillo 4e64b10014 Created ConnectedFragment, that encapsulates the repeated code which encapsulates the repeated code Fragmets that connect to the NetworkService use. Simplified SendTransactionFragment by extending the newly created ConnectedFragment. 2019-01-04 13:13:55 -06:00
Severiano Jaramillo 10014263d7 Improve query to obtain user balances to avoid showing assets with a balance equal to zero. 2019-01-03 17:11:58 -06:00
Severiano Jaramillo 2db74516bb Create colorToolbarDark and colorStatusBar to color the toolbar and the status bar in the night mode theme and add the necessary methods to use them in the app accordingly. 2019-01-03 17:06:37 -06:00
Severiano Jaramillo 5cde97f1e7 Speed up the slide in/slide out animations used in fragment transitions. 2019-01-03 16:40:14 -06:00
Severiano Jaramillo 39ad3cca01 Changed the colorSend and colorReceive colors and added their respective darker versions. Changed the toolbar and status bar color in both the Send and Receive Transaction Fragment to colorSend and colorReceive with their darker variants accordingly. 2019-01-03 16:36:20 -06:00
Severiano Jaramillo f32bfc567b Created info dialog in SendTransactionFragment using the MaterialDialog library, which shows an explanation of the fields on that screen. 2019-01-03 12:45:28 -06:00
Severiano Jaramillo bee79976b5 Create SendTransactionFragment menu, which consists of only an info icon. 2019-01-03 11:09:19 -06:00
Severiano Jaramillo 2643b0af4d When the send button is disabled in SendTransactionFragment the background view is also 'disabled' changing its color to a lighter gray. 2019-01-03 10:47:58 -06:00
Severiano Jaramillo f0b959b496 Fix error in SendTransactionFragment, when the user typed an amount larger than its current balance an error would appear, but if after that the user erased everything the error would still be there. Also solved a similar error with the To account field. 2019-01-03 10:27:17 -06:00
Severiano Jaramillo c068efa84c Create a toast extension function to reduce the boilerplate code required to create Toasts. Extracted string resources fron SendTransactionFragment and used the new toast extension funcion. 2019-01-03 09:45:47 -06:00
Severiano Jaramillo 8eed991e0e Created Kotlin etension functions to add a enabled/disabled functionality to FloatingActionButtons. This is used in the SendTransactionFragment to show the Send button as disabled when the information to send a transaction is not all correct. 2019-01-03 09:11:58 -06:00
Severiano Jaramillo 1b4de3fb1e Make camera and send buttons red in SendTransactionFragment. 2019-01-03 08:26:21 -06:00
Severiano Jaramillo d4dbdc4aeb Change 'Please Pay' to 'Please Send' string in ReceiveTransactionFragment. Also, in the same Fragment, added an 'Any Amount' string when the user has not explicitly specified an amount to receive. 2019-01-02 17:03:20 -06:00
Severiano Jaramillo 71f2a8b25b Remove the eula from the strings and placed it instead as a file into the Assets folder.
We found that using the loadUrl WebView's method instead of loadData renders the html page better, for that reason the eula is now saved as a fule in the assets folder and loaded using the WebView's loadUrl method.
2019-01-02 14:11:44 -06:00
Severiano Jaramillo 573ae1d1dd Update Gradle plugin version, navigation architecture components library version and Crsshlytics library version. 2019-01-02 09:59:30 -06:00
Severiano Jaramillo 242fe7656a Enable the transaction direction filter, the user can apply the filter and see all transactions or just the sent or received. 2019-01-02 09:27:25 -06:00
Severiano Jaramillo ddf7f16c2b Create FilterOptionsDialog, which opens when the user clicks the filter icon in the Transactions toolbar. This dialog communicates back a forth with the TransactionsFragment to update the selected filter options via the OnFilterOptionsSelectedListener interface. 2018-12-26 11:59:02 -06:00
Severiano Jaramillo e4391dad73 Fix crash related to using the wrong RxBinding method with the Transactions SearchView, make some improvements and remove the old code used with the SearchView before using the SearchView's RxBinding method. 2018-12-24 11:15:25 -06:00
Severiano Jaramillo a39daaf155 Update RxBinding library version to 3.0.0-alpha2 and its usages.
The new version makes use of Kotlin extension functions which are elegant and effective. Also, make use of RxBinding in Transactions Toolbar SearchView, to add a nice debounce effect to wait 500ms after the user stops writing the search query, and actually call the filter method to avoid multiple calls while the user is still typing.
2018-12-24 10:55:54 -06:00
Severiano Jaramillo 2f720bb114 Add functionality to the Search funtion in the Transactions' toolbar, which fires events to filter the transactions list while the user types a search query. 2018-12-24 08:44:07 -06:00
Severiano Jaramillo 4391ff5ad4 Simplify BounceTouchListener and TransactionsFragment, to produce the same bouncy effect when overscrolling the transactions list, but with much less code. 2018-12-23 21:51:46 -06:00
Severiano Jaramillo 6ef5d84394 Show memo if available in the Transactions list. 2018-12-23 20:12:04 -06:00
Severiano Jaramillo 9fe152ef7c Make the task to check if there are new transactions that involve the current user account a recurrent task. 2018-12-23 19:15:03 -06:00
Severiano Jaramillo 4b16a90870 Fix nodes dialog's node text style. 2018-12-23 15:34:45 -06:00
Severiano Jaramillo f8e5a84da8 Remove Settings status footer and added instead a line below General's Night mode, View Network Status whith an icon that shows the current network status. When clicked it opens the Nodes dialog. Changed Nodes dialog title to show the current app version and added the block number as a single line below it. 2018-12-23 15:10:44 -06:00
Severiano Jaramillo 962afe78c6 Create method to always observe the database for Missing transaction times, which automatically launches a call to the NetworkService to obtain such value from the corresponding transfer's blockNumber. This value is updated in the Database and shown in the corresponding transaction item in the Transactions screen automatically. 2018-12-23 14:11:26 -06:00
Severiano Jaramillo 7fb1d4ff86 Add date field to TransferDetails model and correctly format and display it in the Transactions list. 2018-12-21 23:33:58 -06:00
Severiano Jaramillo a96f3d0b77 Added ppGren to the colors resource, which is the PalmPay green and used that color in the connected status icon and the color of the latencies < 400ms. 2018-12-21 21:55:17 -06:00
Severiano Jaramillo c4fd79f22c Create FullNodesAdapter to display a live updated list of the nodes the app is watching and also the one it is connected to. This list is displayed inside a dialog that pops when the user clicks the status icon in the Settings Footer. The dialog also shows the live updated BitShares Block Number 2018-12-21 20:55:36 -06:00
Severiano Jaramillo 504441afa2 Connect SettingsFragment to graphenej's NetworkService and use the onServiceConnected and onServiceDisconnected to change the connection status icon in the footer accordingly. 2018-12-21 20:14:31 -06:00
Severiano Jaramillo ae8a2f17e3 Add a footer to the SettingsFragment, which contains the app logo, the app name, version name and the Connection status icon. 2018-12-21 18:40:35 -06:00
Severiano Jaramillo 80b5f9f571 Avoid sharing the QR code image if the fields are not filled correctly 2018-12-21 18:24:39 -06:00
Severiano Jaramillo 5240e88e1f - Add a FileProvider to the Manifest, to enable the app to share images with other applications.
- Modify the method that creates a temp image of the screenshot to use the FileProvider described above.
- Improve ReceiveTransactionFragment UI so that the QR screenshot looks nicely spaced.
2018-12-21 18:12:34 -06:00
Severiano Jaramillo 9647e700ed Change the merchants and ambs webservice url. 2018-12-21 13:05:35 -06:00
Severiano Jaramillo 62fdc6a3e4 Add the share menu icon to the ReceiveTransactionFragment toolbar, verify for the storage permission required to store a temp image of the QR code when the sare icon is tapped and create a temp image of the QR code to be used later to send a share intent to the Andriod System so that it shows the user a list of options for him to select his preferred one. 2018-12-20 20:28:31 -06:00
Severiano Jaramillo e3bea9f475 Center text vertically below QR code and fix Please Pay string. 2018-12-20 18:06:11 -06:00
Severiano Jaramillo 4beec4e66a Add the BitShares icon to the Main screen toolbar and update the toolbar background so that it automatically uses the primaryColor of the selected theme. 2018-12-20 16:40:48 -06:00
Severiano Jaramillo fddfe1ab8b Set the 'Automatically close BiTSy after 3 minutes of inactivity' feature on by default. 2018-12-20 14:17:50 -06:00
Severiano Jaramillo 96fc421a99 Change the font used in the entire appto PFBeauSansPro. 2018-12-20 14:02:39 -06:00
Severiano Jaramillo 397515fea9 Improve AutoSuggestAssetAdapter to use Bitsy's Asset model, which has a 'toString' method to automatically show the symbol of the AssetSelected in the AutoCompleteTextView. Also Add a variable to avoid clearing the QR code just after the user selects an Asset from the AutoComplete suggestions. 2018-12-20 13:57:47 -06:00
Severiano Jaramillo 7f462bec63 - Add a responseMap (HashMap) to ConnectedActivity so that it only reacts to calls it has made.
- Create AutoSuggestAssetAdapter which is used in the ReceiveTransactionFragment's AutoCompleteTextView to show suggestions backed by the response from queries to the BitShares nodes, according to what the user has already typed in the text field.
2018-12-20 13:34:11 -06:00
Severiano Jaramillo 8fd7c28256 In ReceiveTransactionFragment, add an 'Other...' option at the end of the assets spinner and when the user selects it an AutoCompleteTextView appears below where the user can select other asset, the AutoCompleteTextView suggestions will be backed by BitShares node queries to show matching Assets. 2018-12-20 09:59:10 -06:00
Severiano Jaramillo e8ec0e6f89 Create AssetsAdapter and use it to populate the asset spinner in the ReceiveTransactionFragment, so the user the asset he wants to receive. 2018-12-20 08:48:48 -06:00
Severiano Jaramillo 49f920877a Use the NetworkService's GetAssets call to obtain the information of missing Assets and store it into the database, this enables us to remove the DatabaseLoad Activity and new assets information is downloaded as needed. 2018-12-19 20:25:58 -06:00
Severiano Jaramillo a3c4c9a816 Update Bitsy's app icon. 2018-12-19 19:34:46 -06:00
Severiano Jaramillo 26e1e427c9 Add Transactions toolbar menu items with their respective icons. 2018-12-19 10:08:24 -06:00
Severiano Jaramillo cee1753184 Create BounceTouchListener class in the project and use it to add a Bouncy effect to the Transactions items when the user tries to overscroll. 2018-12-19 09:43:09 -06:00
Severiano Jaramillo 5af88291bc Update the Navigation component library version and Gradle version.
- Add simple slide in and out transition animations to the Send and Receive Transaction Fragments.
2018-12-19 09:24:56 -06:00
Severiano Jaramillo d5d01115f8 Request merchants locations from the webservice and add them to the Merchants map. 2018-12-18 09:27:26 -06:00
Severiano Jaramillo 89cf6f3df2 Add slide-in animation when the Transactions items are loaded into the screen. 2018-12-18 08:51:45 -06:00
Severiano Jaramillo dc7decfb77 Sort Balances alphabetically by symbol and place the asset symbol to the left and the balance amount to the right. 2018-12-18 07:55:04 -06:00
Severiano Jaramillo 720b4f7b1e Add BalanceView model and a method into it that is always observing the database and when it detects that there is missing assets information creates a list of such missing assets and fires an event to obtain the said information. 2018-12-18 07:37:21 -06:00
Severiano Jaramillo 5c20e2470d Avoid a crash in SendTransactionFragment when there are no assets loaded into de db. 2018-12-17 16:51:24 -06:00
Severiano Jaramillo f8c9594602 Remove DatabaseLoadActivity and all related code. 2018-12-17 15:46:44 -06:00
Severiano Jaramillo d425e4eece Enable just the best 7 BitShares nodes for the Mexico region.
- Disable the Memo field for now, we will fix and enable it later.
2018-12-15 10:19:58 -06:00
Severiano Jaramillo 41f7541918 Added code to fetch the merchants locations from the palmapay intranet web service. 2018-12-14 18:46:01 -06:00
Severiano Jaramillo 5659a1dd8c Fix crash when trying to insert an account that already exists in the database. 2018-12-14 16:02:00 -06:00
Severiano Jaramillo a2c2c315b9 Add Firebase required libraries and configuration to Bitsy and enable Crashlytics. 2018-12-14 15:23:12 -06:00
Severiano Jaramillo 47e122e46c - Add the required libraries to fetch the merchants data from the web service.
- Create methods to redraw the Balances and NetWorth fragments each time they appear to the user, to temporarily avoid them not displaying correctly after returing from another screen or when changing the theme.
2018-12-14 14:20:16 -06:00
Severiano Jaramillo 5ddce2a33f Added a map to the Merchants section with the default values and using the Google Maps API key Tadeo created when he was working on the project. 2018-12-14 12:12:42 -06:00
Severiano Jaramillo 283125b40e Add google maps library. 2018-12-14 11:42:05 -06:00
Severiano Jaramillo ba113e1a7f Found that enabling ProGuard's minify for the debug version breaks the debugger breakpoints functionality, minify was disabled until a solution is found. 2018-12-14 11:12:30 -06:00
Severiano Jaramillo f76f293811 - Add a third tab to the Balances/Networth Tablayout which contains only a Pie chart as the title but has no content yet.
- Lighten up the above tabs that are not the current selected one. They are still grayed but just a bit.
2018-12-14 10:23:01 -06:00
Severiano Jaramillo 20e17108ec Enabled proguard for both debug and release versions and fixed the gradle warnings related to proguard unsatisfied rules in a correct way without ignoring all possible warnings. 2018-12-14 09:54:02 -06:00
Severiano Jaramillo 1a335b2ab5 Change settings icon to outlined. 2018-12-13 20:56:18 -06:00
Severiano Jaramillo 8d25b92063 Create a new BalancesFragment and NetWorthFragment which are used in the HomeFragment's second card. The Balances is already working but the NetWorth only shows a 'Coming soon' notice. 2018-12-13 20:53:38 -06:00
Severiano Jaramillo a608ec162a Create the menus for Balances and Net Worth that make use of a customized TabLayout and a ViewPager to obtain the desired effect.
- Created custom themed attribute colorBackgroundFocusable to assign the correct background color to the balances and net worth tabs.
- Renamed BalancesFragment to HomeFragment because, the BalancesFragment will now only be used to display the Balances in the above mentioned ViewPager.
2018-12-13 20:21:03 -06:00
Severiano Jaramillo dd290a4b2c Improve Balances' Material cards to show nice elevation with shadows. 2018-12-13 16:57:58 -06:00
Severiano Jaramillo 8f0026c205 - Update the MaterialDialogs library version.
- Add the functionality to the Settings BrainKey's View & Show button. It first fetches the brainkey from the authorities db table and then shows it in a custom MaterialDialog so that the user can view and copy it.
2018-12-13 16:01:26 -06:00
Severiano Jaramillo f45d9055c3 Add functionality to the Settings 'Automatically close BiTSy after 3 minutes of inactivity', the user selection is saved into the SharedPreferences and if it happens to be true then the app will close when that time amount of inactivity happens. 2018-12-13 14:29:32 -06:00
Severiano Jaramillo e1c32eb7f8 Add methods to automatically change the theme to night mode when the user selects it and also avoid a crash in the TransfersLoader. 2018-12-13 13:10:19 -06:00
Severiano Jaramillo ffebc39bcf Add Send/Receive text below the Send/Receive buttons in the Balances screen and improve its layout so they are always centered both vertically and horizontally. 2018-12-13 12:47:25 -06:00
Severiano Jaramillo 5a6b098f38 Replaced SettingsActivity with SettingsFragmet and created the Navigation methods to hook the Balances' Settings toolbar icon with the Settings fragment so it automatically opens when the icon is tapped. 2018-12-13 12:34:42 -06:00
Severiano Jaramillo 1565bab28c Improve Transactions' cards UI. 2018-12-13 11:49:57 -06:00
Severiano Jaramillo 22666021f1 - Add Navigation's SafeArgs plugin to the project, this plugin enables to pass arguments between fragments in a safe way.
- Use the Navigation AAC to create the navigation from the Balances to the Send and Receive fragments, using Navigation's SafeArgs to activate the camera in SendTransactionFragment in the case the user tapped on the camera button instead ofjust the send button in the Balances.
2018-12-13 11:24:18 -06:00
Severiano Jaramillo 6e25dd7589 Create new Balances layout with the send and receive buttons at the top and the user balances at the bottom per Ken's design. 2018-12-13 10:16:57 -06:00
Severiano Jaramillo 2619541e16 - Create and add the new Transactions, Merchants and Settings icons and use them in the Balances toolbar.
- Remove the transactions section from the Balances fragment.
- Create a new TransactionsFragment which hosts the list of trasactions.
- Add the transactions destination to the navigation graph so that the Navigation component automatically handles the transition when the transactions icon is selected in Balances.
2018-12-13 08:20:17 -06:00
Severiano Jaramillo 3d6ce645b5 Make proper configurations to enable the Navigation component and make use of it to add the navigation to the Merchants fragment and back to the Balances fragment. 2018-12-12 21:30:27 -06:00
Severiano Jaramillo 82efa60a36 Introduce the new Android Architecture Components' Navigation.
- Remove the old MainActivity layout that included a BottomNavigationView.
- Start using the Navigation AAC and make the BalancesFragment the default Fragment so that it is the first to appear.
2018-12-12 20:56:20 -06:00
Severiano Jaramillo 410d22c5b0 Create Settings screen layout. 2018-12-11 16:22:55 -06:00
Severiano Jaramillo 2dc0deb23f Improve ImportBrainkeyActivity by automatically showing errors if the PIN is not long enough, the PIN Confirmation does not match or if the brainkey does not have the correct format as the user types but with a small debunce to avoid showing errors while the user is typing. Once the three fields are correct then the Import button is enabled. 2018-12-11 13:25:15 -06:00
Severiano Jaramillo bada77f224 Enable proguard minify to reduce size of the release APK. After enabling the minify some warnings did not allow to build the release APK so I disabled the proguard warnings for now but a proper solution has to be found that actually handles the warnings in a proper way. 2018-12-10 17:19:28 -06:00
Severiano Jaramillo 50a266ffb4 - Move the method to updateBalances from the MainActivity to the ConnectedActivity, so that it can be always trying to update the Balances even if we are not in the MainActivity and also to be able to update the Balances right after we notice there are new transactions for the current BitShares account.
- Move the TransfersLoader from MainActivity for the same reason than the updateBalances method described above and fix it so that it no longer needs the activity Lifecycle.
2018-12-08 22:55:28 -06:00
Severiano Jaramillo 0f96c48135 Create method to update the Transactions list when new operations are detected for the current user account. When new transactions are fetched and saved into the database they automatically appear on the Transactions list. 2018-12-08 22:15:06 -06:00
Severiano Jaramillo 2b168180c6 Prevent calling the method to obtain account iformation when there is no longer missing account information. 2018-12-08 20:52:48 -06:00
Severiano Jaramillo 628b30ce54 Created a method that is always listening to changes in the database and finds out when at least one UserAccount involved in a transaction is not present in the user_accounts db table. When such accounts are found they are retrieved in a form of a list and their information is requested to the BitShares nodes through graphenej's NetworkService and saved into the db once a response is received. The updated user account information is automatically displayed in the transactions list because of AAC's ViewModel, LiveData and Room. 2018-12-08 20:36:31 -06:00
Severiano Jaramillo 496e0ac21f Add cryptoAmount, cryptoPrecision and cryptoSymbol to TransferDetails model and fetch that iformation from the database, which is later used to correctly format and display the crypto amount in the Transactions list. 2018-12-07 17:23:44 -06:00
Severiano Jaramillo 8ef4610db3 - Update graphenej reference to use a new method included to Broadcast a Transaction using the NetworkService's centralized node connection.
- Make use of the described new method in Graphenej's NetworkService to actually broadcast a Bitsy transaction to the blockchain. If the transaction is successful then all SendTransactionActivity fields are cleaned, the Send button hiden and a Toast showing that the transaction was successful. If the transaction fails then a Toast shows the error received from the Blockchain explaining the reason for the failure.
2018-12-07 16:10:08 -06:00
Severiano Jaramillo 04b509651b - Adjusted how the Android virtual keyboard appears on the screen so that it does not distort the QR code image.
- Created a method to update the QR code when the user updates the Amount text field information, using RxJava debounce to avoid calls while the user is still typing.
- Created a method to remove the QR when there is no Asset selected.
2018-12-07 15:18:23 -06:00
Severiano Jaramillo 28561d55f1 - Modified the Asset entity model by adding a method 'toString()', so that it can be used in the adapter for the ReceiveTransactionFragment's Asset AutoCompleteTextView.
- Created AssetViewModel to obtain the the elements from the assetd db table using the AssetRepository and serving the obtained assets to the ReceiveTransactionFragment.
- Fire an event to update the QR code when the user selects an asset from the AutoCompleteTextView.
2018-12-07 13:50:31 -06:00
Severiano Jaramillo b9a765e682 Create custom AutoCompleteTextView which can be used inside of a TextInputLayout to show a nice square with the suggestion like the other text fields used in the app. 2018-12-07 12:17:45 -06:00
Severiano Jaramillo 39073e3d9c Added method in ReceiveTransactionFragment to generate QR codes encoded using BitShares merchant protocol. 2018-12-06 21:33:40 -06:00
Severiano Jaramillo dca3e6872d Create ReceiveTransactionFragment layout. 2018-12-06 19:09:36 -06:00
Severiano Jaramillo e50f4064df - Add memo field to the transfer operation if it exists.
- Create method in SendTransactionFragment that once the DynamicGlobalProperties is received, calls the Grahpenej's NetworkService method to get the required fees for the operation that the user wants to do.
2018-12-06 15:59:47 -06:00
Severiano Jaramillo 00df51e9f9 Create method to initiate the first step required to send a transaction from the wallet, which is building a Graphenej's transaction object and request the DynamicGlobalProperties. 2018-12-06 15:12:38 -06:00
Severiano Jaramillo 53479f8837 - Add a amount verification to the SendTransactionFragment to ensure the user has at least that amount of the selected asset in his account.
- Show the balance of the current selected asset below the asset Spinner.
- Enable the send transaction button only after verifying that both the to account and the amount are both valid.
2018-12-05 21:49:26 -06:00
Severiano Jaramillo 4739e41fce - Added the RxBindings library to be able to use RxJava on Android Widgets.
- Connected the SendTransactionFragment to Graphenej's NetworkService so that it can directly send requests to the nodes.
- Added the RxBus to SendTransactionsFragment so that it can listen to responses from the NetworkService and take the useful ones.
- Added account validation to SendTransactionFragment, if the account typed exists then the Send button is enabled, if not the button is disabled an a error is shown below the typed account.
2018-12-05 18:38:34 -06:00
Severiano Jaramillo 5388e90331 Add methods to remember the currently selected Spinner's Asset and make sure that selection is not lost when the balances table is updated. Make an improvement to the camera feed UI. 2018-12-05 10:10:45 -06:00
Severiano Jaramillo 2aa685d1da - Create AssetsAdapter to populate the Assets Spinner in SendTransactionFragment.
- Use BalanceDetailViewModel to fetch the Balance details from the database and pass them to the AssetsAdapter.
2018-12-04 15:49:22 -06:00
Severiano Jaramillo fa2c7a07d8 Add camera permission to Manifest to be able to use camera in the app to read QR codes.
- Add methods to SendTransactionFragment to request camera permission and start/stop the camera preview accordingly.
2018-12-04 11:33:58 -06:00
Severiano Jaramillo 95404708a9 Create SendTransactionFragment layout similar to Crystal's 2018-12-03 17:22:21 -06:00
Severiano Jaramillo 75bd1b2e03 Created basic SendTransactionFragment and SendTransactionFragment with their respective layout files. 2018-12-03 15:37:27 -06:00
Severiano Jaramillo 70ebea75b0 Add direction to TransferDetail and use it to display the correct left bar color and direction arrow in the Transactions list.. 2018-12-03 13:51:36 -06:00
Severiano Jaramillo de75c12197 Created a new TransferDetail model and DAO to create a object composed form the transfers, assets, accounts, and equivalent_values db tables and used such classes to correctly show the accounts involved in transactions in the BalancesFragment. 2018-12-03 13:34:13 -06:00
Severiano Jaramillo cd2f388894 Created a new BalancesDetail model and DAO to create a object composed form the balances and assets db tables and used such classes to correctly show the balances in the BalancesFragment. 2018-12-02 20:17:31 -06:00
Severiano Jaramillo 5ec8afbdb3 Provide a better package structure for Room database related files. 2018-12-01 09:25:25 -06:00
Severiano Jaramillo dd770fdb5b - Created Balances adapter and ViewModel to show the Account Balances in the BalancesFragment.
- Simplified the Balances db table.
2018-12-01 08:48:19 -06:00
Severiano Jaramillo fc98208c30 - Add method to update account balances.
- Create BalancesRepository to handle Balances related db operations.
2018-11-28 21:52:00 -06:00
Severiano Jaramillo 51363bdf00 - Create basic TransactionsAdapter to populate the Transactions RecyclerView in Balances.
- Create basic Transactions items layout.
2018-11-28 20:13:40 -06:00
Severiano Jaramillo bebffa14ed - Remove no needed code and simplifyy TransfersLoader, also add a CompositeDisposable to keep track of all RxJava subscriptions and be able to dispose them when the class is finished.
- Call the TransfersLoader in MainActivity from a better place.
2018-11-28 18:55:53 -06:00
Severiano Jaramillo 3cbe738fd7 Move deleteAll method from TransferRepository to an async thread, to avoid app crashes for doing db operations in the main thread. 2018-11-28 14:28:18 -06:00
Severiano Jaramillo d979d366cf Update EULA and change DISAGREE button color to red and AGREE button color to green. 2018-11-28 14:21:43 -06:00
Severiano Jaramillo d4e96f98e6 - Remove memo_from and memo_to fields from the transfers db table.
- Added method to obtain WIF key from the authorities db table.
- Make use of WIF in TransfersLoader to decrypt memo messages before saving them into the db.
2018-11-28 12:28:38 -06:00
Severiano Jaramillo 61aeca0575 - Extend Authority entity table to also store the authorities in WIF format.
- Make ImportBrainkeyActivity to create and store the WIF format into the database.
2018-11-28 10:19:53 -06:00
Severiano Jaramillo cec0857113 - Add Room RxJava dependency to be able to use RxJava in Room db queries.
- Use RxJava's Single to make a Room query in TransfersLoader.
2018-11-27 21:42:39 -06:00
Severiano Jaramillo 08cf6b3c40 - Created a specific package entities for Room entities and do not mix them with plain models.
- Simplified the Transfers entity so that we store only the information that will actually be used.
- Create a TransfersLoader, which once launched checks and updated Transfer operations.
2018-11-27 13:33:04 -06:00
Severiano Jaramillo c63388155a Created a DatabaseLoadActivity which loads basic information of all the BitShares assets and stores them in the database. This process only occurs once during the initial setup. 2018-11-26 15:11:34 -06:00
Severiano Jaramillo d42050afa1 - Created basic Balances layout with sections to show the account name, a list of Balances and a list of Transactions.
- Created UserAccountViewModel to serve as a bridge between the views and the database, and use it to fetch the current active UserAccount to display it in the BalancesFragment.
2018-11-26 12:26:20 -06:00
Severiano Jaramillo c77c62fb87 Create a Toolbar menu to MainActivity and add an entry to open the SettingsActivity. 2018-11-24 10:11:30 -06:00
Severiano Jaramillo 175d48f8c6 - Simplified Database structure to include only what is going to be used for the wallet.
- Properly distroy NetworkService connection when ConnectedActivty is distroyed to avoid crashes.
- Created UserAccountRepository and AuthorityRepository to handle their corresponding database operations in an asynchronous way, because Room enforces database operations to be done in a thread other than the UI thread.
- In ImportBrainkeyActivity when a proper brainkey is given save the imported account into the database, put a flag that tells the app there is a current account imported and send the user to MainActivity.
2018-11-24 09:11:57 -06:00
Severiano Jaramillo 847e8a8d7f - Make an UX improvement to let the user import the account directly from the keyboard when typing the brainkey in the TextField.
- Add the MaterialDialogs library and use it to let the user choose the desired account to import when the brainkey controls more than one account.
2018-11-22 20:13:10 -06:00
Severiano Jaramillo 22a0735379 Remove code from BitsyApplication that is not going to be used.
- Add checks to ImportBrainkeyActivity to make sure the PIN and Brainkey have the correct length/structure.
2018-11-22 15:40:33 -06:00
Severiano Jaramillo fcbd82e570 - Create BitsyApplication class to manage the connection to graphenej's NetworkService.
- Create ConnectedActivity which is the base activity that handles the communication to graphenej's NetworkService and will be extended by other apps that require communication to the BitShares nodes.
2018-11-22 13:35:32 -06:00
Severiano Jaramillo dfa5df7e83 Create ImportBrainkeyActivity lyout. 2018-11-21 20:53:45 -06:00
Severiano Jaramillo 6b55151e3b Created basic ImportBrainkeyActivity and a method to take the user to the MainActivity or ImportBrainkeyActivity depending on whether or not there is an active account after the user accepts the License. 2018-11-21 17:43:51 -06:00