Overview
Comment: | Ajout de MutationObserver, ajout dans le css et isolation du xNode du menu (tester uniquement sur Chrome |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | fx | FixWebext |
Files: | files | file ages | folders |
SHA3-256: |
c422898599c801f30e08f4e5114eca08 |
User & Date: | IllusionPerdu on 2017-10-28 00:16:10 |
Other Links: | branch diff | manifest | tags |
Context
2017-10-28
| ||
00:22 | Revert changement de taille du bouton (est super petit sur certain site) check-in: d5e30a5b87 user: IllusionPerdu tags: fx, FixWebext | |
00:16 | Ajout de MutationObserver, ajout dans le css et isolation du xNode du menu (tester uniquement sur Chrome check-in: c422898599 user: IllusionPerdu tags: fx, FixWebext | |
2017-10-27
| ||
20:41 | [fx] use a debug profile for Firefox check-in: a6d823b2a6 user: olr tags: trunk, fx | |
Changes
Modified gc_lang/fr/build.py from [e6bfac7235] to [b7f960ec85].
︙ | |||
26 27 28 29 30 31 32 | 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | - + - + | os.system("web-ext build") def _createOptionsForWebExtension (dVars): sHTML = "" sLang = dVars['sDefaultUILang'] for sSection, lOpt in dVars['lStructOpt']: |
︙ |
Modified gc_lang/fr/webext/content_scripts/init.js from [08d2b10057] to [b8d0b75897].
︙ | |||
294 295 296 297 298 299 300 | 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 | + + + + + + + + + + + + + + + + + + + + + + + + + | /* Start */ oGrammalecte.listenRightClick(); oGrammalecte.createMenus(); /* When a textarea is added via jascript we add the menu :) */ let observer = new MutationObserver(function(mutations) { mutations.forEach(function(mutation) { for(let i = 0; i < mutation.addedNodes.length; i++){ if ( mutation.addedNodes[i].getElementsByTagName ){ if ( mutation.addedNodes[i].tagName == "TEXTAREA" ) { oGrammalecte.lMenu.push(new GrammalecteMenu(oGrammalecte.nMenu, mutation.addedNodes[i])); oGrammalecte.nMenu += 1; } else { for (let xNode of mutation.addedNodes[i].getElementsByTagName("textarea")) { oGrammalecte.lMenu.push(new GrammalecteMenu(oGrammalecte.nMenu, xNode)); oGrammalecte.nMenu += 1; } } } } }); }); observer.observe(document.body, { childList: true, subtree: true }); |
Modified gc_lang/fr/webext/content_scripts/menu.css from [2b784470a7] to [bf1c920fc1].
1 2 3 4 5 6 7 8 9 10 11 12 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | - - + + | /* CSS Button and menu for Grammalecte */ /* Button */ .grammalecte_menu_main_button { position: absolute; display: none; margin: -8px 0 0 -8px; |
︙ | |||
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 | 59 60 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 87 | + + + | margin-left: -10px; border-radius: 5px; border: 3px solid hsl(210, 50%, 30%); box-shadow: 0px 0px 2px hsla(210, 10%, 10%, .5); background-color: hsl(210, 50%, 30%); font-family: "Trebuchet MS", "Fira Sans", "Liberation Sans", sans-serif; z-index: 2147483640; /* maximum is 2147483647: https://stackoverflow.com/questions/491052/minimum-and-maximum-value-of-z-index */ text-align: left; line-height: 21px; } .grammalecte_menu_close_button { float: right; margin: 2px 2px 0 0; padding: 1px 5px; border-radius: 2px; background-color: hsl(0, 50%, 50%); color: hsl(0, 20%, 90%); font-size: 12px; font-weight: bold; cursor: pointer; height: 20px; } .grammalecte_menu_close_button:hover { background-color: hsl(0, 60%, 50%); color: hsl(0, 30%, 96%); } .grammalecte_menu_item { |
︙ |
Modified gc_lang/fr/webext/content_scripts/menu.js from [2428c12fef] to [5464f752b2].
1 2 3 4 5 6 7 8 9 10 11 12 | 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 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 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 87 88 89 90 | + - - - - + + + + + + + + + + + + - - + + - - + + - + + + + + - + - + - + - - - + + - - + - - + + | // JavaScript "use strict"; class GrammalecteMenu { constructor (nMenu, xNode) { this.xNode = xNode; this.sMenuId = "grammalecte_menu" + nMenu; this.xButton = oGrammalecte.createNode("div", {className: "grammalecte_menu_main_button", textContent: " "}); this.xButton.onclick = () => { this.switchMenu(); }; this.xButton.style.zIndex = (xNode.style.zIndex.search(/^[0-9]+$/) !== -1) ? (parseInt(xNode.style.zIndex) + 1).toString() : xNode.style.zIndex; |
︙ |