diff --git a/ui (gen4)/lib/widget/browse.html b/ui (gen4)/lib/widget/browse.html
index c4a4e0a2..6ea5fe37 100755
--- a/ui (gen4)/lib/widget/browse.html
+++ b/ui (gen4)/lib/widget/browse.html
@@ -106,7 +106,6 @@ body.dark {
-
@@ -161,11 +160,22 @@ TREE.dir_c.dir_b.tree = TREE
var use_disabled = true
var show_files = false
-requirejs(['../keyboard', '../object', './browse'], function(k, o, br){
+requirejs(['../keyboard', '../object', '../toggler', './browse'], function(k, o, t, br){
keyboard = k
object = o
+ toggler = t
browser = br
+ themeToggler = toggler.CSSClassToggler('body',
+ [
+ 'none',
+ 'light',
+ 'dark',
+ ],
+ function(state){
+ $('#theme').text(state)
+ })
+
// Tree demo...
b = browser.Browser($('.container.tree'), {
path: '/dir_a/tree/dir_c/',
@@ -356,15 +366,6 @@ $(function(){
-var themeToggler = CSSClassToggler('body',
- [
- 'none',
- 'light',
- 'dark',
- ],
- function(state){
- $('#theme').text(state)
- })
function toggleDisabled(){
use_disabled = !use_disabled
diff --git a/ui (gen4)/lib/widget/browse.js b/ui (gen4)/lib/widget/browse.js
index 74965d10..563b1de6 100755
--- a/ui (gen4)/lib/widget/browse.js
+++ b/ui (gen4)/lib/widget/browse.js
@@ -755,13 +755,32 @@ var BrowserPrototype = {
// - [str, ...]
// - DOM/jQuery
var make = function(p, traversable, disabled){
- p = p + ''
+ // array of str...
+ if(p.constructor === Array){
+ // XXX check if traversable...
+ p = $(p.map(function(t){
+ return $('')
+ .addClass('text')
+ .text(t)[0]
+ }))
- // trailing '/' -- dir...
- var dir = /[\\\/]\s*$/
- traversable = dir.test(p) && traversable == null ? true : traversable
- traversable = traversable == null ? false : traversable
- p = p.replace(dir, '')
+ // jQuery or dom...
+ } else if(p instanceof jQuery){
+ // XXX disable search???
+ console.warn('jQuery objects as browse list elements not yet supported.')
+
+ // str and other stuff...
+ } else {
+ p = p + ''
+
+ // trailing '/' -- dir...
+ var dir = /[\\\/]\s*$/
+ traversable = dir.test(p) && traversable == null ? true : traversable
+ traversable = traversable == null ? false : traversable
+ p = $('')
+ .addClass('text')
+ .text(p.replace(dir, ''))
+ }
interactive = true
@@ -781,10 +800,8 @@ var BrowserPrototype = {
that.push($(this).find('.text').text())
}
})
- // XXX add support for multiple .test blocks...
- .append($('')
- .addClass('text')
- .text(p))
+ // append text elements...
+ .append(p)
if(!traversable){
res.addClass('not-traversable')