From 03d01e96623de397ef171c063b7a8a56656fe0de Mon Sep 17 00:00:00 2001 From: Robert Messerle Date: Thu, 4 Jun 2015 13:23:52 -0700 Subject: [PATCH] feat(tabs): makes swipe gestures on the content area opt-in Closes #2331 BREAKING CHANGE: Tabs will now require the `md-swipe-content` attribute in order to enable swipe gestures to change tabs in the content area. --- src/components/tabs/js/tabsDirective.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/components/tabs/js/tabsDirective.js b/src/components/tabs/js/tabsDirective.js index 2d448b2d67b..370747f6902 100644 --- a/src/components/tabs/js/tabsDirective.js +++ b/src/components/tabs/js/tabsDirective.js @@ -59,6 +59,7 @@ * @param {boolean=} md-dynamic-height When enabled, the tab wrapper will resize based on the contents of the selected tab * @param {boolean=} md-center-tabs When enabled, tabs will be centered provided there is no need for pagination * @param {boolean=} md-no-pagination When enabled, pagination will remain off + * @param {boolean=} md-swipe-content When enabled, swipe gestures will be enabled for the content area to jump between tabs * * @usage * @@ -92,7 +93,8 @@ function MdTabs ($mdTheming, $mdUtil, $compile) { dynamicHeight: '=?mdDynamicHeight', centerTabs: '=?mdCenterTabs', selectedIndex: '=?mdSelected', - stretchTabs: '@?mdStretchTabs' + stretchTabs: '@?mdStretchTabs', + swipeContent: '=?mdSwipeContent' }, template: function (element, attr) { attr["$mdTabsTemplate"] = element.html(); @@ -175,8 +177,8 @@ function MdTabs ($mdTheming, $mdUtil, $compile) { id="tab-content-{{tab.id}}"\ role="tabpanel"\ aria-labelledby="tab-item-{{tab.id}}"\ - md-swipe-left="$mdTabsCtrl.incrementSelectedIndex(1)"\ - md-swipe-right="$mdTabsCtrl.incrementSelectedIndex(-1)"\ + md-swipe-left="swipeContent && $mdTabsCtrl.incrementSelectedIndex(1)"\ + md-swipe-right="swipeContent && $mdTabsCtrl.incrementSelectedIndex(-1)"\ ng-if="$mdTabsCtrl.hasContent"\ ng-repeat="(index, tab) in $mdTabsCtrl.tabs" \ md-template="tab.template"\