fix(list): make reorder/delete button animation work well on all devices

This commit is contained in:
Andrew
2014-07-08 11:31:48 -06:00
parent 0e89fb3aee
commit 4f10a72306
8 changed files with 59 additions and 73 deletions

View File

@@ -64,7 +64,7 @@ describe('ionDeleteButton directive', function() {
$compile(el)($rootScope.$new());
$rootScope.$apply();
var deleteContainer = angular.element(el[0].querySelector('.item-left-edit.item-delete.ng-hide'));
var deleteContainer = angular.element(el[0].querySelector('.item-left-edit.item-delete'));
expect(deleteContainer.length).toBe(1);
expect(deleteContainer.children().hasClass('button icon button-icon')).toBe(true);
}));
@@ -79,7 +79,8 @@ describe('ionDeleteButton directive', function() {
var deleteContainer = angular.element(el[0].querySelector('.item-left-edit.item-delete'));
expect(deleteContainer.length).toBe(1);
expect(deleteContainer.hasClass('ng-hide')).toBe(false);
expect(deleteContainer.hasClass('visible')).toBe(true);
expect(deleteContainer.hasClass('active')).toBe(true);
}));
});
@@ -94,13 +95,13 @@ describe('ionReorderButton directive', function() {
$compile(el)($rootScope.$new());
$rootScope.$apply();
var reorderContainer = angular.element(el[0].querySelector('.item-right-edit.item-reorder.ng-hide'));
var reorderContainer = angular.element(el[0].querySelector('.item-right-edit.item-reorder'));
expect(reorderContainer.length).toBe(1);
expect(reorderContainer.children().hasClass('button icon button-icon')).toBe(true);
expect(reorderContainer.attr('data-prevent-scroll')).toBe('true');
expect(reorderContainer.children().attr('data-prevent-scroll')).toBe('true');
}));
it('should remove ng-hide if reorder is already active', inject(function($compile, $rootScope) {
it('should show if reorder is already active', inject(function($compile, $rootScope) {
var setSpy = jasmine.createSpy('setReorderButton');
var el = angular.element('<ion-item><ion-reorder-button></ion-reorder-button></ion-item>');
el.data('$ionListController', {
@@ -110,7 +111,8 @@ describe('ionReorderButton directive', function() {
$rootScope.$apply();
var reorderContainer = angular.element(el[0].querySelector('.item-right-edit.item-reorder'));
expect(reorderContainer.length).toBe(1);
expect(reorderContainer.hasClass('ng-hide')).toBe(false);
expect(reorderContainer.hasClass('visible')).toBe(true);
expect(reorderContainer.hasClass('active')).toBe(true);
}));
});

View File

@@ -92,7 +92,6 @@ describe('ionList directive', function() {
expect(el.controller('ionList').closeOptionButtons).toHaveBeenCalled();
var deleteButtons = angular.element(el[0].querySelectorAll('.item-delete.item-left-edit'));
expect(deleteButtons.length).not.toBe(0);
expect(deleteButtons.hasClass('ng-hide')).toBe(false);
expect(el.children().hasClass('list-left-editing')).toBe(true);
var content = angular.element(el[0].querySelectorAll('.item-content'));
}));
@@ -111,7 +110,6 @@ describe('ionList directive', function() {
expect(el.controller('ionList').canSwipeItems()).toBe(true);
expect(el.controller('ionList').closeOptionButtons.callCount).toBe(1);
var deleteButtons = angular.element(el[0].querySelectorAll('.item-delete.item-left-edit'));
expect(deleteButtons.hasClass('ng-hide')).toBe(true);
expect(deleteButtons.length).not.toBe(0);
expect(el.children().hasClass('list-left-editing')).toBe(false);
var content = angular.element(el[0].querySelectorAll('.item-content'));
@@ -131,7 +129,6 @@ describe('ionList directive', function() {
expect(el.controller('ionList').canSwipeItems()).toBe(false);
var reorderButtons = angular.element(el[0].querySelectorAll('.item-reorder.item-right-edit'));
expect(reorderButtons.length).not.toBe(0);
expect(reorderButtons.hasClass('ng-hide')).toBe(false);
expect(el.children().hasClass('list-right-editing')).toBe(true);
var content = angular.element(el[0].querySelectorAll('.item-content'));
}));
@@ -151,7 +148,6 @@ describe('ionList directive', function() {
expect(el.controller('ionList').closeOptionButtons.callCount).toBe(1);
var reorderButtons = angular.element(el[0].querySelectorAll('.item-reorder.item-right-edit'));
expect(reorderButtons.length).not.toBe(0);
expect(reorderButtons.hasClass('ng-hide')).toBe(true);
expect(el.children().hasClass('list-right-editing')).toBe(false);
var content = angular.element(el[0].querySelectorAll('.item-content'));
}));