From 6f79a5e5c8c334756b03da85a6a4992fb2f6b92b Mon Sep 17 00:00:00 2001 From: Adam Bradley Date: Sun, 14 Sep 2014 23:38:35 -0500 Subject: [PATCH] fix(exposeAsideWhen): disable with isEnabled=false Closes #2210 --- js/angular/controller/sideMenuController.js | 2 ++ .../unit/angular/controller/sideMenuController.unit.js | 10 ++++++++++ 2 files changed, 12 insertions(+) diff --git a/js/angular/controller/sideMenuController.js b/js/angular/controller/sideMenuController.js index 1af15577f14..acbfce632cc 100644 --- a/js/angular/controller/sideMenuController.js +++ b/js/angular/controller/sideMenuController.js @@ -259,6 +259,8 @@ function($scope, $attrs, $ionicSideMenuDelegate, $ionicPlatform, $ionicBody) { }; self.exposeAside = function(shouldExposeAside) { + if(!self.left || !self.left.isEnabled) return; + self.close(); isAsideExposed = shouldExposeAside; diff --git a/test/unit/angular/controller/sideMenuController.unit.js b/test/unit/angular/controller/sideMenuController.unit.js index a277ce42ac0..a88d57ccb08 100644 --- a/test/unit/angular/controller/sideMenuController.unit.js +++ b/test/unit/angular/controller/sideMenuController.unit.js @@ -134,6 +134,16 @@ describe('$ionicSideMenus controller', function() { expect(ctrl.getOpenPercentage()).toEqual(0); }); + it('should set enabled/disabled exposeAside', function() { + expect(ctrl.isAsideExposed()).toEqual(false); + ctrl.left.setIsEnabled(false); + ctrl.exposeAside(true); + expect(ctrl.isAsideExposed()).toEqual(false); + ctrl.left.setIsEnabled(true); + ctrl.exposeAside(true); + expect(ctrl.isAsideExposed()).toEqual(true); + }); + it('should toggle right', function() { ctrl.toggleRight(); expect(ctrl.getOpenPercentage()).toEqual(-100);