diff --git a/js/angular/directive/collectionRepeat.js b/js/angular/directive/collectionRepeat.js index 823f9f1fca..0b96b8407c 100644 --- a/js/angular/directive/collectionRepeat.js +++ b/js/angular/directive/collectionRepeat.js @@ -666,27 +666,19 @@ function RepeatManagerFactory($rootScope, $window, $$rAF) { function digestEnteringItems() { var item; - var scope; - var len; if (digestEnteringItems.running) return; digestEnteringItems.running = true; $$rAF(function process() { - if( (len = itemsEntering.length) ) { - var rootScopePhase = $rootScope.$$phase; - var count = Math.floor(len / 1.25) || 1; - while (count && itemsEntering.length) { - item = itemsEntering.pop(); - if (item.isShown) { - count--; - if (!rootScopePhase) item.scope.$digest(); - item.scope.$broadcast('$collectionRepeatLeave'); - } + var rootScopePhase = $rootScope.$$phase; + while (itemsEntering.length) { + item = itemsEntering.pop(); + if (item.isShown) { + if (!rootScopePhase) item.scope.$digest(); + item.scope.$broadcast('$collectionRepeatLeave'); } - $$rAF(process); - } else { - digestEnteringItems.running = false; } + digestEnteringItems.running = false; }); } diff --git a/js/angular/directive/item.js b/js/angular/directive/item.js index 421f3fbc04..218a07282c 100644 --- a/js/angular/directive/item.js +++ b/js/angular/directive/item.js @@ -67,12 +67,13 @@ IonicModule var content = $element[0].querySelector('.item-content'); if (content) { $scope.$on('$collectionRepeatLeave', function() { - if (content) { + if (content && content.$$ionicOptionsOpen) { content.style[ionic.CSS.TRANSFORM] = ''; content.style[ionic.CSS.TRANSITION] = 'none'; $$rAF(function() { content.style[ionic.CSS.TRANSITION] = ''; }); + content.$$ionicOptionsOpen = false; } }); } diff --git a/js/views/listView.js b/js/views/listView.js index 35424ffa8a..5e41d563e8 100644 --- a/js/views/listView.js +++ b/js/views/listView.js @@ -135,6 +135,8 @@ newX = Math.min(-buttonsWidth, -buttonsWidth + (((e.gesture.deltaX + buttonsWidth) * 0.4))); } + this._currentDrag.content.$$ionicOptionsOpen = newX !== 0; + this._currentDrag.content.style[ionic.CSS.TRANSFORM] = 'translate3d(' + newX + 'px, 0, 0)'; this._currentDrag.content.style[ionic.CSS.TRANSITION] = 'none'; }