diff --git a/dist/css/ionic.css b/dist/css/ionic.css index bf15b6937f..bbbd6c3a16 100644 --- a/dist/css/ionic.css +++ b/dist/css/ionic.css @@ -3553,7 +3553,6 @@ button.item-button-right:after { */ .list { position: relative; - overflow: hidden; margin-bottom: 20px; padding-top: 1px; padding-bottom: 1px; diff --git a/dist/js/ionic-angular.js b/dist/js/ionic-angular.js index c8d49b2a33..f52e848c40 100644 --- a/dist/js/ionic-angular.js +++ b/dist/js/ionic-angular.js @@ -489,7 +489,8 @@ angular.module('ionic.ui.content', []) transclude: true, scope: { onRefresh: '&', - onRefreshOpening: '&' + onRefreshOpening: '&', + scroll: '@' }, compile: function(element, attr, transclude) { return function($scope, $element, $attr) { @@ -510,7 +511,9 @@ angular.module('ionic.ui.content', []) } // If they want plain overflows scrolling, add that as a class - if(attr.overflowScroll === "true") { + if($scope.scroll === "false") { + // Do nothing for now + } else if(attr.overflowScroll === "true") { c.addClass('overflow-scroll'); } else { // Otherwise, supercharge this baby! @@ -638,7 +641,9 @@ angular.module('ionic.ui.list', ['ngAnimate']) scope: { isEditing: '=', deleteIcon: '@', - reorderIcon: '@' + reorderIcon: '@', + onRefresh: '&', + onRefreshOpening: '&' }, controller: function($scope) { @@ -658,7 +663,14 @@ angular.module('ionic.ui.list', ['ngAnimate']) return function($scope, $element, $attr) { var lv = new ionic.views.ListView({ el: $element[0], - listEl: $element[0].children[0] + listEl: $element[0].children[0], + hasPullToRefresh: (typeof $scope.onRefresh !== 'undefined'), + onRefresh: function() { + $scope.onRefresh(); + }, + onRefreshOpening: function(amt) { + $scope.onRefreshOpening({amount: amt}); + } }); if(attr.animation) { @@ -667,55 +679,7 @@ angular.module('ionic.ui.list', ['ngAnimate']) }; } }; -}) - -.directive('virtualList', function() { - return { - restrict: 'E', - replace: true, - transclude: true, - - scope: { - isEditing: '=', - deleteIcon: '@', - reorderIcon: '@', - itemHeight: '@' - }, - - controller: function($scope, $element) { - var _this = this; - - this.scope = $scope; - - this.element = $element; - - var lv = new ionic.views.ListView({ - el: $element[0], - listEl: $element[0].children[0], - isVirtual: true, - itemHeight: $scope.itemHeight, - }); - - this.listView = lv; - - - $scope.$watch('isEditing', function(v) { - _this.isEditing = true; - }); - }, - - template: '
', - - compile: function(element, attr, transclude) { - return function($scope, $element, $attr) { - if(attr.animation) { - $element.addClass(attr.animation); - } - }; - } - }; -}) +}); })(); ; diff --git a/js/ext/angular/src/directive/ionicContent.js b/js/ext/angular/src/directive/ionicContent.js index 2a5b6681bf..c15d895daf 100644 --- a/js/ext/angular/src/directive/ionicContent.js +++ b/js/ext/angular/src/directive/ionicContent.js @@ -22,7 +22,8 @@ angular.module('ionic.ui.content', []) transclude: true, scope: { onRefresh: '&', - onRefreshOpening: '&' + onRefreshOpening: '&', + scroll: '@' }, compile: function(element, attr, transclude) { return function($scope, $element, $attr) { @@ -43,7 +44,9 @@ angular.module('ionic.ui.content', []) } // If they want plain overflows scrolling, add that as a class - if(attr.overflowScroll === "true") { + if($scope.scroll === "false") { + // Do nothing for now + } else if(attr.overflowScroll === "true") { c.addClass('overflow-scroll'); } else { // Otherwise, supercharge this baby! diff --git a/js/ext/angular/src/directive/ionicList.js b/js/ext/angular/src/directive/ionicList.js index 009c08ad53..c5fd09d2ec 100644 --- a/js/ext/angular/src/directive/ionicList.js +++ b/js/ext/angular/src/directive/ionicList.js @@ -89,7 +89,9 @@ angular.module('ionic.ui.list', ['ngAnimate']) scope: { isEditing: '=', deleteIcon: '@', - reorderIcon: '@' + reorderIcon: '@', + onRefresh: '&', + onRefreshOpening: '&' }, controller: function($scope) { @@ -109,7 +111,14 @@ angular.module('ionic.ui.list', ['ngAnimate']) return function($scope, $element, $attr) { var lv = new ionic.views.ListView({ el: $element[0], - listEl: $element[0].children[0] + listEl: $element[0].children[0], + hasPullToRefresh: (typeof $scope.onRefresh !== 'undefined'), + onRefresh: function() { + $scope.onRefresh(); + }, + onRefreshOpening: function(amt) { + $scope.onRefreshOpening({amount: amt}); + } }); if(attr.animation) { @@ -118,54 +127,6 @@ angular.module('ionic.ui.list', ['ngAnimate']) }; } }; -}) - -.directive('virtualList', function() { - return { - restrict: 'E', - replace: true, - transclude: true, - - scope: { - isEditing: '=', - deleteIcon: '@', - reorderIcon: '@', - itemHeight: '@' - }, - - controller: function($scope, $element) { - var _this = this; - - this.scope = $scope; - - this.element = $element; - - var lv = new ionic.views.ListView({ - el: $element[0], - listEl: $element[0].children[0], - isVirtual: true, - itemHeight: $scope.itemHeight, - }); - - this.listView = lv; - - - $scope.$watch('isEditing', function(v) { - _this.isEditing = true; - }); - }, - - template: '
', - - compile: function(element, attr, transclude) { - return function($scope, $element, $attr) { - if(attr.animation) { - $element.addClass(attr.animation); - } - }; - } - }; -}) +}); })(); diff --git a/js/ext/angular/test/tabs.html b/js/ext/angular/test/tabs.html index 3a1165b918..5fd01b432f 100644 --- a/js/ext/angular/test/tabs.html +++ b/js/ext/angular/test/tabs.html @@ -48,7 +48,11 @@ - +
@@ -56,8 +60,14 @@

Tasks

- - + + + +
+ Refreshing + +
+