diff --git a/src/js/controllers/amount.js b/src/js/controllers/amount.js index adbb21a61..2d0a5aa28 100644 --- a/src/js/controllers/amount.js +++ b/src/js/controllers/amount.js @@ -9,6 +9,8 @@ angular.module('copayApp.controllers').controller('amountController', function($ var satToBtc; var SMALL_FONT_SIZE_LIMIT = 10; var LENGTH_EXPRESSION_LIMIT = 19; + var LENGTH_BEFORE_COMMA_EXPRESSION_LIMIT = 8; + var LENGTH_AFTER_COMMA_EXPRESSION_LIMIT = 8; var isNW = platformInfo.isNW; var unitIndex = 0; @@ -253,13 +255,8 @@ angular.module('copayApp.controllers').controller('amountController', function($ }; $scope.changeUnit = function() { - $scope.amountModel.amount = '0'; - if ($scope.alternativeAmount == 0) { - $scope.alternativeAmount = null; - } else { - $scope.amountModel.amount = parseFloat($scope.alternativeAmount.replace(/[^0-9-.]/g, '')); - } + $scope.amountModel.amount = '0'; if (fixedUnit) return; @@ -269,7 +266,6 @@ angular.module('copayApp.controllers').controller('amountController', function($ } if (availableUnits[unitIndex].isFiat) { - $scope.amountModel.amount = parseFloat($scope.amountModel.amount).toFixed(2); altUnitIndex = altUnitIndex == 0 && availableUnits.length > 2 ? 1 : 0; } else { altUnitIndex = lodash.findIndex(availableUnits, { @@ -304,6 +300,12 @@ angular.module('copayApp.controllers').controller('amountController', function($ }; $scope.pushDigit = function(digit) { + if ($scope.amountModel.amount && digit != '.') { + var amountSplitByComma = $scope.amountModel.amount.split('.'); + if (amountSplitByComma.length > 1 && amountSplitByComma[1].length >= LENGTH_AFTER_COMMA_EXPRESSION_LIMIT) return; + if (amountSplitByComma.length == 1 && amountSplitByComma[0].length >= LENGTH_BEFORE_COMMA_EXPRESSION_LIMIT) return; + } + if ($scope.amountModel.amount && $scope.amountModel.amount.length >= LENGTH_EXPRESSION_LIMIT) return; if (($scope.amountModel.amount.indexOf('.') > -1 || $scope.amountModel.amount == '') && digit == '.') return; if ($scope.amountModel.amount == '0' && digit == '0') return; diff --git a/src/js/controllers/tab-scan.js b/src/js/controllers/tab-scan.js index 1744f3d69..c29be53ad 100644 --- a/src/js/controllers/tab-scan.js +++ b/src/js/controllers/tab-scan.js @@ -61,10 +61,7 @@ angular.module('copayApp.controllers').controller('tabScanController', function( $scope.$on("$ionicView.afterEnter", function() { // try initializing and refreshing status any time the view is entered - if(!scannerService.isInitialized()){ - scannerService.gentleInitialize(); - } - activate(); + scannerService.gentleInitialize(); }); function activate(){ diff --git a/src/sass/views/amount.scss b/src/sass/views/amount.scss index 08892c88d..26169f206 100644 --- a/src/sass/views/amount.scss +++ b/src/sass/views/amount.scss @@ -337,7 +337,7 @@ right: 0; top: 50%; transform: translate(0, -50%); - padding: 5px; + padding: 15px; img { width: 18px;