From a56507fe87455fbbc9e29f612af0be934f811685 Mon Sep 17 00:00:00 2001 From: Matias Alejo Garcia Date: Tue, 28 Apr 2015 16:58:40 -0300 Subject: [PATCH] faster tab switching --- public/views/walletHome.html | 2 +- src/js/controllers/index.js | 2 +- src/js/controllers/walletHome.js | 28 +++++++++++++++++----------- src/js/services/profileService.js | 1 + 4 files changed, 20 insertions(+), 13 deletions(-) diff --git a/public/views/walletHome.html b/public/views/walletHome.html index ca934676f..572983e93 100644 --- a/public/views/walletHome.html +++ b/public/views/walletHome.html @@ -224,7 +224,7 @@
- diff --git a/src/js/controllers/index.js b/src/js/controllers/index.js index f094c12f4..c9a78f0c0 100644 --- a/src/js/controllers/index.js +++ b/src/js/controllers/index.js @@ -406,8 +406,8 @@ angular.module('copayApp.controllers').controller('indexController', function($r }); if (used) { $log.debug('Address ' + addr + ' was used. Cleaning Cache.') - $rootScope.$emit('Local/NeedNewAddress', err); storageService.clearLastAddress(self.walletId, function(err) { + $rootScope.$emit('Local/NeedNewAddress', err); if (cb) return cb(); }); }; diff --git a/src/js/controllers/walletHome.js b/src/js/controllers/walletHome.js index eebed2dfb..c956cdde8 100644 --- a/src/js/controllers/walletHome.js +++ b/src/js/controllers/walletHome.js @@ -37,21 +37,23 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi }); var disableAddrListener = $rootScope.$on('Local/NeedNewAddress', function() { - self.getAddress(); + self.setNewAddress(); }); var disableFocusListener = $rootScope.$on('Local/NewFocusedWallet', function() { + self.addr = null; self.resetForm(); }); var disableTabListener = $rootScope.$on('Local/TabChanged', function(e, tab) { + // This will slow down switch, do not add things here! switch (tab) { + case 'receive': + // just to be sure we have an address + self.setAddress(); + break; case 'send': self.resetError(); - self.setInputs(); - case 'receive': - self.getAddress(); - break; }; }); @@ -277,8 +279,7 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi }; // Receive - - this.newAddress = function() { + this.setNewAddress = function() { var fc = profileService.focusedClient; self.generatingAddress = true; fc.createAddress(function(err, addr) { @@ -298,16 +299,19 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi }); }; - this.getAddress = function() { + this.setAddress = function() { + if (self.addr) + return; + var fc = profileService.focusedClient; $timeout(function() { storageService.getLastAddress(fc.credentials.walletId, function(err, addr) { if (addr) { self.addr = addr; + $scope.$digest(); } else { - self.newAddress(); + self.setNewAddress(); } - $scope.$digest(); }); }); }; @@ -399,7 +403,7 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi }, 1); }; - this.setInputs = function() { + this.setSendFormInputs = function() { var unitToSat = this.unitToSatoshi; var satToUnit = 1 / unitToSat; /** @@ -812,5 +816,7 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi // Startup events this.bindTouchDown(); + this.setAddress(); + this.setSendFormInputs(); }); diff --git a/src/js/services/profileService.js b/src/js/services/profileService.js index dc9d353ab..c8bab0058 100644 --- a/src/js/services/profileService.js +++ b/src/js/services/profileService.js @@ -74,6 +74,7 @@ angular.module('copayApp.services') } }); +console.log('[profileService.js.76] BIND'); //TODO client.on('notification', function(n) { $log.debug('BWC Notification:', n); notificationService.newBWCNotification(n,