diff --git a/public/views/modals/tx-details.html b/public/views/modals/tx-details.html
index 797909be6..31d46c5f0 100644
--- a/public/views/modals/tx-details.html
+++ b/public/views/modals/tx-details.html
@@ -75,7 +75,7 @@
-
+
Date
diff --git a/public/views/preferences.html b/public/views/preferences.html
index 8c5fceaf6..c147ef54b 100644
--- a/public/views/preferences.html
+++ b/public/views/preferences.html
@@ -19,7 +19,7 @@
Hardware Wallet
- {{wallet.externalSource}}
+ {{externalSource}}
@@ -45,12 +45,12 @@
-
+
Request Spending Password
-
+
Request Fingerprint
diff --git a/public/views/tab-export-file.html b/public/views/tab-export-file.html
index 70fc041c4..31eb7d51a 100644
--- a/public/views/tab-export-file.html
+++ b/public/views/tab-export-file.html
@@ -29,7 +29,7 @@
-
+
@@ -38,7 +38,7 @@
-
+
@@ -90,4 +90,4 @@
Copy this text as it is to a safe place (notepad or email)
-
\ No newline at end of file
+
diff --git a/src/js/controllers/addressbookAdd.js b/src/js/controllers/addressbookAdd.js
index 4b22e12ca..12d0305af 100644
--- a/src/js/controllers/addressbookAdd.js
+++ b/src/js/controllers/addressbookAdd.js
@@ -37,7 +37,7 @@ angular.module('copayApp.controllers').controller('addressbookAddController', fu
};
$scope.goHome = function() {
- $ionicHistory.clearHistory();
+ $ionicHistory.removeBackView();
$state.go('tabs.home');
};
diff --git a/src/js/controllers/amount.js b/src/js/controllers/amount.js
index ae8d8a935..19a0c2b26 100644
--- a/src/js/controllers/amount.js
+++ b/src/js/controllers/amount.js
@@ -10,7 +10,11 @@ angular.module('copayApp.controllers').controller('amountController', function($
var SMALL_FONT_SIZE_LIMIT = 13;
var LENGTH_EXPRESSION_LIMIT = 19;
- $scope.$on("$ionicView.enter", function(event, data){
+ $scope.toAddress = $stateParams.toAddress;
+ $scope.toName = $stateParams.toName;
+ $scope.toEmail = $stateParams.toEmail;
+
+ $scope.$on("$ionicView.beforeEnter", function(event, data) {
if (!$stateParams.toAddress) {
$log.error('Bad params at amount')
@@ -46,11 +50,6 @@ angular.module('copayApp.controllers').controller('amountController', function($
angular.element($window).off('keydown');
});
-
- $scope.toAddress = $stateParams.toAddress;
- $scope.toName = $stateParams.toName;
- $scope.toEmail = $stateParams.toEmail;
-
var config = configService.getSync().wallet.settings;
$scope.unitName = config.unitName;
$scope.alternativeIsoCode = config.alternativeIsoCode;
diff --git a/src/js/controllers/backup.js b/src/js/controllers/backup.js
index dc4217499..ea28fdaad 100644
--- a/src/js/controllers/backup.js
+++ b/src/js/controllers/backup.js
@@ -97,7 +97,7 @@ angular.module('copayApp.controllers').controller('backupController',
if ($stateParams.fromOnboarding) {
$state.go('onboarding.disclaimer');
} else {
- $ionicHistory.clearHistory();
+ $ionicHistory.removeBackView();
$state.go('tabs.home');
}
};
diff --git a/src/js/controllers/confirm.js b/src/js/controllers/confirm.js
index 841101664..ea91048d1 100644
--- a/src/js/controllers/confirm.js
+++ b/src/js/controllers/confirm.js
@@ -4,6 +4,16 @@ angular.module('copayApp.controllers').controller('confirmController', function(
var cachedTxp = {};
var isChromeApp = platformInfo.isChromeApp;
+ $scope.toAddress = $stateParams.toAddress;
+ $scope.toName = $stateParams.toName;
+ $scope.toEmail = $stateParams.toEmail;
+ $scope.description = $stateParams.description;
+ $scope.paypro = $stateParams.paypro;
+
+ $scope.$on("$ionicView.enter", function(event, data) {
+ initConfirm();
+ });
+
var initConfirm = function() {
if ($stateParams.paypro) {
return setFromPayPro($stateParams.paypro, function(err) {
@@ -26,12 +36,6 @@ angular.module('copayApp.controllers').controller('confirmController', function(
var amount = $scope.toAmount = parseInt($stateParams.toAmount);
$scope.amountStr = txFormatService.formatAmountStr($scope.toAmount);
- $scope.toAddress = $stateParams.toAddress;
- $scope.toName = $stateParams.toName;
- $scope.toEmail = $stateParams.toEmail;
- $scope.description = $stateParams.description;
- $scope.paypro = $stateParams.paypro;
-
var networkName = (new bitcore.Address($scope.toAddress)).network.name;
$scope.network = networkName;
@@ -309,8 +313,4 @@ angular.module('copayApp.controllers').controller('confirmController', function(
$scope.cancel = function() {
$state.go('tabs.send');
};
-
- $scope.$on("$ionicView.enter", function(event, data) {
- initConfirm();
- });
});
diff --git a/src/js/controllers/create.js b/src/js/controllers/create.js
index 012143336..84c77275f 100644
--- a/src/js/controllers/create.js
+++ b/src/js/controllers/create.js
@@ -175,12 +175,11 @@ angular.module('copayApp.controllers').controller('createController',
if ($scope.seedSource.id == 'set') {
profileService.setBackupFlag(client.credentials.walletId);
}
-
+ $ionicHistory.removeBackView();
if (!client.isComplete()) {
$ionicHistory.nextViewOptions({
disableAnimate: true
});
- $ionicHistory.removeBackView();
$state.go('tabs.home');
$timeout(function() {
$state.transitionTo('tabs.copayers', {
diff --git a/src/js/controllers/export.js b/src/js/controllers/export.js
index d9e70d5b6..4d7aed6c0 100644
--- a/src/js/controllers/export.js
+++ b/src/js/controllers/export.js
@@ -71,7 +71,7 @@ angular.module('copayApp.controllers').controller('exportController',
popupService.showAlert(gettextCatalog.getString('Error'), gettextCatalog.getString('Failed to export'));
return;
}
- $ionicHistory.clearHistory();
+ $ionicHistory.removeBackView();
$state.go('tabs.home');
});
});
@@ -158,7 +158,7 @@ angular.module('copayApp.controllers').controller('exportController',
});
};
- $scope.$on("$ionicView.enter", function(event, data){
+ $scope.$on("$ionicView.beforeEnter", function(event, data) {
init();
});
diff --git a/src/js/controllers/import.js b/src/js/controllers/import.js
index 45d03da1f..388360787 100644
--- a/src/js/controllers/import.js
+++ b/src/js/controllers/import.js
@@ -345,6 +345,7 @@ angular.module('copayApp.controllers').controller('importController',
if (err) $log.error(err);
});
}
+ $ionicHistory.removeBackView();
$state.go('tabs.home', {
fromOnboarding: $stateParams.fromOnboarding
});
diff --git a/src/js/controllers/join.js b/src/js/controllers/join.js
index 757a584b9..f983e25c5 100644
--- a/src/js/controllers/join.js
+++ b/src/js/controllers/join.js
@@ -145,7 +145,7 @@ angular.module('copayApp.controllers').controller('joinController',
walletService.updateRemotePreferences(client, {}, function() {
$log.debug('Remote preferences saved for:' + client.credentials.walletId)
});
-
+ $ionicHistory.removeBackView();
$state.go('tabs.home');
});
}, 100);
diff --git a/src/js/controllers/modals/txStatus.js b/src/js/controllers/modals/txStatus.js
index 1a736829d..c69e34180 100644
--- a/src/js/controllers/modals/txStatus.js
+++ b/src/js/controllers/modals/txStatus.js
@@ -5,7 +5,7 @@ angular.module('copayApp.controllers').controller('txStatusController', function
if ($scope.cb) $timeout($scope.cb, 100);
$scope.cancel = function() {
- $ionicHistory.clearHistory();
+ $ionicHistory.removeBackView();
$state.go('tabs.home');
$scope.txStatusModal.hide();
};
diff --git a/src/js/controllers/paperWallet.js b/src/js/controllers/paperWallet.js
index 7025e8bf5..e346863a4 100644
--- a/src/js/controllers/paperWallet.js
+++ b/src/js/controllers/paperWallet.js
@@ -96,7 +96,7 @@ angular.module('copayApp.controllers').controller('paperWalletController',
popupService.showAlert(gettextCatalog.getString('Error sweeping wallet:'), err || err.toString());
} else {
$scope.openStatusModal('broadcasted', function() {
- $ionicHistory.clearHistory();
+ $ionicHistory.removeBackView();
$state.go('tabs.home');
});
}
@@ -120,7 +120,7 @@ angular.module('copayApp.controllers').controller('paperWalletController',
});
};
- $scope.$on("$ionicView.enter", function(event, data){
+ $scope.$on("$ionicView.enter", function(event, data) {
var wallet = profileService.getWallet($stateParams.walletId);
$scope.wallet = wallet;
$scope.isCordova = platformInfo.isCordova;
diff --git a/src/js/controllers/paymentUri.js b/src/js/controllers/paymentUri.js
index 70cf15d51..803f52a2e 100644
--- a/src/js/controllers/paymentUri.js
+++ b/src/js/controllers/paymentUri.js
@@ -47,7 +47,7 @@ angular.module('copayApp.controllers').controller('paymentUriController',
this.selectWallet = function(wid) {
var self = this;
profileService.setAndStoreFocus(wid, function() {});
- $ionicHistory.clearHistory();
+ $ionicHistory.removeBackView();
$state.go('tabs.home');
$timeout(function() {
$rootScope.$emit('paymentUri', self.bitcoinURI);
diff --git a/src/js/controllers/preferences.js b/src/js/controllers/preferences.js
index a93d7b260..3ab7cf1de 100644
--- a/src/js/controllers/preferences.js
+++ b/src/js/controllers/preferences.js
@@ -8,7 +8,7 @@ angular.module('copayApp.controllers').controller('preferencesController',
$scope.encryptChange = function() {
if (!wallet) return;
- var val = $scope.encryptEnabled;
+ var val = $scope.encryptEnabled.value;
if (val && !walletService.isEncrypted(wallet)) {
$log.debug('Encrypting private key for', wallet.name);
@@ -17,7 +17,7 @@ angular.module('copayApp.controllers').controller('preferencesController',
$log.warn(err);
// ToDo show error?
- $scope.encryptEnabled = false;
+ $scope.encryptEnabled.value = false;
return;
}
profileService.updateCredentials(JSON.parse(wallet.export()), function() {
@@ -31,7 +31,7 @@ angular.module('copayApp.controllers').controller('preferencesController',
$log.warn(err);
// ToDo show error?
- $scope.encryptEnabled = true;
+ $scope.encryptEnabled.value = true;
return;
}
profileService.updateCredentials(JSON.parse(wallet.export()), function() {
@@ -43,10 +43,10 @@ angular.module('copayApp.controllers').controller('preferencesController',
};
$scope.touchIdChange = function() {
- var newStatus = $scope.touchIdEnabled;
+ var newStatus = $scope.touchIdEnabled.value;
walletService.setTouchId(wallet, !!newStatus, function(err) {
if (err) {
- $scope.touchIdEnabled = !newStatus;
+ $scope.touchIdEnabled.value = !newStatus;
$timeout(function() {
$scope.$apply();
}, 1);
@@ -56,7 +56,7 @@ angular.module('copayApp.controllers').controller('preferencesController',
});
};
- $scope.$on("$ionicView.beforeEnter", function(event, data){
+ $scope.$on("$ionicView.beforeEnter", function(event, data) {
$scope.externalSource = null;
if (!wallet)
@@ -64,12 +64,17 @@ angular.module('copayApp.controllers').controller('preferencesController',
var config = configService.getSync();
- $scope.encryptEnabled = walletService.isEncrypted(wallet);
+ $scope.encryptEnabled = {
+ value: walletService.isEncrypted(wallet)
+ };
+
if (wallet.isPrivKeyExternal)
$scope.externalSource = wallet.getPrivKeyExternalSourceName() == 'ledger' ? 'Ledger' : 'Trezor';
$scope.touchIdAvailable = fingerprintService.isAvailable();
- $scope.touchIdEnabled = config.touchIdFor ? config.touchIdFor[walletId] : null;
+ $scope.touchIdEnabled = {
+ value: config.touchIdFor ? config.touchIdFor[walletId] : null
+ };
$scope.deleted = false;
if (wallet.credentials && !wallet.credentials.mnemonicEncrypted && !wallet.credentials.mnemonic) {
diff --git a/src/js/controllers/preferencesHistory.js b/src/js/controllers/preferencesHistory.js
index d65eca2d5..b1d06c098 100644
--- a/src/js/controllers/preferencesHistory.js
+++ b/src/js/controllers/preferencesHistory.js
@@ -125,13 +125,13 @@ angular.module('copayApp.controllers').controller('preferencesHistory',
$scope.$emit('Local/ClearHistory');
$timeout(function() {
- $ionicHistory.clearHistory();
+ $ionicHistory.removeBackView();
$state.go('tabs.home');
}, 100);
});
};
- $scope.$on("$ionicView.enter", function(event, data){
+ $scope.$on("$ionicView.enter", function(event, data) {
$scope.csvHistory();
});
});
diff --git a/src/js/controllers/preferencesInformation.js b/src/js/controllers/preferencesInformation.js
index 0ffaa78a2..3cbac1bab 100644
--- a/src/js/controllers/preferencesInformation.js
+++ b/src/js/controllers/preferencesInformation.js
@@ -1,7 +1,7 @@
'use strict';
angular.module('copayApp.controllers').controller('preferencesInformation',
- function($scope, $log, $timeout, $ionicHistory, platformInfo, gettextCatalog, lodash, profileService, configService, $stateParams, walletService, $state) {
+ function($scope, $log, $timeout, $ionicHistory, $ionicScrollDelegate, platformInfo, gettextCatalog, lodash, profileService, configService, $stateParams, walletService, $state) {
var base = 'xpub';
var wallet = profileService.getWallet($stateParams.walletId);
var walletId = wallet.id;
@@ -65,7 +65,7 @@ angular.module('copayApp.controllers').controller('preferencesInformation',
opts.colorFor[walletId] = color;
configService.set(opts, function(err) {
- $ionicHistory.clearHistory();
+ $ionicHistory.removeBackView();
$state.go('tabs.home');
if (err) $log.warn(err);
});
@@ -77,11 +77,11 @@ angular.module('copayApp.controllers').controller('preferencesInformation',
$scope.scan = function() {
walletService.startScan(wallet);
- $ionicHistory.clearHistory();
+ $ionicHistory.removeBackView();
$state.go('tabs.home');
};
- $scope.$on("$ionicView.enter", function(event, data){
+ $scope.$on("$ionicView.enter", function(event, data) {
var c = wallet.credentials;
var basePath = c.getBaseAddressDerivationPath();
@@ -116,7 +116,7 @@ angular.module('copayApp.controllers').controller('preferencesInformation',
$timeout(function() {
$scope.$apply();
});
-
+ $ionicScrollDelegate.resize();
});
});
diff --git a/src/js/controllers/preferencesLogs.js b/src/js/controllers/preferencesLogs.js
index 8cb067e7a..43d5d42cb 100644
--- a/src/js/controllers/preferencesLogs.js
+++ b/src/js/controllers/preferencesLogs.js
@@ -3,32 +3,33 @@
angular.module('copayApp.controllers').controller('preferencesLogs',
function($scope, historicLog, gettextCatalog) {
- $scope.prepare = function() {
- var log = 'Copay Session Logs\n Be careful, this could contain sensitive private data\n\n';
- log += '\n\n';
- log += $scope.logs.map(function(v) {
- return v.msg;
- }).join('\n');
-
- return log;
- };
-
- $scope.sendLogs = function() {
- var body = $scope.prepare();
-
- window.plugins.socialsharing.shareViaEmail(
- body,
- 'Copay Logs',
- null, // TO: must be null or an array
- null, // CC: must be null or an array
- null, // BCC: must be null or an array
- null, // FILES: can be null, a string, or an array
- function() {},
- function() {}
- );
- };
-
- $scope.$on("$ionicView.enter", function(event, data){
+ $scope.$on("$ionicView.enter", function(event, data) {
$scope.logs = historicLog.get();
+
+ $scope.prepare = function() {
+ var log = 'Copay Session Logs\n Be careful, this could contain sensitive private data\n\n';
+ log += '\n\n';
+ log += $scope.logs.map(function(v) {
+ return v.msg;
+ }).join('\n');
+
+ return log;
+ };
+
+ $scope.sendLogs = function() {
+ var body = $scope.prepare();
+
+ window.plugins.socialsharing.shareViaEmail(
+ body,
+ 'Copay Logs',
+ null, // TO: must be null or an array
+ null, // CC: must be null or an array
+ null, // BCC: must be null or an array
+ null, // FILES: can be null, a string, or an array
+ function() {},
+ function() {}
+ );
+ };
+
});
});
diff --git a/src/js/controllers/tab-settings.js b/src/js/controllers/tab-settings.js
index 310803cdd..f8f13202c 100644
--- a/src/js/controllers/tab-settings.js
+++ b/src/js/controllers/tab-settings.js
@@ -28,10 +28,16 @@ angular.module('copayApp.controllers').controller('tabSettingsController', funct
$scope.$digest();
});
}
- $scope.spendUnconfirmed = {value : config.wallet.spendUnconfirmed};
- $scope.glideraEnabled = {value: config.glidera.enabled};
+ $scope.spendUnconfirmed = {
+ value: config.wallet.spendUnconfirmed
+ };
+ $scope.glideraEnabled = {
+ value: config.glidera.enabled
+ };
$scope.coinbaseEnabled = config.coinbase.enabled;
- $scope.pushNotifications = {value: config.pushNotifications.enabled};
+ $scope.pushNotifications = {
+ value: config.pushNotifications.enabled
+ };
$scope.otherWallets = lodash.filter(profileService.getWallets(self.network), function(w) {
return w.id != self.walletId;
});
@@ -94,7 +100,7 @@ angular.module('copayApp.controllers').controller('tabSettingsController', funct
});
};
- $scope.$on("$ionicView.enter", function(event, data){
+ $scope.$on("$ionicView.enter", function(event, data) {
updateConfig();
});
diff --git a/src/js/services/applicationService.js b/src/js/services/applicationService.js
index 6c7de2954..7ec528f46 100644
--- a/src/js/services/applicationService.js
+++ b/src/js/services/applicationService.js
@@ -19,7 +19,7 @@ angular.module('copayApp.services')
if (isChromeApp) {
chrome.runtime.reload();
} else if (isNW) {
- $ionicHistory.clearHistory();
+ $ionicHistory.removeBackView();
$state.go('tabs.home');
$timeout(function() {
var win = require('nw.gui').Window.get();