diff --git a/dist/js/ionic-angular.js b/dist/js/ionic-angular.js
index 89a6ba2e23..8b59cb3746 100644
--- a/dist/js/ionic-angular.js
+++ b/dist/js/ionic-angular.js
@@ -487,7 +487,7 @@ angular.module('ionic.ui.content', [])
angular.module('ionic.ui.list', ['ngAnimate'])
-.directive('listItem', function() {
+.directive('listItem', ['$timeout', function($timeout) {
return {
restrict: 'E',
require: ['?^list', '?^virtualList'],
@@ -508,7 +508,7 @@ angular.module('ionic.ui.list', ['ngAnimate'])
\
\
\
- \
+
\
\
\
',
@@ -538,6 +538,7 @@ angular.module('ionic.ui.list', ['ngAnimate'])
$scope.isEditing = false;
$scope.deleteIcon = list.scope.deleteIcon;
$scope.reorderIcon = list.scope.reorderIcon;
+ $scope.showOptions = true;
$scope.buttonClicked = function(button) {
button.onButtonClicked && button.onButtonClicked($scope.item, button);
@@ -545,10 +546,20 @@ angular.module('ionic.ui.list', ['ngAnimate'])
list.scope.$watch('isEditing', function(v) {
$scope.isEditing = v;
+
+ // Add a delay before we allow the options layer to show, to avoid any odd
+ // animation issues
+ if(!v) {
+ $timeout(function() {
+ $scope.showOptions = true;
+ }, 200);
+ } else {
+ $scope.showOptions = false;
+ }
});
}
};
-})
+}])
.directive('list', function() {
return {
diff --git a/js/ext/angular/src/directive/ionicList.js b/js/ext/angular/src/directive/ionicList.js
index 0b5ebebfb8..89c804081f 100644
--- a/js/ext/angular/src/directive/ionicList.js
+++ b/js/ext/angular/src/directive/ionicList.js
@@ -3,7 +3,7 @@
angular.module('ionic.ui.list', ['ngAnimate'])
-.directive('listItem', function() {
+.directive('listItem', ['$timeout', function($timeout) {
return {
restrict: 'E',
require: ['?^list', '?^virtualList'],
@@ -24,7 +24,7 @@ angular.module('ionic.ui.list', ['ngAnimate'])
\
\
\
- \
+
\
\
\
',
@@ -54,6 +54,7 @@ angular.module('ionic.ui.list', ['ngAnimate'])
$scope.isEditing = false;
$scope.deleteIcon = list.scope.deleteIcon;
$scope.reorderIcon = list.scope.reorderIcon;
+ $scope.showOptions = true;
$scope.buttonClicked = function(button) {
button.onButtonClicked && button.onButtonClicked($scope.item, button);
@@ -61,10 +62,20 @@ angular.module('ionic.ui.list', ['ngAnimate'])
list.scope.$watch('isEditing', function(v) {
$scope.isEditing = v;
+
+ // Add a delay before we allow the options layer to show, to avoid any odd
+ // animation issues
+ if(!v) {
+ $timeout(function() {
+ $scope.showOptions = true;
+ }, 200);
+ } else {
+ $scope.showOptions = false;
+ }
});
}
};
-})
+}])
.directive('list', function() {
return {