Overview
| Comment: | [fx] Use Shadow DOM in messagebox when avaible |
|---|---|
| Downloads: | Tarball | ZIP archive | SQL archive |
| Timelines: | family | ancestors | descendants | both | fx | shadowdom |
| Files: | files | file ages | folders |
| SHA3-256: |
91852523ef185c28bb5d067c6eb94f59 |
| User & Date: | IllusionPerdu on 2018-10-19 14:45:12 |
| Other Links: | branch diff | manifest | tags |
Context
|
2018-10-19
| ||
| 14:57 | [fx] Oups it's not necessary to have sUrl in panel or msgbox check-in: f8cceefa3c user: IllusionPerdu tags: fx, shadowdom | |
| 14:45 | [fx] Use Shadow DOM in messagebox when avaible check-in: 91852523ef user: IllusionPerdu tags: fx, shadowdom | |
| 14:33 | [fx] Use Shadow DOM in panel when avaible check-in: 41527933de user: IllusionPerdu tags: fx, shadowdom | |
Changes
Modified gc_lang/fr/webext/content_scripts/message_box.js from [4f0ad33a4a] to [1ad982bafb].
1 2 3 4 5 6 7 8 |
// JavaScript
// Panel creator
"use strict";
class GrammalecteMessageBox {
| > > > > | > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
// JavaScript
// Panel creator
/* jshint esversion:6, -W097 */
/* jslint esversion:6 */
/* global oGrammalecte, xGrammalectePort, showError, window, document, console */
"use strict";
class GrammalecteMessageBox {
constructor (sUrl, sId, sTitle) {
this.sId = sId;
this.sUrl = sUrl;
this.bShadow = document.body.createShadowRoot || document.body.attachShadow;
if (this.bShadow){
this.oShadowPanel = oGrammalecte.createNode("div", {id: this.sId+"_shadow", style: "width:0;height:0;"});
this.oShadow = this.oShadowPanel.attachShadow({mode: "open"});
this.oParent = this.oShadow;
} else {
this.oParent = document;
}
this.xMessageBoxBar = oGrammalecte.createNode("div", {className: "grammalecte_message_box_bar"});
this.xMessageBoxContent = oGrammalecte.createNode("div", {className: "grammalecte_message_box_content"});
this.xMessageBox = this._createPanel(sTitle);
}
_createPanel (sTitle) {
try {
|
| ︙ | ︙ | |||
46 47 48 49 50 51 52 |
_createCloseButton () {
let xButton = oGrammalecte.createNode("div", {className: "grammalecte_close_button", textContent: "×", title: "Fermer la fenêtre"});
xButton.onclick = function () { this.hide(); }.bind(this); // better than writing “let that = this;” before the function?
return xButton;
}
insertIntoPage () {
| > > > > > > > > > > | > | 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 |
_createCloseButton () {
let xButton = oGrammalecte.createNode("div", {className: "grammalecte_close_button", textContent: "×", title: "Fermer la fenêtre"});
xButton.onclick = function () { this.hide(); }.bind(this); // better than writing “let that = this;” before the function?
return xButton;
}
insertIntoPage () {
if (this.bShadow){
this.oShadow.appendChild(
oGrammalecte.createNode("link", {rel: "stylesheet", type: "text/css", media: "all", href: this.sUrl+"content_scripts/panel.css"})
);
this.oShadow.appendChild(
oGrammalecte.createNode("link", {rel: "stylesheet", type: "text/css", media: "all", href: this.sUrl+"content_scripts/message_box.css"})
);
this.oShadow.appendChild(this.xMessageBox);
document.body.appendChild(this.oShadowPanel);
} else {
document.body.appendChild(this.xMessageBox);
}
}
show () {
this.xMessageBox.style.display = "block";
}
hide () {
|
| ︙ | ︙ |