diff --git a/src/js/controllers/confirm.js b/src/js/controllers/confirm.js index 1d455c4b9..60222631e 100644 --- a/src/js/controllers/confirm.js +++ b/src/js/controllers/confirm.js @@ -276,11 +276,12 @@ angular.module('copayApp.controllers').controller('confirmController', function( updateAmount(); showSendMaxWarning(sendMaxInfo); } - refresh(); // txp already generated for this wallet? - if (tx.txp[wallet.id]) + if (tx.txp[wallet.id]) { + refresh(); return cb(); + } getTxp(lodash.clone(tx), wallet, opts.dryRun, function(err, txp) { if (err) return cb(err); @@ -297,6 +298,7 @@ angular.module('copayApp.controllers').controller('confirmController', function( tx.txp[wallet.id] = txp; $log.debug('Confirm. TX Fully Updated for wallet:' + wallet.id, tx); + refresh(); return cb(); }); @@ -567,16 +569,16 @@ angular.module('copayApp.controllers').controller('confirmController', function( }; scope.hideModal = function(customFeeLevel) { + scope.chooseFeeLevelModal.hide(); $log.debug('Custom fee level choosen:' + customFeeLevel + ' was:' + tx.feeLevel); if (tx.feeLevel == customFeeLevel) - scope.chooseFeeLevelModal.hide(); + return; tx.feeLevel = customFeeLevel; updateTx(tx, wallet, { clearCache: true, dryRun: true, }, function() { - scope.chooseFeeLevelModal.hide(); }); }; }; diff --git a/src/js/controllers/preferencesFee.js b/src/js/controllers/preferencesFee.js index c08932cd2..3c3c6ce78 100644 --- a/src/js/controllers/preferencesFee.js +++ b/src/js/controllers/preferencesFee.js @@ -46,7 +46,9 @@ angular.module('copayApp.controllers').controller('preferencesFeeController', fu } $scope.feeLevels = levels; updateCurrentValues(); - $scope.$apply(); + $timeout(function() { + $scope.$apply(); + }); }); }; diff --git a/src/js/services/feeService.js b/src/js/services/feeService.js index 1f51b046b..cdab6a7a5 100644 --- a/src/js/services/feeService.js +++ b/src/js/services/feeService.js @@ -56,9 +56,7 @@ angular.module('copayApp.services').factory('feeService', function($log, $timeou root.getFeeLevels = function(cb) { if (cache.updateTs > Date.now() - CACHE_TIME_TS * 1000) { - $timeout(function() { - return cb(null, cache.data, true); - }, 1); + return cb(null, cache.data, true); } var walletClient = bwcService.getClient();