diff --git a/common/components/protocols.js b/common/components/protocols.js index d14b3e4e..cf9959f0 100644 --- a/common/components/protocols.js +++ b/common/components/protocols.js @@ -248,7 +248,7 @@ function LocaleChannel(pkg, path, orig) { function StringChannel(data, contentType, uri) { let channel = services.StreamChannel(uri); - channel.contentStream = services.StringStream(data); + channel.contentStream = services.CharsetConv("UTF-8").convertToInputStream(data); if (contentType) channel.contentType = contentType; channel.contentCharset = "UTF-8"; diff --git a/common/content/dactyl.js b/common/content/dactyl.js index 151807a5..c7bbb11e 100644 --- a/common/content/dactyl.js +++ b/common/content/dactyl.js @@ -686,14 +686,13 @@ var Dactyl = Module("dactyl", XPCOM(Ci.nsISupportsWeakReference, ModuleBase), { '\n' + '\n' + '\n' + - unescape(encodeURI( // UTF-8 handling hack.

{_("help.title.Using Plugins")}

{body} -
.toXMLString())); + .toXMLString(); fileMap["plugins"] = function () ['text/xml;charset=UTF-8', help]; fileMap["versions"] = function () { @@ -792,14 +791,13 @@ var Dactyl = Module("dactyl", XPCOM(Ci.nsISupportsWeakReference, ModuleBase), { '\n' + '\n' + '\n' + - unescape(encodeURI( // UTF-8 handling hack.

{config.appName} Versions

{body} -
.toXMLString())) + .toXMLString() ]; } addTags("versions", util.httpGet("dactyl://help/versions").responseXML); @@ -810,11 +808,10 @@ var Dactyl = Module("dactyl", XPCOM(Ci.nsISupportsWeakReference, ModuleBase), { overlayMap["index"] = ['text/xml;charset=UTF-8', '\n' + '\n' + - unescape(encodeURI( // UTF-8 handling hack. template.map(dactyl.indices, function ([name, iter])
{ template.map(iter(), util.identity) - }
, <>{"\n\n"}))) + + }, <>{"\n\n"}) + '\n
']; addTags("index", util.httpGet("dactyl://help-overlay/index").responseXML); diff --git a/common/modules/commands.jsm b/common/modules/commands.jsm index 074b12b7..107404c0 100644 --- a/common/modules/commands.jsm +++ b/common/modules/commands.jsm @@ -969,7 +969,7 @@ var Commands = Module("commands", { util.assert(!error, error); // if we add the argument to an option after a space, it MUST not be empty - if (sep != "=" && !quote && arg.length == 0) + if (sep != "=" && !quote && arg.length == 0 && !complete) arg = null; count++; // to compensate the "=" character diff --git a/common/modules/styles.jsm b/common/modules/styles.jsm index 3516cc7d..c12b6e18 100644 --- a/common/modules/styles.jsm +++ b/common/modules/styles.jsm @@ -254,7 +254,7 @@ var Styles = Module("Styles", { services["dactyl:"].providers["style"] = function styleProvider(uri) { let id = /^\/(\d*)/.exec(uri.path)[1]; if (set.has(styles.allSheets, id)) - return ["text/css", unescape(encodeURI(styles.allSheets[id].fullCSS))]; + return ["text/css", styles.allSheets[id].fullCSS]; return null; }; }, diff --git a/common/modules/util.jsm b/common/modules/util.jsm index 0a64fd2f..6d6868e8 100644 --- a/common/modules/util.jsm +++ b/common/modules/util.jsm @@ -974,11 +974,11 @@ var Util = Module("Util", XPCOM([Ci.nsIObserver, Ci.nsISupportsWeakReference]), .map(function (node) "//" + node).join(" | "); }, - makeDTD: function makeDTD(obj) unescape(encodeURI(iter(obj) + makeDTD: function makeDTD(obj) iter(obj) .map(function ([k, v]) [""].join("")) - .join("\n"))), + .join("\n"), map: deprecated("iter.map", function map(obj, fn, self) iter(obj).map(fn, self).toArray()), writeToClipboard: deprecated("dactyl.clipboardWrite", function writeToClipboard(str, verbose) util.dactyl.clipboardWrite(str, verbose)),