diff --git a/app-template/bitcoincom/appConfig.json b/app-template/bitcoincom/appConfig.json index 4d879e224..bb387db77 100644 --- a/app-template/bitcoincom/appConfig.json +++ b/app-template/bitcoincom/appConfig.json @@ -24,9 +24,9 @@ "windowsAppId": "804636ee-b017-4cad-8719-e58ac97ffa5c", "pushSenderId": "1036948132229", "description": "A Secure Bitcoin Wallet", - "version": "5.9.1", - "fullVersion": "5.9-rc2", - "androidVersion": "509001", + "version": "5.9.4", + "fullVersion": "5.9-hotfix2", + "androidVersion": "509004", "_extraCSS": "", "_enabledExtensions": { "coinbase": false, diff --git a/app-template/package-template.json b/app-template/package-template.json index 2edad2b8f..666ac790a 100644 --- a/app-template/package-template.json +++ b/app-template/package-template.json @@ -89,9 +89,9 @@ }, "scripts": { "apply:bitcoincom": "npm i fs-extra && cd app-template && node apply.js bitcoincom && npm i && cordova prepare && cd ../ && ./fix-asn1.sh", - + "build:app-release": "grunt build-app-release", - + "build:mobile-release": "grunt build-mobile-release", "build:desktop-release": "grunt build-desktop-release", @@ -110,10 +110,10 @@ "build:windows-release": "cordova prepare windows && cordova build windows --release --arch=\"ARM\"", "build:www": "grunt", "build:www-release": "grunt prod", - + "clean": "trash platforms && trash plugins && cordova prepare", "clean-all": "git clean -dfx", - + "log:android": "adb logcat | grep chromium", "open:android": "grunt exec:android_studio", diff --git a/resources/bitcoin.com/android/icon/drawable-hdpi-icon.png b/resources/bitcoin.com/android/icon/drawable-hdpi-icon.png old mode 100644 new mode 100755 index 0753ae732..9f8314a72 Binary files a/resources/bitcoin.com/android/icon/drawable-hdpi-icon.png and b/resources/bitcoin.com/android/icon/drawable-hdpi-icon.png differ diff --git a/resources/bitcoin.com/android/icon/drawable-ldpi-icon.png b/resources/bitcoin.com/android/icon/drawable-ldpi-icon.png index a318c2e98..9d47e13aa 100644 Binary files a/resources/bitcoin.com/android/icon/drawable-ldpi-icon.png and b/resources/bitcoin.com/android/icon/drawable-ldpi-icon.png differ diff --git a/resources/bitcoin.com/android/icon/drawable-mdpi-icon.png b/resources/bitcoin.com/android/icon/drawable-mdpi-icon.png old mode 100644 new mode 100755 index 5edec10a6..6451d1799 Binary files a/resources/bitcoin.com/android/icon/drawable-mdpi-icon.png and b/resources/bitcoin.com/android/icon/drawable-mdpi-icon.png differ diff --git a/resources/bitcoin.com/android/icon/drawable-xhdpi-icon.png b/resources/bitcoin.com/android/icon/drawable-xhdpi-icon.png old mode 100644 new mode 100755 index 70257cb2c..ea7696cfd Binary files a/resources/bitcoin.com/android/icon/drawable-xhdpi-icon.png and b/resources/bitcoin.com/android/icon/drawable-xhdpi-icon.png differ diff --git a/resources/bitcoin.com/android/icon/drawable-xxhdpi-icon.png b/resources/bitcoin.com/android/icon/drawable-xxhdpi-icon.png old mode 100644 new mode 100755 index 83a10e9ef..ffbe44e32 Binary files a/resources/bitcoin.com/android/icon/drawable-xxhdpi-icon.png and b/resources/bitcoin.com/android/icon/drawable-xxhdpi-icon.png differ diff --git a/resources/bitcoin.com/android/icon/drawable-xxxhdpi-icon.png b/resources/bitcoin.com/android/icon/drawable-xxxhdpi-icon.png old mode 100644 new mode 100755 index c17ed27cb..f02a9a32c Binary files a/resources/bitcoin.com/android/icon/drawable-xxxhdpi-icon.png and b/resources/bitcoin.com/android/icon/drawable-xxxhdpi-icon.png differ diff --git a/src/js/controllers/create.js b/src/js/controllers/create.js index a21053e2d..631233022 100644 --- a/src/js/controllers/create.js +++ b/src/js/controllers/create.js @@ -25,9 +25,10 @@ angular.module('copayApp.controllers').controller('createController', $scope.formData = {}; var config = configService.getSync(); var defaults = configService.getDefaults(); - var tc = $state.current.name == 'tabs.add.create-personal' ? 1 : defaults.wallet.totalCopayers; + var totalCopayers = $state.current.name == 'tabs.add.create-personal' ? 1 : defaults.wallet.totalCopayers; + var bchUrl = totalCopayers == 1 ? defaults.bwscashnew.url : defaults.bwscash.url; $scope.formData.account = 1; - $scope.formData.bwsurl = data.stateParams.coin == 'btc' ? defaults.bws.url : defaults.bwscash.url; + $scope.formData.bwsurl = data.stateParams.coin == 'btc' ? defaults.bws.url : bchUrl; $scope.TCValues = lodash.range(2, defaults.limits.totalCopayers + 1); $scope.formData.derivationPath = derivationPathHelper.default; $scope.formData.coin = data.stateParams.coin; @@ -36,8 +37,8 @@ angular.module('copayApp.controllers').controller('createController', if (config.cashSupport) $scope.enableCash = true; - $scope.setTotalCopayers(tc); - updateRCSelect(tc); + $scope.setTotalCopayers(totalCopayers); + updateRCSelect(totalCopayers); resetPasswordFields(); }); diff --git a/src/js/controllers/custom-amount.controller.js b/src/js/controllers/custom-amount.controller.js index b6a6cb9ed..da41c79be 100644 --- a/src/js/controllers/custom-amount.controller.js +++ b/src/js/controllers/custom-amount.controller.js @@ -48,6 +48,7 @@ var coinsFromSatoshis = 0; var listeningAddressLegacy = ''; var satoshisRequested = 0; + var bchAddresses = {}; function _showErrorAndBack(title, msg) { popupService.showAlert(title, msg, function() { @@ -80,8 +81,7 @@ } $scope.bchAddressType = 'cashaddr'; - var bchAddresses = {}; - + if ($scope.wallet.coin == 'bch') { bchAddresses = bitcoinCashJsService.translateAddresses(addr); vm.displayAddress = bchAddresses[$scope.bchAddressType]; diff --git a/src/js/controllers/import.js b/src/js/controllers/import.js index 59db5c753..062a6a341 100644 --- a/src/js/controllers/import.js +++ b/src/js/controllers/import.js @@ -13,7 +13,8 @@ angular.module('copayApp.controllers').controller('importController', $scope.supportsTrezor = platformInfo.supportsTrezor; $scope.isCordova = platformInfo.isCordova; $scope.formData = {}; - $scope.formData.bwsurl = $stateParams.coin == 'btc' ? defaults.bws.url : defaults.bwscash.url; + $scope.isCopay = appConfigService.name == 'copay'; + $scope.formData.bwsurl = $stateParams.coin == 'btc' ? defaults.bws.url : $scope.isCopay ? defaults.bwscash.url : defaults.bwscashnew.url; $scope.formData.derivationPath = derivationPathHelper.default; $scope.formData.account = 1; $scope.formData.coin = $stateParams.coin ? $stateParams.coin : 'bch'; @@ -78,7 +79,7 @@ angular.module('copayApp.controllers').controller('importController', }; $scope.coinChanged = function() { - $scope.formData.bwsurl = $scope.formData.coin == 'btc' ? defaults.bws.url : defaults.bwscash.url; + $scope.formData.bwsurl = $scope.formData.coin == 'btc' ? defaults.bws.url : $scope.isCopay ? defaults.bwscash.url : defaults.bwscashnew.url; } $scope.processWalletInfo = function(code) { diff --git a/src/js/controllers/marco-coino.controller.js b/src/js/controllers/marco-coino.controller.js index b00a468f5..642d77b7d 100644 --- a/src/js/controllers/marco-coino.controller.js +++ b/src/js/controllers/marco-coino.controller.js @@ -16,7 +16,7 @@ , $timeout ) { - var MARCO_COINO_BASE_URL = 'https://marco-coino.firebaseapp.com/marcocoino-embed.html?zoom=5&color=gold'; + var MARCO_COINO_BASE_URL = 'https://marco-coino.firebaseapp.com/marcocoino-embed.html?zoom=5&color=default'; var ADD_MERCHANT_URL = 'https://marcocoino.bitcoin.com/submit-listing/'; var vm = this; diff --git a/src/js/controllers/modals/pin.js b/src/js/controllers/modals/pin.js index bb7fa41a9..7420c6d7c 100644 --- a/src/js/controllers/modals/pin.js +++ b/src/js/controllers/modals/pin.js @@ -70,7 +70,7 @@ angular.module('copayApp.controllers').controller('pinController', function($sta }; $scope.getFilledClass = function(limit) { - return currentPin.length >= limit ? 'filled-' + $scope.appName : null; + return currentPin.length >= limit ? 'filled' : null; }; $scope.delete = function() { diff --git a/src/js/services/bitcoincomService.js b/src/js/services/bitcoincomService.js index b01f585fd..098184c88 100644 --- a/src/js/services/bitcoincomService.js +++ b/src/js/services/bitcoincomService.js @@ -17,13 +17,6 @@ angular.module('copayApp.services').factory('bitcoincomService', function(gettex credentials.BITPAY_API_URL = "https://bitpay.com"; }; - var cashGamesItem = { - name: 'games', - title: gettextCatalog.getString('Bitcoin Games'), - icon: 'icon-games', - href: 'https://games.bitcoin.com/?utm_source=WalletApp&utm_medium=' + os - }; - var newsItem = { name: 'news', title: gettextCatalog.getString('News'), @@ -99,9 +92,6 @@ angular.module('copayApp.services').factory('bitcoincomService', function(gettex }; var register = function() { - if (!platformInfo.isAndroid) { // To comply with Google Play policies - nextStepsService.register(cashGamesItem); - } nextStepsService.register(newsItem); nextStepsService.register(toolsItem); nextStepsService.register(priceChartItem); diff --git a/src/js/services/configService.js b/src/js/services/configService.js index 9aff5356e..cf37898c8 100644 --- a/src/js/services/configService.js +++ b/src/js/services/configService.js @@ -21,6 +21,10 @@ angular.module('copayApp.services').factory('configService', function(storageSer url: 'https://bwscash.bitcoin.com/bws/api' }, + bwscashnew: { + url: 'https://bch.api.wallet.bitcoin.com/bws/api' + }, + download: { bitpay: { url: 'https://wallet.bitcoin.com' diff --git a/src/js/services/profileService.js b/src/js/services/profileService.js index b02799582..e151ca525 100644 --- a/src/js/services/profileService.js +++ b/src/js/services/profileService.js @@ -766,7 +766,7 @@ angular.module('copayApp.services') bchOpts.n = 1; bchOpts.networkName = 'livenet'; bchOpts.coin = 'bch'; - bchOpts.bwsurl = defaults.bwscash.url; + bchOpts.bwsurl = defaults.bwscashnew.url; var btcOpts = {}; btcOpts.m = 1; diff --git a/src/sass/forms.scss b/src/sass/forms.scss index 3f6121088..9f619080f 100644 --- a/src/sass/forms.scss +++ b/src/sass/forms.scss @@ -1,5 +1,8 @@ .button-clear{ background: none !important; + &.text-black { + color: black; + } } .button-skip { diff --git a/src/sass/views/includes/pin.scss b/src/sass/views/includes/pin.scss index fe8cc118b..dfba8436d 100644 --- a/src/sass/views/includes/pin.scss +++ b/src/sass/views/includes/pin.scss @@ -72,6 +72,10 @@ padding: 7%; margin: 5%; } + .circle { + @include circle; + border: 1px solid $v-bitcoin-green; + } .circle-copay { @include circle; border: 1px solid $v-accent-color; @@ -80,6 +84,9 @@ @include circle; border: 1px solid $v-primary-color; } + .filled { + background-color: $v-bitcoin-green; + } .filled-copay { background-color: $v-accent-color; } diff --git a/www/css/main.css b/www/css/main.css index 20272f6d9..a406a492e 100644 --- a/www/css/main.css +++ b/www/css/main.css @@ -10253,7 +10253,7 @@ ion-view.deflash-blue:before, ion-view#view-amount:before, ion-view#view-confirm text-decoration: none; } .button-white.active, .button-white.activated { border-color: transparent; - background-color: #F1F3FB; } + background-color: transparent; } .button-white.button-clear { border-color: transparent; background: none; @@ -10263,7 +10263,7 @@ ion-view.deflash-blue:before, ion-view#view-amount:before, ion-view#view-confirm border-color: transparent; background: none; } .button-white.activated { - color: #FFF; } + background-color: rgba(0, 0, 0, 0.05); } .button-white-outline { border-color: #FFFFFF; background-color: transparent; @@ -10274,7 +10274,7 @@ ion-view.deflash-blue:before, ion-view#view-amount:before, ion-view#view-confirm color: #FFFFFF; text-decoration: none; } .button-white-outline.active, .button-white-outline.activated { - border-color: #FFFFFF; + border-color: transparent; background-color: #FFFFFF; } .button-white-outline.button-outline { border-color: #FFFFFF; @@ -10284,6 +10284,8 @@ ion-view.deflash-blue:before, ion-view#view-amount:before, ion-view#view-confirm background-color: #FFFFFF; box-shadow: none; color: #fff; } + .button-white-outline.activated { + background-color: rgba(0, 0, 0, 0.1); } .button-grey-outline { border-color: #727272; background-color: transparent; @@ -10305,18 +10307,20 @@ ion-view.deflash-blue:before, ion-view#view-amount:before, ion-view#view-confirm box-shadow: none; color: #fff; } .button-card-style { - border-radius: 3px; - background: white; } + border-radius: 3px; } .button-card-style.white { border-color: transparent; background-color: #FFF; - color: #15d6a0; } + color: #15d6a0; + background: white; } .button-card-style.white:hover { color: #15d6a0; text-decoration: none; } .button-card-style.white.active, .button-card-style.white.activated { border-color: #FFF; background-color: #FFF; } + .button-card-style.white.activated { + background-color: rgba(0, 0, 0, 0.05); } .button-card-style.white-outline { border-color: #FFF; background-color: transparent; @@ -10332,6 +10336,8 @@ ion-view.deflash-blue:before, ion-view#view-amount:before, ion-view#view-confirm .button-clear { background: none !important; } + .button-clear.text-black { + color: black; } .button-skip { padding-top: 15px !important; @@ -12215,11 +12221,12 @@ ion-tabs .tab-title { transform: scale3d(0.5, 0.5, 0.5) translateY(0px); } #walletDetails .bp-content.collapse .amount-alternative, #walletDetails .bp-content.collapse .send-receive-buttons, #walletDetails .bp-content.collapse .wallet-details-wallet-info { opacity: 0; } + #walletDetails ion-header-bar.bar.bar-header { + background-color: #fbfcff !important; } #walletDetails .bar-header { - border: 0; - background: #eeb640; } + border: 0; } #walletDetails .bar-header .title, #walletDetails .bar-header .button { - color: #fff; } + color: #000000; } #walletDetails .bar-header .button { background-color: transparent; } #walletDetails .nav-bar-block, #walletDetails .bar { @@ -15798,6 +15805,13 @@ account-selector { left: 15%; width: 70%; max-height: 55%; } } + #pin .circle { + border-radius: 50%; + box-shadow: 0 0 3px 0px #5b5b5b; + transition: background-color .2s ease-in-out; + padding: 7%; + margin: 5%; + border: 1px solid #0AC18E; } #pin .circle-copay { border-radius: 50%; box-shadow: 0 0 3px 0px #5b5b5b; @@ -15812,6 +15826,8 @@ account-selector { padding: 7%; margin: 5%; border: 1px solid #0AC18E; } + #pin .filled { + background-color: #0AC18E; } #pin .filled-copay { background-color: #494949; } #pin .filled-bitpay { diff --git a/www/img/contact-placeholder.svg b/www/img/contact-placeholder.svg index 54b0fcec2..4eb190d77 100644 --- a/www/img/contact-placeholder.svg +++ b/www/img/contact-placeholder.svg @@ -9,9 +9,9 @@ - + - + diff --git a/www/views/modals/altCurrency.html b/www/views/modals/altCurrency.html index 2da2b9584..066603a2c 100644 --- a/www/views/modals/altCurrency.html +++ b/www/views/modals/altCurrency.html @@ -3,7 +3,7 @@
{{'Alternative Currency'|translate}}
- diff --git a/www/views/modals/pin.html b/www/views/modals/pin.html index d7ed850ad..b15f97e8a 100644 --- a/www/views/modals/pin.html +++ b/www/views/modals/pin.html @@ -1,6 +1,6 @@ - @@ -20,10 +20,10 @@
-
-
-
-
+
+
+
+
diff --git a/www/views/tab-receive.html b/www/views/tab-receive.html index 0a962dbe6..a400d11e6 100644 --- a/www/views/tab-receive.html +++ b/www/views/tab-receive.html @@ -30,7 +30,7 @@
-

diff --git a/www/views/tab-scan.html b/www/views/tab-scan.html index 352976cb2..12b417db1 100644 --- a/www/views/tab-scan.html +++ b/www/views/tab-scan.html @@ -2,7 +2,7 @@ {{'Scan' | translate}} -