diff --git a/assets/javascripts/templates/sidebar_tmpl.coffee b/assets/javascripts/templates/sidebar_tmpl.coffee
index 885af928..6cb5718b 100644
--- a/assets/javascripts/templates/sidebar_tmpl.coffee
+++ b/assets/javascripts/templates/sidebar_tmpl.coffee
@@ -3,13 +3,15 @@ templates = app.templates
templates.sidebarDoc = (doc, options = {}) ->
link = """"""
+ link += """" data-slug="#{doc.slug}" title="#{doc.name} #{doc.version || ''}">"""
if options.disabled
link += """Enable"""
else
link += """"""
link += """#{doc.release}""" if doc.release
- link + "#{doc.name}"
+ link += "#{doc.name}"
+ link += " #{doc.version}" if options.disabled and doc.version
+ link + ""
templates.sidebarType = (type) ->
"""#{type.count}#{type.name}"""
@@ -48,12 +50,15 @@ templates.sidebarVersionedDoc = (doc, versions, options = {}) ->
html += " open" if options.open
html + """">#{doc.name}
#{versions}
"""
-templates.sidebarDisabledList = (options) ->
- """#{templates.render 'sidebarDoc', options.docs, disabled: true}
"""
-
templates.sidebarDisabled = (options) ->
"""Disabled (#{options.count})
"""
+templates.sidebarDisabledList = (html) ->
+ """#{html}
"""
+
+templates.sidebarDisabledVersionedDoc = (doc, versions) ->
+ """#{doc.name}#{versions}
"""
+
templates.sidebarPickerNote = """
Tip: for faster and better search results, select only the docs you need.
Vote for new documentation
diff --git a/assets/javascripts/views/list/list_focus.coffee b/assets/javascripts/views/list/list_focus.coffee
index 117d5bf3..6b8c1744 100644
--- a/assets/javascripts/views/list/list_focus.coffee
+++ b/assets/javascripts/views/list/list_focus.coffee
@@ -38,7 +38,10 @@ class app.views.ListFocus extends app.View
$.click(next)
@findNext cursor
else if next.tagName is 'DIV' # sub-list
- @findFirst(next) or @findNext(next)
+ if cursor.className.indexOf('open') >= 0
+ @findFirst(next) or @findNext(next)
+ else
+ @findNext(next)
else if next.tagName is 'H6' # title
@findNext(next)
else if cursor.parentElement isnt @el
@@ -61,7 +64,10 @@ class app.views.ListFocus extends app.View
$.click(prev)
@findPrev cursor
else if prev.tagName is 'DIV' # sub-list
- @findLast(prev) or @findPrev(prev)
+ if prev.previousSibling.className.indexOf('open') >= 0
+ @findLast(prev) or @findPrev(prev)
+ else
+ @findPrev(prev)
else if prev.tagName is 'H6' # title
@findPrev(prev)
else if cursor.parentElement isnt @el
diff --git a/assets/javascripts/views/list/list_fold.coffee b/assets/javascripts/views/list/list_fold.coffee
index b5476212..e33aedf0 100644
--- a/assets/javascripts/views/list/list_fold.coffee
+++ b/assets/javascripts/views/list/list_fold.coffee
@@ -10,7 +10,7 @@ class app.views.ListFold extends app.View
left: 'onLeft'
right: 'onRight'
- constructor: (@el, @options = {}) -> super
+ constructor: (@el) -> super
open: (el) ->
if el and not el.classList.contains @constructor.activeClass
@@ -60,5 +60,5 @@ class app.views.ListFold extends app.View
$.stopEvent(event)
@toggle el.parentElement
else if el.classList.contains @constructor.targetClass
- if @options.toggleOnclick then @toggle(el) else @open(el)
+ if el.hasAttribute('href') then @open(el) else @toggle(el)
return
diff --git a/assets/javascripts/views/sidebar/doc_list.coffee b/assets/javascripts/views/sidebar/doc_list.coffee
index 3ee4ea14..338cd29d 100644
--- a/assets/javascripts/views/sidebar/doc_list.coffee
+++ b/assets/javascripts/views/sidebar/doc_list.coffee
@@ -54,7 +54,21 @@ class app.views.DocList extends app.View
return
appendDisabledList: ->
- @append @tmpl('sidebarDisabledList', docs: app.disabledDocs.all())
+ html = ''
+ docs = [].concat(app.disabledDocs.all()...)
+
+ while doc = docs.shift()
+ if doc.version
+ versions = ''
+ loop
+ versions += @tmpl('sidebarDoc', doc, disabled: true)
+ break if docs[0].name isnt doc.name
+ doc = docs.shift()
+ html += @tmpl('sidebarDisabledVersionedDoc', doc, versions)
+ else
+ html += @tmpl('sidebarDoc', doc, disabled: true)
+
+ @append @tmpl('sidebarDisabledList', html)
@disabledTitle.classList.add('open-title')
@refreshElements()
return
diff --git a/assets/javascripts/views/sidebar/doc_picker.coffee b/assets/javascripts/views/sidebar/doc_picker.coffee
index 2bcd0cad..9cc73183 100644
--- a/assets/javascripts/views/sidebar/doc_picker.coffee
+++ b/assets/javascripts/views/sidebar/doc_picker.coffee
@@ -11,7 +11,7 @@ class app.views.DocPicker extends app.View
enter: 'onEnter'
init: ->
- @addSubview @listFold = new app.views.ListFold(@el, toggleOnclick: true)
+ @addSubview @listFold = new app.views.ListFold(@el)
return
activate: ->
diff --git a/assets/stylesheets/components/_sidebar.scss b/assets/stylesheets/components/_sidebar.scss
index cd8d820f..2d878aa0 100644
--- a/assets/stylesheets/components/_sidebar.scss
+++ b/assets/stylesheets/components/_sidebar.scss
@@ -197,6 +197,7 @@
.open + & { display: block; }
> ._list-item { padding-left: 2.375rem; }
> ._list-dir, > ._list-sub > ._list-item { padding-left: 2.75rem; }
+ > ._list-disabled { padding-left: 3.875rem; }
> ._list-item:before { content: none; }
> ._list-dir { line-height: 1.375rem; }