From cbed89d8ba7840443a2d016952873655011e4ba3 Mon Sep 17 00:00:00 2001 From: Kris Maglione Date: Sun, 3 Oct 2010 11:48:56 -0400 Subject: [PATCH] Use the charset service for charset completions. --- common/content/io.js | 9 +++------ common/modules/services.jsm | 1 + 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/common/content/io.js b/common/content/io.js index 96c74f7a..e95c2547 100644 --- a/common/content/io.js +++ b/common/content/io.js @@ -657,15 +657,12 @@ lookup: completion: function () { completion.charset = function (context) { context.anchored = false; - let bundle = services.get("stringBundle").createBundle( - "chrome://global/locale/charsetTitles.properties"); + let service = services.get("charset"); context.keys = { text: util.identity, - description: function (charset) bundle.GetStringFromName(charset.toLowerCase() + ".title") + description: function (charset) service.getCharsetTitle(charset) }; - context.generate = function () array("more1 more2 more3 more4 more5 unicode".split(" ")) - .map(function (key) options.getPref("intl.charsetmenu.browser." + key).split(', ')) - .flatten().uniq().array; + context.generate = function () iter(service.getDecoderList()); }; completion.directory = function directory(context, full) { diff --git a/common/modules/services.jsm b/common/modules/services.jsm index ce551879..c6197ba3 100644 --- a/common/modules/services.jsm +++ b/common/modules/services.jsm @@ -22,6 +22,7 @@ const Services = Module("Services", { this.add("bookmarks", "@mozilla.org/browser/nav-bookmarks-service;1", Ci.nsINavBookmarksService); this.add("browserSearch", "@mozilla.org/browser/search-service;1", Ci.nsIBrowserSearchService); this.add("cache", "@mozilla.org/network/cache-service;1", Ci.nsICacheService); + this.add("charset", "@mozilla.org/charset-converter-manager;1", Ci.nsICharsetConverterManager); this.add("console", "@mozilla.org/consoleservice;1", Ci.nsIConsoleService); this.add("dactyl:", "@mozilla.org/network/protocol;1?name=dactyl"); this.add("debugger", "@mozilla.org/js/jsd/debugger-service;1", Ci.jsdIDebuggerService);