diff options
author | Trevor Elliott <trevor@galois.com> | 2013-05-31 16:59:18 -0700 |
---|---|---|
committer | Trevor Elliott <trevor@galois.com> | 2013-05-31 16:59:18 -0700 |
commit | 3c9a13bfb288dd052609dcaf9a00604c690191ad (patch) | |
tree | 5f5fc76d7a5f2a792045dee152cbf754f3c2a043 | |
parent | 44c7fc559575f7c329ae9f24079a9881ce68206a (diff) |
Firefox extension is working
-rw-r--r-- | contexts/build.mk | 2 | ||||
-rw-r--r-- | contexts/data/fiveui/entry.js | 13 | ||||
-rw-r--r-- | contexts/data/fiveui/firefox/main.js | 6 | ||||
-rw-r--r-- | contexts/data/fiveui/injected/fiveui-injected-ui.js | 3 | ||||
-rw-r--r-- | contexts/data/fiveui/injected/prelude.js | 6 | ||||
-rw-r--r-- | contexts/data/fiveui/options.js | 6 |
6 files changed, 21 insertions, 15 deletions
diff --git a/contexts/build.mk b/contexts/build.mk index 8745ebd..0e55997 100644 --- a/contexts/build.mk +++ b/contexts/build.mk @@ -262,7 +262,9 @@ $(target-dir)/firefox-main.js: \ $(fiveui-dir)/rules.js \ $(fiveui-dir)/background.js \ $(fiveui-dir)/utils.js \ + $(fiveui-dir)/set.js \ $(fiveui-dir)/state.js \ + $(fiveui-dir)/url-pat.js \ | $(target-dir) $(call cmd,compilejs) diff --git a/contexts/data/fiveui/entry.js b/contexts/data/fiveui/entry.js index 928c7d5..1460a4f 100644 --- a/contexts/data/fiveui/entry.js +++ b/contexts/data/fiveui/entry.js @@ -110,7 +110,7 @@ fiveui.RulesView = Backbone.View.extend({ }, optionTemplate:_.template( - '<option label="<%= name %>" value="<%= id %>" />' + '<option value="<%= id %>"><%= name %></option>' ), update:function() { @@ -132,12 +132,15 @@ fiveui.RulesView = Backbone.View.extend({ render:function() { - var self = this; + var scope = this; this.$el.children().remove(); - this.model.each(function(ruleSet) { - self.$el.append(self.optionTemplate(ruleSet.attributes)); - }); + + var text = this.model.foldl(function(body,ruleSet) { + return body + scope.optionTemplate(ruleSet.attributes); + }, ''); + + this.$el.html(text); return this; }, diff --git a/contexts/data/fiveui/firefox/main.js b/contexts/data/fiveui/firefox/main.js index 8c9c625..2723c72 100644 --- a/contexts/data/fiveui/firefox/main.js +++ b/contexts/data/fiveui/firefox/main.js @@ -98,17 +98,17 @@ fiveui.firefox.main = function() { * @return {void} */ var loadScripts = function(tabId, inScripts, inFrames, tab) { - var firefoxScripts = [dataLoader('fiveui/firefox/bootstrap.js')]; if(inFrames) { - firefoxScripts.push(dataLoader('fiveui/firefox/firefox-injected-compute.js')); + var firefoxScripts = [dataLoader('fiveui/firefox/firefox-injected-compute.js')]; } else { - firefoxScripts.push(dataLoader('fiveui/firefox/firefox-injected-ui.js')); + var firefoxScripts = [dataLoader('fiveui/firefox/firefox-injected-ui.js')]; } // just scripts, css gets filtered out. var scripts = _.filter(_.flatten([firefoxScripts, inScripts]), function(script) { + console.log(script); return script.search(/\.css$/i) == -1; }); diff --git a/contexts/data/fiveui/injected/fiveui-injected-ui.js b/contexts/data/fiveui/injected/fiveui-injected-ui.js index 5db6c46..6831436 100644 --- a/contexts/data/fiveui/injected/fiveui-injected-ui.js +++ b/contexts/data/fiveui/injected/fiveui-injected-ui.js @@ -26,8 +26,7 @@ var core = {}; core.port = obtainPort(); - core.ui = $('<div></div>') - .attr('id', 'uic-dialog'); + core.ui = $('<div></div>').attr('id', 'uic-dialog'); core.lockDepth = 0; diff --git a/contexts/data/fiveui/injected/prelude.js b/contexts/data/fiveui/injected/prelude.js index 95c0451..3f3b4f5 100644 --- a/contexts/data/fiveui/injected/prelude.js +++ b/contexts/data/fiveui/injected/prelude.js @@ -19,8 +19,6 @@ * limitations under the License. */ -(function() { - /** * The FiveUI Prelude. * @@ -32,7 +30,9 @@ * * @namespace */ -fiveui = fiveui || {}; +var fiveui = fiveui || {}; + +(function() { /** * A global namespace for statistics collection. diff --git a/contexts/data/fiveui/options.js b/contexts/data/fiveui/options.js index 819dbfe..2b29f8d 100644 --- a/contexts/data/fiveui/options.js +++ b/contexts/data/fiveui/options.js @@ -78,8 +78,10 @@ fiveui.options.init = function(port) { // when a new rule set is sync'd, make sure that the add url pattern button is // enabled. - ruleSets.on('sync', function(model,col) { - addUrlPat.prop('disabled', false); + ruleSets.on('sync', function() { + if(ruleSets.length > 0) { + addUrlPat.prop('disabled', false); + } }); // when a rule set is destroyed, and the collection is now empty, disable the |