aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Trevor Elliott <trevor@galois.com>2013-05-31 16:59:18 -0700
committerGravatar Trevor Elliott <trevor@galois.com>2013-05-31 16:59:18 -0700
commit3c9a13bfb288dd052609dcaf9a00604c690191ad (patch)
tree5f5fc76d7a5f2a792045dee152cbf754f3c2a043
parent44c7fc559575f7c329ae9f24079a9881ce68206a (diff)
Firefox extension is working
-rw-r--r--contexts/build.mk2
-rw-r--r--contexts/data/fiveui/entry.js13
-rw-r--r--contexts/data/fiveui/firefox/main.js6
-rw-r--r--contexts/data/fiveui/injected/fiveui-injected-ui.js3
-rw-r--r--contexts/data/fiveui/injected/prelude.js6
-rw-r--r--contexts/data/fiveui/options.js6
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