Fix tab toggle

This commit is contained in:
Arun Kumar Mohan
2020-12-03 21:03:44 -05:00
parent a51d01efac
commit 868a19df6e
2 changed files with 4 additions and 8 deletions

View File

@@ -5,15 +5,13 @@ Darkswarm.directive "tabsetCtrl", (Tabsets, $location) ->
selected: "@"
navigate: "="
prefix: "@?"
alwaysopen: "="
controller: ($scope, $element) ->
if $scope.navigate
path = $location.path()?.match(/^\/\w+$/)?[0]
$scope.selected = path[1..] if path
this.toggle = (name) ->
state = if $scope.alwaysopen then 'open' else null
Tabsets.toggle($scope.id, name, state)
Tabsets.toggle($scope.id, name)
this.select = (selection) ->
$scope.$broadcast("selection:changed", selection)

View File

@@ -7,12 +7,10 @@ Darkswarm.factory 'Tabsets', ->
@tabsets.push { ctrl: ctrl, id: id, selected: selected }
ctrl.select(selected) if selected?
toggle: (id, name, state=null) ->
toggle: (id, name) ->
tabset = @findTabsetByObject(id)
if tabset.selected == name
@select(tabset, null) unless state == "open"
else
@select(tabset, name) unless state == "closed"
if tabset.selected != name
@select(tabset, name)
select: (tabset, name) ->
tabset.selected = name