From 46a3a9871f3ced1c7e6a3ee2046065ec3d8ce011 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20Baz=C3=A1n?= Date: Fri, 9 Sep 2016 16:23:05 -0300 Subject: [PATCH] fix transitions with android hardware button --- src/js/routes.js | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/src/js/routes.js b/src/js/routes.js index e37d8efa2..48c38d29c 100644 --- a/src/js/routes.js +++ b/src/js/routes.js @@ -741,19 +741,23 @@ angular.module('copayApp').config(function(historicLogProvider, $provide, $logPr $ionicPlatform.registerBackButtonAction(function(e) { - var fromDisclaimer = $ionicHistory.currentStateName().match(/disclaimer/) ? 'true' : ''; - var fromTabs = $ionicHistory.currentStateName().match(/tabs/) ? 'true' : ''; + var fromWelcome = $ionicHistory.currentStateName().match(/welcome/) ? true : false; + var matchHome = $ionicHistory.currentStateName().match(/home/) ? true : false; + var matchReceive = $ionicHistory.currentStateName().match(/receive/) ? true : false; + var matchSend = $ionicHistory.currentStateName().match(/send/) ? true : false; + var matchSettings = $ionicHistory.currentStateName().match(/settings/) ? true : false; + var fromTabs = matchHome | matchReceive | matchSend | matchSettings; - if ($rootScope.backButtonPressedOnceToExit || fromDisclaimer) { - ionic.Platform.exitApp(); - } else if ($ionicHistory.backView() && !fromTabs) { + if ($ionicHistory.backView() && !fromTabs) { $ionicHistory.goBack(); + } else if ($rootScope.backButtonPressedOnceToExit || fromWelcome) { + ionic.Platform.exitApp(); } else { $rootScope.backButtonPressedOnceToExit = true; window.plugins.toast.showShortBottom(gettextCatalog.getString('Press again to exit')); - setInterval(function() { + $timeout(function() { $rootScope.backButtonPressedOnceToExit = false; - }, 5000); + }, 3000); } e.preventDefault(); }, 101);