diff --git a/js/angular/service/clickBlock.js b/js/angular/service/clickBlock.js index 86d43b0274..22deba1bd9 100644 --- a/js/angular/service/clickBlock.js +++ b/js/angular/service/clickBlock.js @@ -4,21 +4,33 @@ IonicModule '$ionicBody', '$timeout', function($document, $ionicBody, $timeout) { + var fallbackTimer; + var cb = $document[0].createElement('div'); cb.className = 'click-block'; + return { show: function() { + // cancel the fallback timer + $timeout.cancel( fallbackTimer ); + if(cb.parentElement) { cb.classList.remove('hide'); } else { $ionicBody.append(cb); } - $timeout(function(){ + fallbackTimer = $timeout(function(){ cb.classList.add('hide'); }, 500); }, hide: function() { - cb.classList.add('hide'); + // cancel the fallback timer + $timeout.cancel( fallbackTimer ); + + // should be a minimum time it should hide + ionic.requestAnimationFrame(function(){ + cb.classList.add('hide'); + }); } }; }]);