this.searcher = Showtime.hookRegister('searcher', function(model, query, loading) { try { // Convert the raw page prop object into a proxied one model = prop.makeProp(model); var root = prop.createRoot(); root.metadata.title = title; root.metadata.icon = icon; root.type = 'directory'; prop.setParent(root, model.nodes); var page = new Page(root, false, true); page.type = 'directory'; root.url = Showtime.propMakeUrl(page.root); prop.atomicAdd(loading, 1); try { callback(page, query); } finally { prop.atomicAdd(loading, -1); } } catch(e) { if(!prop.isZombie(model)) { throw e; } else { console.log("Search for " + query + " was closed, error supressed"); } } });
prop.subscribe(node.eventSink, function(type, obj, nav) { if(type == 'propref') { nav = nav ? prop.makeProp(nav) : undefined; var navobj = { openURL: function(url) { if(nav) prop.sendEvent(nav.eventSink, 'openurl', { url: url }); } }; conf.handler(prop.makeProp(obj), navobj); } }, {
this.route = Showtime.routeCreate(re, function(pageprop, args) { // First, convert the raw page prop object into a proxied one pageprop = prop.makeProp(pageprop); // Prepend a Page object as first argument to callback args.unshift(new Page(pageprop)); callback.apply(null, args); });
this.searcher = Showtime.hookRegister('searcher', function(model, query) { // Convert the raw page prop object into a proxied one model = prop.makeProp(model); var root = prop.createRoot(); root.metadata.title = title; root.metadata.icon = icon; root.type = 'directory'; prop.setParent(root, model.nodes); var page = new Page(root, true); page.type = 'directory'; root.url = Showtime.propMakeUrl(page.root); callback(page, query); });
this.route = Showtime.routeCreate(re, function(pageprop, sync, args) { try { // First, convert the raw page prop object into a proxied one pageprop = prop.makeProp(pageprop); // Prepend a Page object as first argument to callback args.unshift(new Page(pageprop, sync, false)); callback.apply(null, args); } catch(e) { if(!prop.isZombie(pageprop)) { throw e; } else { console.log("Page at route " + re + " was closed, error supressed"); } } });