10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
-
-
-
-
+
+
+
+
-
-
-
-
-
-
-
-
-
+
+
+
+
|
"use strict";
function showError (e) {
console.error(e.fileName + "\n" + e.name + "\nline: " + e.lineNumber + "\n" + e.message);
}
function createNode (sType, oAttr, oDataset=null) {
try {
let xNode = document.createElement(sType);
Object.assign(xNode, oAttr);
// Chrome don’t follow the W3C specification:
// https://browserext.github.io/browserext/
let bChrome = false;
if (typeof(browser) !== "object") {
if (oDataset) {
Object.assign(xNode.dataset, oDataset);
}
return xNode;
}
catch (e) {
showError(e);
}
}
var browser = chrome;
bChrome = true;
}
/*
function loadImage (sContainerClass, sImagePath) {
let xRequest = new XMLHttpRequest();
xRequest.open('GET', browser.extension.getURL("")+sImagePath, false);
xRequest.responseType = "arraybuffer";
xRequest.send();
|
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
+
-
-
+
+
+
|
oTFPanel: null,
oLxgPanel: null,
oGCPanel: null,
createMenus: function () {
let lNode = document.getElementsByTagName("textarea");
for (let xNode of lNode) {
if (xNode.style.display !== "none" && xNode.style.visibility !== "hidden") {
this.lMenu.push(new GrammalecteMenu(this.nMenu, xNode));
this.nMenu += 1;
this.lMenu.push(new GrammalecteMenu(this.nMenu, xNode));
this.nMenu += 1;
}
}
},
createMenus2 () {
let lNode = document.querySelectorAll("[contenteditable]");
for (let xNode of lNode) {
this.lMenu.push(new GrammalecteMenu(this.nMenu, xNode));
|
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
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
120
|
+
+
+
+
+
+
+
+
+
+
+
+
+
+
|
},
createGCPanel: function () {
if (this.oGCPanel === null) {
this.oGCPanel = new GrammalecteGrammarChecker("grammalecte_gc_panel", "Grammalecte", 500, 700);
this.oGCPanel.insertIntoPage();
}
},
createNode: function (sType, oAttr, oDataset=null) {
try {
let xNode = document.createElement(sType);
Object.assign(xNode, oAttr);
if (oDataset) {
Object.assign(xNode.dataset, oDataset);
}
return xNode;
}
catch (e) {
showError(e);
}
}
}
/*
Connexion to the background
*/
|