Commit graph

499 commits

Author SHA1 Message Date
Severiano Jaramillo
0ad0f7c911 Fix date range selection issue.
- The issue was that the MaterialDatePicker uses the UTC time zone internally. We had to account for that to avoid showing an off by one wrong selection on the Filter Options date range and the Date Range picker (MaterialDatePicker).
2021-03-24 22:34:54 -07:00
Severiano Jaramillo
7e12224795 Update Material Components library.
- Introduced the new material date range picker, to be used in the FilterOptionsDialog to select a date range. This was necessary because the old MaterialDatePicker that was used inside DatePickerFragment is no longer available in the latest version of the Material Components library.
2021-03-23 22:31:47 -07:00
Severiano Jaramillo
dd1bf98e5d Update Firebase Crashlytics and Gradle plugins.
- Added the new Firebase Android BoM (Bill of Materials), to easily manage Firebase libraries: https://firebase.google.com/docs/android/learn-more#bom.
- Updated the Gradle, Google Services and Crashlytics gradle plugins.
2021-03-23 21:27:58 -07:00
Severiano Jaramillo
be5c9bcea7 Update Navigation and Lifecycle libraries.
- Updated the Navigation architecture component library to the latest stable version, with no big changes required.
- Updated the Lifecycle architecture component library to the latest stable version, along with a bunch of changes related to the deprecation of some methods and the addition of others.
2021-03-22 22:31:44 -07:00
Severiano Jaramillo
fd68b8bb96 Bump versionName to 0.17.2-beta and versionCode to 15 2021-03-16 20:20:31 -07:00
Severiano Jaramillo
0ec0457eb7
Migrate app to ViewBinding. (#6)
* Enable ViewBinding

- Migrate MainActivity to ViewBinding.
- Migrate HomeFragment to ViewBinding.

* Migrate a batch of Fragments to ViewBinding.

- Migrate BalancesFragment to ViewBinding.
- Migrate CreateAccountFragment to ViewBinding.
- Migrate EReceiptFragment to ViewBinding.
- Migrate FilterOptionsDialog to ViewBinding.
- Migrate HomeFragment to ViewBinding.

* Migrate another batch of Fragments to ViewBinding.

- Migrate ImportBrainkeyFragment to ViewBinding.
- Migrate LicenseFragment to ViewBinding.
- Migrate MerchantsFragment to ViewBinding.
- Migrate NetWorthFragment to ViewBinding.
- Migrate PatternSecurityLockDialog to ViewBinding.

* Migrate final batch of Fragments to ViewBinding.

- Migrate PINSecurityLockScreen to ViewBinding.
- Migrate ReceiveTransactionFragment to ViewBinding.
- Migrate SendTransactionFragment to ViewBinding.
- Migrate SettingsFragment to ViewBinding.
- Migrate TransactionsFragment to ViewBinding.

* Migrate to the kotlin-parcelize plugin.

- Get rid of the deprecated kotlin-android-extensions plugin.
2021-03-04 22:46:36 -08:00
Severiano Jaramillo
0d33a5f743 Limit the libraries that are obtained from JCenter. 2021-03-01 22:26:37 -08:00
Severiano Jaramillo
9005334f21 Update a couple more libraries' versions. 2021-02-15 19:56:16 -08:00
Severiano Jaramillo
c68397c57c Bump compileSdkVersion and targetSdkVersion to 29. 2020-12-25 16:33:33 -08:00
Severiano Jaramillo
af0f2f25e6 Update a bunch of libraries' versions. 2020-12-25 16:25:25 -08:00
Severiano Jaramillo
255821238a Upgrade to the Firebase Crashlytics SDK. 2020-12-25 15:40:25 -08:00
Severiano Jaramillo
ba6b9ab642 Bump versionName to 0.17.1-beta and versionCode to 14 2020-01-06 20:12:02 -06:00
Severiano Jaramillo
5d09cfa0c2 Avoid crash due to unsupported currency locale.
- Avoided a crash in ConnectedActivity when trying to obtain the Locale's associated currency, when a Locale does not have a currency. This can happen when the locale is configured for a region like Latin America and not for a specific country.
- Standardized the process to obtain the coingecko supported currency, which will first try to use the current locale's currency and fallback to the default in case the first is not supported.
2020-01-06 10:08:46 -06:00
Severiano Jaramillo
20571d49a3 Fix crash in NetworkServiceManager.
- Fixed a crash in NetworkServiceManager, which is listening to the activities' lifecycle of the whole app. The issue is that it was expecting a call to onActivityCreated where the Bundle was never null and that is a problem because the Bundle can most of the times be null during normal behavior. The Bundle isn't null only when the app is recovering from a forced process dead, which happens when there is another app open which requires resources and the systems kills apps that are not being used at that moment.
2020-01-06 08:52:42 -06:00
Severiano Jaramillo
239fac9ad7 Bump versionName to 0.17.0-beta and versionCode to 13 2019-12-31 15:17:27 -06:00
Severiano Jaramillo
cdcfb19370 Update EULA's year to 2020. 2019-12-31 14:21:07 -06:00
Severiano Jaramillo
84617f376c Improve LTM's lightning bolt in Home screen.
- Changed the color of the lightning bolt icon for LTM accounts, so that it is black in day mode and white in night mode.
- Increased the size of the lightning bolt icon to match the letters size and added a bit more separation between them.
2019-12-31 14:18:41 -06:00
Severiano Jaramillo
25087fd483 Keep nodes dialog scrolled to the top.
- Added a custom LinearLayoutManager to the NodesDialog's adapter, so that it can be forced to be kept scrolled up to the top.
2019-12-31 13:54:52 -06:00
Severiano Jaramillo
680f2a616d Show a warning if account has not been backed up.
- Added a section in the Settings, at the bottom of the Backups card that shows a warning when the account has not been backed up (by copying the brainkey) for at least two months.
- Translated the warning text to all supported languages.
- Created an error/warning icon.
2019-12-31 12:14:21 -06:00
Severiano Jaramillo
46af454259 Avoid 0 in Send screen when reading a QR.
- Changed the logic that populates the fields in SendTransactionFragment when a QR code is read, when the amount is zero then just leave the amount field empty so that the user does not have to erase the 0 before typing in the desired amount.
2019-12-26 09:19:46 -06:00
Severiano Jaramillo
3b5d04abd4 Show the keyboard when selecting Other in Receive.
- Automatically show the keyboard and focus the AutoCompleteTextView when the user selects 'Other...' in the Asset spinner, in the Receive screen.
- Created an extension function for EditText, which requests focus and shows the keyboard at the same time, so that the user can immediately start typing the desired text.
2019-12-25 18:07:27 -06:00
Severiano Jaramillo
9cabc0565a Avoid crash due to unsupported currency locale.
- Avoided a crash in ConnectedActivity when trying to obtain the Locale's associated currency, when a Locale does not have a currency.
- Standardized the process to obtain the coingecko supported currency, which will first try to use the current locale's currency and fallback to USD in case the first is not supported.
2019-12-25 17:15:19 -06:00
Severiano Jaramillo
766d42386a Migrate to the new graphenej version.
- Migrated the whole app to the new graphenej version, which removes the usage of the Android Service, enabling to aim for a better and simpler architecture.
- Did a good number of modifications to keep the same or better functionality in all parts of the app that use the NetworkService.
2019-12-19 16:37:45 -06:00
Severiano Jaramillo
b5411fa7fc Update Gradle and a bunch of libraries.
- Updated Gradle and a buncn of libreries, making sure everything kept working correctly.
2019-12-19 13:35:05 -06:00
Severiano Jaramillo
a2f9463ed4 Bumping versionCode to 12 and versionName to 0.16.0-beta 2019-11-12 12:23:23 -06:00
Nelson R. Perez
50ed47c797 Setting the fee asset to always be BTS 2019-11-11 14:20:47 -05:00
Nelson R. Perez
208238c7ed Merge branch 'develop' of github.com:Agorise/bitsy-wallet into develop 2019-11-07 16:39:35 -05:00
Nelson R. Perez
f8b7a11ba9 Introducing a supported currencies cache for the equivalent values feature
- In case the device is without connectivity, we cannot check in real time what the list of supported currencies is from the coingecko API. For this special corner cases we store a cache of this currency list.
2019-11-07 16:36:49 -05:00
Nelson R. Perez
2ef589526d Optimization change
- Spawning a new thread only when actually purging the database
2019-11-07 15:37:32 -05:00
Severiano Jaramillo
8b0df9d28d Add Earn more BTS section to the Settings.
- Added a new Earn more BTS card section to the Settings screen, above the Bugs or Ideas? one.
- Translated the new section string resources to all supported languages.
2019-11-07 10:47:42 -06:00
Severiano Jaramillo
0092f2b225 Merge branch 'develop' of github.com:Agorise/bitsy-wallet into develop 2019-11-06 21:36:57 -06:00
Severiano Jaramillo
b9bb333c7c Animate Share icon in Receive and eReceipt.
- Created a Share icon animation using the ObjectAnimator API and used it in both eReceipt and Receive Transaction screens.
2019-11-06 21:34:20 -06:00
Nelson R. Perez
5e4a82a7f6 Merge branch 'develop' of github.com:Agorise/bitsy-wallet into develop 2019-11-06 16:53:51 -05:00
Nelson R. Perez
8f70b3965d Fixing wrong database entries & making the equivalent value currency dynamic
- Purging invalid entries of the 'equivalent_values' table
- Displaying whathever currency the user happen to have selected *at the moment*. The previous implementation had a flaw that would have made the currency that was used to calculate the equivalent values in first stick, even if the user changed to another locale settings later.
2019-11-06 16:53:39 -05:00
Severiano Jaramillo
710ba72875 Increase QR code margin in receive screen.
- Increased the margin of the QR codes generated in the Receive Transaction screen, so that they are easier to read using low end devices, specially when the app is in night mode.
2019-11-05 20:13:13 -06:00
Severiano Jaramillo
28113af98a Fix Main screen toolbar menu text color.
- Fixed the color of the text for Main screen's toolbar menu so that it looks nice and is readable in both day and night modes.
2019-11-05 20:10:06 -06:00
Nelson R. Perez
1422ed699e Fixes to the equivalent values
- Only inserting an equivalent value into the database in case the value is equal non-negative (negative values are a result of errors)
- Using USD as fallback equivalent value currency
2019-11-05 12:58:43 -05:00
Severiano Jaramillo
21e600069e Bumping versionCode to 11 and versionName to 0.15.0-beta 2019-10-31 16:18:33 -06:00
Severiano Jaramillo
67b70e3df2 Limit the memo length to 100 in the Send screen.
- For some reason if we use a memo longer than 107 chars we get an error, to avoid that error we are limiting the memo length to 100 chars using TextInputLayout's counter options to show the current char count and the max char count. If the current char count exceeds the max the TextInputLayout turns to red and the Send button is disabled.
2019-10-31 15:17:18 -06:00
Severiano Jaramillo
36c9c5928e Disable Agorise fees on debug builds. 2019-10-31 14:09:09 -06:00
Severiano Jaramillo
be205ea765 Increase Receive QRCode margin.
Increased the margin of the QR codes shown in the Receive screen, to make it easier for other phones to scan the QRs when the app is in night mode.
2019-10-31 12:59:53 -06:00
Severiano Jaramillo
218b5952ac Fetch all tellers from the webservice.
- Modified the method that fetches the tellers from the webservice to keep requesting the tellers list until nothing is returned, to make sure the whole list of tellers is obtained.
2019-10-31 12:26:57 -06:00
Severiano Jaramillo
0ae587a7aa Fetch all merchants from the webservice.
- Modified the method that fetches the merchants from the webservice to keep requesting the merchants list until nothing is returned, to make sure the whole list of merchants is obtained.
- Modified the time the app waits to update the merchants and tellers list from 24 hours to just 3 hours.
2019-10-31 12:13:27 -06:00
Severiano Jaramillo
d14c10c672 Avoid crash in SendTransactionFragment.
- The crash was happening because the dialog that verifies the automatic time was being created in onResume, so if the user leaved the application while the fragment was showing and returned to it later another multiple dialogs would be created. The first one to be accepted correctly navigates the user back, but the second creates a crash because references a no longer existing fragment. The dialog creation was moved to onViewCreated instead, so that only one dialog is created.
2019-10-30 18:19:36 -06:00
Severiano Jaramillo
4c0f0e7da0 Update the barcodescanner library version.
- Updated the barcodescanner library version to avoid a crash in certain devices when trying to scan a QR code in the SendTransactionFragment.
2019-10-30 16:47:04 -06:00
Severiano Jaramillo
19d147d36a Bumped versionName to 0.14.0-beta and versionCode to 10 2019-10-02 10:08:29 -05:00
Severiano Jaramillo
f8ff73f45c Verify time sync is enabled.
- Trying to send a transaction in SendTransactionFragment can fail if the date/time is not correctly synced. A Time Sync Error dialog was created to warn the user about that situation so that they can take action and be able to correctly send transactions from bitsy.
- Translated the strings used in the Time Sync Error dialog to all supported languages, and hand corrected the Spanish version.
2019-10-02 10:06:28 -05:00
Severiano Jaramillo
27f54e798e Log exception in SendTransaction to Crashlytics.
- A user is having issues with its active private key, but we have not enugh information to solve the problem. A possible exception causing this issue will be logged to Crashlytics so that we can understand what is going on and solve it.
2019-10-01 17:38:50 -05:00
Severiano Jaramillo
5c6c727b00 Update PDF generation library.
- Added the PDFjet library as a Java Library module to the project and moved all the logic to create the transactions PDF in the TransactionsFragment to use the new PDF lib instead of the old one.
- Fixed the time formatter that was being used to format the transaction's times in exported PDF/CSV files, it was printing months in the place of minutes.
2019-10-01 16:39:35 -05:00
Severiano Jaramillo
72fc8b2ea9 Downgrade ConstraintLayout library version.
- After a lot of search I found that the issue with the EditText in the PINSecurityLockDialog being hidden below the SoftKeyboard was due to a bug in the ConstraintLayout library.
2019-10-01 14:09:35 -05:00