From c21ff0c0776a5fa8ab4ce77171ae6f2decfba37f Mon Sep 17 00:00:00 2001 From: Gustavo Maximiliano Cortez Date: Wed, 24 May 2017 12:42:22 -0300 Subject: [PATCH] Fix event for newCopayers --- src/js/controllers/copayers.js | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/js/controllers/copayers.js b/src/js/controllers/copayers.js index b022b9fe9..4e74a3862 100644 --- a/src/js/controllers/copayers.js +++ b/src/js/controllers/copayers.js @@ -3,6 +3,7 @@ angular.module('copayApp.controllers').controller('copayersController', function($scope, $log, $timeout, $stateParams, $state, $rootScope, $ionicHistory, appConfigService, lodash, profileService, walletService, popupService, bwcError, platformInfo, gettextCatalog, ongoingProcess, pushNotificationsService) { + var listener; var appName = appConfigService.userVisibleName; var appUrl = appConfigService.url; @@ -11,13 +12,14 @@ angular.module('copayApp.controllers').controller('copayersController', $scope.wallet = profileService.getWallet(data.stateParams.walletId); updateWallet(); $scope.shareIcon = platformInfo.isIOS ? 'iOS' : 'Android'; - }); + + listener = $rootScope.$on('bwsEvent', function(e, walletId, type, n) { + if ($scope.wallet && walletId == $scope.wallet.id && type == ('NewCopayer' || 'WalletComplete')) + updateWalletDebounced(); + }); + }); - var listener = $rootScope.$on('bwsEvent', function() { - updateWallet(); - }); - - $scope.$on('$destroy', function() { + $scope.$on("$ionicView.leave", function(event, data) { listener(); }); @@ -47,6 +49,8 @@ angular.module('copayApp.controllers').controller('copayersController', }); }; + var updateWalletDebounced = lodash.debounce(updateWallet, 5000, true); + $scope.showDeletePopup = function() { var title = gettextCatalog.getString('Confirm'); var msg = gettextCatalog.getString('Are you sure you want to cancel and delete this wallet?'); @@ -90,6 +94,7 @@ angular.module('copayApp.controllers').controller('copayersController', }; $scope.clearNextView = function() { + listener(); // remove listener $ionicHistory.nextViewOptions({ disableAnimate: true, historyRoot: true