From 31e1ceea24c7e021f8256ad94e42eca15f31c066 Mon Sep 17 00:00:00 2001 From: Kris Maglione Date: Thu, 12 Jan 2012 03:57:52 -0500 Subject: [PATCH] More less Minefield explodeyness. --- common/modules/template.jsm | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/common/modules/template.jsm b/common/modules/template.jsm index 61c64cde..103c8ee2 100644 --- a/common/modules/template.jsm +++ b/common/modules/template.jsm @@ -81,6 +81,23 @@ var Binding = Class("Binding", { return res; }) }); +for (let [k, v] in Iterator(XPCOMShim([Ci.nsIDOMElement]))) { + let key = k; + let prop = { configurable: true, enumerable: false }; + + if (callable(v)) + update(prop, { + value: function () this.node[key].apply(this.node, arguments), + writable: true + }); + else + update(prop, { + get: function () this.node[k], + set: function (val) this.node[k] = val + }); + + Object.defineProperty(Binding.prototype, key, prop); +} var Template = Module("Template", { add: function add(a, b) a + b,