From 358fd98e4d52faeb8a0516b742abfe505a8f7221 Mon Sep 17 00:00:00 2001 From: Elad Bezalel Date: Mon, 30 Nov 2015 21:27:47 +0200 Subject: [PATCH] fix(list): wrapping secondary if it has ng-click Secondary was being wrapped only if `md-checkbox` or `md-switch` were near by or `ng-click` was applied on the list item. fixes #3928 Closes #5993 --- src/components/list/list.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/components/list/list.js b/src/components/list/list.js index 9d95718acba..607c29c11bb 100644 --- a/src/components/list/list.js +++ b/src/components/list/list.js @@ -110,6 +110,7 @@ function mdListItemDirective($mdAria, $mdConstant, $mdUtil, $timeout) { tEl.addClass('md-no-proxy'); } } + wrapSecondary(); setupToggleAria(); @@ -142,7 +143,9 @@ function mdListItemDirective($mdAria, $mdConstant, $mdUtil, $timeout) { tEl[0].setAttribute('tabindex', '-1'); tEl.append(container); + } + function wrapSecondary() { if (secondaryItem && !isButton(secondaryItem) && secondaryItem.hasAttribute('ng-click')) { $mdAria.expect(secondaryItem, 'aria-label'); var buttonWrapper = angular.element(''); @@ -155,10 +158,10 @@ function mdListItemDirective($mdAria, $mdConstant, $mdUtil, $timeout) { // Check for a secondary item and move it outside if ( secondaryItem && ( - secondaryItem.hasAttribute('ng-click') || + secondaryItem.hasAttribute('ng-click') || ( tAttrs.ngClick && - isProxiedElement(secondaryItem) ) - )) { + isProxiedElement(secondaryItem) ) + )) { tEl.addClass('md-with-secondary'); tEl.append(secondaryItem); }