From f3117cec178b828cc5479b7d2e5ee4a29f822905 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20Baz=C3=A1n?= Date: Tue, 27 Sep 2016 10:51:30 -0300 Subject: [PATCH] fixes - hide tabs in backup flow --- public/views/tab-receive.html | 2 +- src/js/controllers/import.js | 2 +- src/js/controllers/tab-receive.js | 43 +++++++++++++++------------- src/js/controllers/tabsController.js | 4 +++ src/js/services/profileService.js | 3 +- 5 files changed, 31 insertions(+), 23 deletions(-) diff --git a/public/views/tab-receive.html b/public/views/tab-receive.html index d8f43983b..29a605958 100644 --- a/public/views/tab-receive.html +++ b/public/views/tab-receive.html @@ -31,7 +31,7 @@
-
+
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();