Wallet not backed up
diff --git a/src/js/controllers/import.js b/src/js/controllers/import.js
index 388360787..bdc97e984 100644
--- a/src/js/controllers/import.js
+++ b/src/js/controllers/import.js
@@ -1,7 +1,7 @@
'use strict';
angular.module('copayApp.controllers').controller('importController',
- function($scope, $timeout, $log, $state, $stateParams, profileService, configService, sjcl, ledger, trezor, derivationPathHelper, platformInfo, bwcService, ongoingProcess, walletService, popupService, gettextCatalog) {
+ function($scope, $timeout, $log, $state, $stateParams, $ionicHistory, profileService, configService, sjcl, ledger, trezor, derivationPathHelper, platformInfo, bwcService, ongoingProcess, walletService, popupService, gettextCatalog) {
var isChromeApp = platformInfo.isChromeApp;
var isDevel = platformInfo.isDevel;
diff --git a/src/js/controllers/tab-receive.js b/src/js/controllers/tab-receive.js
index 73d670693..23c157a6e 100644
--- a/src/js/controllers/tab-receive.js
+++ b/src/js/controllers/tab-receive.js
@@ -33,12 +33,16 @@ angular.module('copayApp.controllers').controller('tabReceiveController', functi
$scope.addr = null;
$scope.generatingAddress = true;
+ $timeout(function() {
+ walletService.getAddress($scope.wallet, forceNew, function(err, addr) {
+ $scope.generatingAddress = false;
+ if (err) popupService.showAlert(gettextCatalog.getString('Error'), err);
+ $scope.addr = addr;
+ if ($scope.wallet.showBackupNeededModal) $scope.openBackupNeededModal();
+ $scope.$apply();
+ });
+ }, 100);
- walletService.getAddress($scope.wallet, forceNew, function(err, addr) {
- $scope.generatingAddress = false;
- if (err) popupService.showAlert(gettextCatalog.getString('Error'), err);
- $scope.addr = addr;
- });
};
$scope.$on("$ionicView.beforeEnter", function(event, data) {
@@ -49,13 +53,9 @@ angular.module('copayApp.controllers').controller('tabReceiveController', functi
$log.debug('No wallet provided');
return;
}
- $timeout(function() {
- $scope.wallet = wallet;
- $log.debug('Wallet changed: ' + wallet.name);
- $scope.setAddress();
- if ($scope.wallet.showBackupNeededModal) $scope.openBackupNeededModal();
- $scope.$apply();
- });
+ $scope.wallet = wallet;
+ $log.debug('Wallet changed: ' + wallet.name);
+ $scope.setAddress();
});
});
@@ -73,14 +73,17 @@ angular.module('copayApp.controllers').controller('tabReceiveController', functi
};
$scope.openBackupNeededModal = function() {
- $ionicModal.fromTemplateUrl('views/includes/backupNeededPopup.html', {
- scope: $scope,
- backdropClickToClose: false,
- hardwareBackButtonClose: false
- }).then(function(modal) {
- $scope.BackupNeededModal = modal;
- $scope.BackupNeededModal.show();
- });
+ $timeout(function() {
+ $ionicModal.fromTemplateUrl('views/includes/backupNeededPopup.html', {
+ scope: $scope,
+ backdropClickToClose: false,
+ hardwareBackButtonClose: false
+ }).then(function(modal) {
+ $scope.BackupNeededModal = modal;
+ $scope.BackupNeededModal.show();
+ });
+ }, 100);
+
};
$scope.close = function() {
diff --git a/src/js/controllers/tabsController.js b/src/js/controllers/tabsController.js
index 6d1a7116f..434a1e80c 100644
--- a/src/js/controllers/tabsController.js
+++ b/src/js/controllers/tabsController.js
@@ -31,6 +31,10 @@ angular.module('copayApp.controllers').controller('tabsController', function($ro
'tabs.addressbook',
'tabs.addressbook.add',
'tabs.addressbook.view',
+ 'tabs.preferences.backupWarning',
+ 'tabs.preferences.backup',
+ 'tabs.receive.backupWarning',
+ 'tabs.receive.backup',
];
$rootScope.$on('$ionicView.beforeEnter', function() {
diff --git a/src/js/services/profileService.js b/src/js/services/profileService.js
index bb1e15084..5ecfe26cc 100644
--- a/src/js/services/profileService.js
+++ b/src/js/services/profileService.js
@@ -118,7 +118,8 @@ angular.module('copayApp.services')
});
_showBackupNeededModal(wallet, function(val) {
- wallet.showBackupNeededModal = val;
+ if (wallet.needsBackup) wallet.showBackupNeededModal = val;
+ else wallet.showBackupNeededModal = false;
});
wallet.removeAllListeners();