2e07bc512fImprove merchants' marker info window layout. Added proper padding and nice rounded corners with a 1dp border to improve visibility.
Severiano Jaramillo
2019-01-24 17:02:28 -0600
69c27d3092Create 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.
Severiano Jaramillo
2019-01-24 15:22:51 -0600
6a8def0cf1Make 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.
Severiano Jaramillo
2019-01-24 13:37:06 -0600
fbbb4f9f48Add 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.
Severiano Jaramillo
2019-01-23 19:15:06 -0600
38d6d7f7a8Improve 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.
Severiano Jaramillo
2019-01-23 16:08:04 -0600
4bb53de009Create 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.
Severiano Jaramillo
2019-01-23 15:37:13 -0600
6aad0ca624Override 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.
Severiano Jaramillo
2019-01-23 12:42:19 -0600
a913f380bbCreate 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.
Severiano Jaramillo
2019-01-23 12:17:46 -0600
6abcf6ed13Add the android-maps-utils library and use the Cluster functionality to display a nice item amount when the markers are too close.
Severiano Jaramillo
2019-01-22 20:14:17 -0600
8c56250d1aPosition the Merchants & Tellers Map by default somewhere near Panama with a zoom of 6.
Severiano Jaramillo
2019-01-22 16:30:23 -0600
2ed39fabddCreate 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.
Severiano Jaramillo
2019-01-22 15:53:14 -0600
227e0224a1Add 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.
Severiano Jaramillo
2019-01-22 15:31:24 -0600
55e57a11adChange Toolbar title of Merchants section to Merchants & Tellers
Severiano Jaramillo
2019-01-22 14:00:35 -0600
4558d54d27Create db migration to add and use the merchants and tellers tables.
Severiano Jaramillo
2019-01-22 13:55:28 -0600
6ed34d20ebCreated 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.
Severiano Jaramillo
2019-01-22 13:28:17 -0600
e043b83b36Improve 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.
Severiano Jaramillo
2019-01-22 13:11:23 -0600
4c3822e8c1Fix crash with Google maps in Android 9 [Pie] devices.
Severiano Jaramillo
2019-01-22 10:17:22 -0600
357cc97e40Improve 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.
Severiano Jaramillo
2019-01-22 09:56:58 -0600
6841e3eb9aCreated 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.
Severiano Jaramillo
2019-01-21 21:54:18 -0600
e3f8e1d923Remove '#bitsy' Memo from QR codes generated in ReceiveTransactionFragment.
Severiano Jaramillo
2019-01-21 21:54:03 -0600
ef5834264bForce the back button in the Toolbar in different screens to use the same white color as the Toolbar title text.
Severiano Jaramillo
2019-01-21 12:05:40 -0600
00b8919566Created 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.
Severiano Jaramillo
2019-01-21 11:13:54 -0600
848768a038Change fiat placeholder in the Transactions items.
Severiano Jaramillo
2019-01-16 16:47:29 -0600
0da52c2ee8Prepare the strings.xml file for translation by putting every string resource into a single line. Create Spanish translation human verified.
Severiano Jaramillo
2019-01-16 16:40:49 -0600
cfc8b13dbbAvoid 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.
Severiano Jaramillo
2019-01-16 15:31:54 -0600
ea80a3e7e3Improve SendTransactionFragment's QR code read feature to account for cases when the QR code is for a smartcoin (starts with bit).
Severiano Jaramillo
2019-01-16 13:48:35 -0600
3f52a67d35Updated gradle version to 3.3 so that it can be used with the latest stabe version of Anstoid Studio
Severiano Jaramillo
2019-01-16 13:29:13 -0600
9a8af1b918Make 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.
Severiano Jaramillo
2019-01-16 11:34:01 -0600
ec57bea829Created 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.
Severiano Jaramillo
2019-01-16 10:30:11 -0600
12d17c54d3Improve 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.
Severiano Jaramillo
2019-01-16 09:47:17 -0600
7f10c931a4Reduce the amount of assets that should be sent to agorise as a network fee when sending transactions using Bitsy.
Severiano Jaramillo
2019-01-16 09:18:17 -0600
7165df42cbFix 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.
Severiano Jaramillo
2019-01-16 09:02:18 -0600
887d9a249fImprove FilterOptionsDialog layout by moving the 'IgnoreNetworkFees' section above the 'Fiat Amount' section.
Severiano Jaramillo
2019-01-15 21:43:24 -0600
3014e12a5aAdd the functionality to filter all transactions sent to the agorise account, which are presumably transaction network fees.
Severiano Jaramillo
2019-01-15 21:28:24 -0600
027f690480Add 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.
Severiano Jaramillo
2019-01-15 21:23:54 -0600
6d4b229e7eDisable proguard's minify meanwhile a solution is found to avoid wrong and different behavior in the app when minify is enabled.
Severiano Jaramillo
2019-01-15 20:58:18 -0600
6dc5e54ad1Force 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.
Severiano Jaramillo
2019-01-15 17:13:02 -0600
bda2299cb5Create 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.
Severiano Jaramillo
2019-01-15 17:06:00 -0600
529d5db41dImprove SendTransactionFragment by adding description comments to all non-trivial functions and variables, and avoid crashes in many parts by always adding null-safe operations.
Severiano Jaramillo
2019-01-15 14:34:42 -0600
086660409fAdd 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.
Severiano Jaramillo
2019-01-15 13:46:27 -0600
cb07673c8dForce the app to go back to the home screen once a transaction is successfuly sent.
Severiano Jaramillo
2019-01-15 11:22:28 -0600
33f45a6775Activate 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.
Severiano Jaramillo
2019-01-15 11:08:15 -0600
98cfbbf90aChange versionName to 0.8.0-beta.
Severiano Jaramillo
2019-01-14 15:29:58 -0600
561612368aMake node dialogs in ImportAccountFragment and SettingsFragment to stop asking for the DynamicGlobalProperties (block number, etc.) once they are dismissed.
Severiano Jaramillo
2019-01-11 13:52:55 -0600
81531cc8b6Add 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.
Severiano Jaramillo
2019-01-11 13:46:50 -0600
dd619be8c8Update ImportBrainkeyFragment layout to show the 'View Network Status' text and newtwork status icon at the bottom.
Severiano Jaramillo
2019-01-11 13:27:34 -0600
464f8da353Change the elevation of enabled buttons to 3dp.
Severiano Jaramillo
2019-01-10 16:10:55 -0600
67ad71ff88Change brainkey error description and create and import button labels in ImportBrainkeyFragment. Also added an 'Or' string between the import and create buttons.
Severiano Jaramillo
2019-01-10 15:57:53 -0600
8a02ab43dfRemove focus from the first EditText by default in ImportBrainkeyFragment.
Severiano Jaramillo
2019-01-10 15:32:30 -0600
e3f227d5bdAdd type checks to NetworkService responses in ImportBrainkeyFragment to avoid crashes.
Severiano Jaramillo
2019-01-10 15:07:27 -0600
38039fc76bAdd the selected node information to the Crashlytics reports.
Severiano Jaramillo
2019-01-10 14:23:10 -0600
7c1a3577e9Extract string resources from TransactionsFragment's FilterOptionsDialog, so they can be easily translated.
Severiano Jaramillo
2019-01-10 12:44:56 -0600
bd0b74eeafIn 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.
Severiano Jaramillo
2019-01-10 12:23:17 -0600
f62286747cCreate 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.
Severiano Jaramillo
2019-01-09 20:39:42 -0600
5470ca1523Chaged 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.
Severiano Jaramillo
2019-01-09 18:16:15 -0600
5075c59b7bRemove border from FloatingActionButtons in HomeFragment and SendTransactionFragment. This was the blue border that appeared around the rounded buttons in the mentioned screens.
Severiano Jaramillo
2019-01-09 18:04:52 -0600
941a558a08Force 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.
Severiano Jaramillo
2019-01-09 17:19:49 -0600
e16d651a63Fix 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.
Severiano Jaramillo
2019-01-08 20:53:57 -0600
8894c48e5cFix 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.
Severiano Jaramillo
2019-01-08 20:18:42 -0600
78909498c0Added method to create Account using the Agorise's faucet, and also making use of Retrofit's suggested ServiceGenerator.
Severiano Jaramillo
2019-01-08 16:35:14 -0600
860947b351Create 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.
Severiano Jaramillo
2019-01-08 13:27:18 -0600
64d30f42abCreate 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.
Severiano Jaramillo
2019-01-07 20:35:29 -0600
e530dc531eAdd account name validation to CreateAccountFragment using Kotlin extension functions and RxJava debounce operator.
Severiano Jaramillo
2019-01-05 20:47:04 -0600
9236e374bcAdd PIN and Pin Confirmation validations to CreateAccountFragment using RxBindings with debounce, also add functionality to the 'CANCEL' button.
Severiano Jaramillo
2019-01-05 20:02:07 -0600
14a4f79cb2Added 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.
Severiano Jaramillo
2019-01-05 16:30:57 -0600
991967cd7dCreated CreateAccountFragment with its layout and the methods to show it when the user clicks the 'Create' button in the ImportBrainkeyFragment using Navigation AAC.
Severiano Jaramillo
2019-01-05 15:23:42 -0600
0deecca8edRemove no longer needed code from ConnectedActivity and MainActivity and add a description to each of the Activities to describe their purpose.
Severiano Jaramillo
2019-01-04 17:01:06 -0600
2dd843fe91Removed 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.
Severiano Jaramillo
2019-01-04 16:50:56 -0600
58e1e0a575Removed 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.
Severiano Jaramillo
2019-01-04 15:53:29 -0600
4e64b10014Created 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.
Severiano Jaramillo
2019-01-04 13:13:55 -0600
10014263d7Improve query to obtain user balances to avoid showing assets with a balance equal to zero.
Severiano Jaramillo
2019-01-03 17:11:58 -0600
2db74516bbCreate 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.
Severiano Jaramillo
2019-01-03 17:06:37 -0600
5cde97f1e7Speed up the slide in/slide out animations used in fragment transitions.
Severiano Jaramillo
2019-01-03 16:40:14 -0600
39ad3cca01Changed 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.
Severiano Jaramillo
2019-01-03 16:36:20 -0600
f32bfc567bCreated info dialog in SendTransactionFragment using the MaterialDialog library, which shows an explanation of the fields on that screen.
Severiano Jaramillo
2019-01-03 12:45:28 -0600
bee79976b5Create SendTransactionFragment menu, which consists of only an info icon.
Severiano Jaramillo
2019-01-03 11:09:19 -0600
2643b0af4dWhen the send button is disabled in SendTransactionFragment the background view is also 'disabled' changing its color to a lighter gray.
Severiano Jaramillo
2019-01-03 10:47:58 -0600
f0b959b496Fix 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.
Severiano Jaramillo
2019-01-03 10:27:17 -0600
c068efa84cCreate 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.
Severiano Jaramillo
2019-01-03 09:45:47 -0600
8eed991e0eCreated 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.
Severiano Jaramillo
2019-01-03 09:11:58 -0600
1b4de3fb1eMake camera and send buttons red in SendTransactionFragment.
Severiano Jaramillo
2019-01-03 08:26:21 -0600
d4dbdc4aebChange '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.
Severiano Jaramillo
2019-01-02 17:03:20 -0600
71f2a8b25bRemove 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.
Severiano Jaramillo
2019-01-02 14:11:44 -0600
e345a71433Merge branch 'develop' of github.com:Agorise/bitsy-wallet into develop
Severiano Jaramillo
2019-01-02 12:06:06 -0600
573ae1d1ddUpdate Gradle plugin version, navigation architecture components library version and Crsshlytics library version.
Severiano Jaramillo
2019-01-02 09:59:30 -0600
e5438193ffAdd google-services.json to gitignore
Severiano Jaramillo
2019-01-02 09:31:21 -0600
12b657137eMerge branch 'develop' of github.com:Agorise/bitsy-wallet into develop
Severiano Jaramillo
2019-01-02 09:27:31 -0600
242fe7656aEnable the transaction direction filter, the user can apply the filter and see all transactions or just the sent or received.
Severiano Jaramillo
2019-01-02 09:27:25 -0600
f279512c57Enable the transaction direction filter, the user can apply the filter and see all transactions or just the sent or received.
Severiano Jaramillo
2018-12-26 19:40:56 -0600
ddf7f16c2bCreate 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.
Severiano Jaramillo
2018-12-26 11:59:02 -0600
e4391dad73Fix 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.
Severiano Jaramillo
2018-12-24 11:15:25 -0600
a39daaf155Update 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.
Severiano Jaramillo
2018-12-24 10:55:54 -0600
2f720bb114Add functionality to the Search funtion in the Transactions' toolbar, which fires events to filter the transactions list while the user types a search query.
Severiano Jaramillo
2018-12-24 08:44:07 -0600