86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
|
+
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
|
textarea: true,
editablenode: true
}});
}
}
function initGrammarChecker (dSavedOptions) {
try {
let dOptions = (dSavedOptions.hasOwnProperty("gc_options")) ? dSavedOptions.gc_options : null;
if (bChrome) {
// JS crap again. Chrome can’t store Map object.
dOptions = helpers.objectToMap(dOptions);
}
xGCEWorker.postMessage({
sCommand: "init",
dParam: {sExtensionPath: browser.extension.getURL(""), dOptions: dOptions, sContext: "Firefox"},
dInfo: {}
});
let dOptions = (dSavedOptions.hasOwnProperty("gc_options")) ? dSavedOptions.gc_options : null;
if (dOptions !== null && Object.getOwnPropertyNames(dOptions).length == 0) {
console.log("# Error: the saved options was an empty object");
dOptions = null;
}
if (bChrome) {
// JS crap again. Chrome can’t store Map object.
dOptions = helpers.objectToMap(dOptions);
}
xGCEWorker.postMessage({
sCommand: "init",
dParam: {sExtensionPath: browser.extension.getURL(""), dOptions: dOptions, sContext: "Firefox"},
dInfo: {}
});
}
catch (e) {
console.log("initGrammarChecker failed");
showError(e);
}
}
function setSpellingDictionary (dSavedDictionary) {
if (dSavedDictionary.hasOwnProperty("oExtendedDictionary")) {
xGCEWorker.postMessage({
sCommand: "setDictionary",
dParam: { sType: "extended", oDict: dSavedDictionary["oExtendedDictionary"] },
|