diff options
author | toasted-nutbread <toasted-nutbread@users.noreply.github.com> | 2019-10-13 12:10:00 -0400 |
---|---|---|
committer | toasted-nutbread <toasted-nutbread@users.noreply.github.com> | 2019-10-13 12:12:52 -0400 |
commit | 1b96e69ea2bfe26ded82e2f058d30500290e9d2d (patch) | |
tree | 437f8f97629ea735089a8f7195b2cea09eadb894 /ext | |
parent | b34ff7ebe9004d85140cced007c67ca2c9f59396 (diff) |
Placeholder and improve consistency of stylesheet rule priorities
Diffstat (limited to 'ext')
-rw-r--r-- | ext/bg/js/settings-popup-preview.js | 17 | ||||
-rw-r--r-- | ext/bg/settings-popup-preview.html | 2 | ||||
-rw-r--r-- | ext/bg/settings.html | 2 |
3 files changed, 19 insertions, 2 deletions
diff --git a/ext/bg/js/settings-popup-preview.js b/ext/bg/js/settings-popup-preview.js index 68655fc9..7ccdc7f3 100644 --- a/ext/bg/js/settings-popup-preview.js +++ b/ext/bg/js/settings-popup-preview.js @@ -21,6 +21,7 @@ class SettingsPopupPreview { constructor() { this.frontend = null; this.apiOptionsGetOld = apiOptionsGet; + this.popupInjectOuterStylesheetOld = Popup.injectOuterStylesheet; this.popupShown = false; this.themeChangeTimeout = null; } @@ -56,6 +57,9 @@ class SettingsPopupPreview { await this.frontend.isPrepared(); + // Overwrite popup + Popup.injectOuterStylesheet = (...args) => this.popupInjectOuterStylesheet(...args); + // Update search this.updateSearch(); } @@ -76,6 +80,19 @@ class SettingsPopupPreview { return options; } + popupInjectOuterStylesheet(...args) { + // This simulates the stylesheet priorities when injecting using the web extension API. + const result = this.popupInjectOuterStylesheetOld(...args); + + const outerStylesheet = Popup.outerStylesheet; + const node = document.querySelector('#client-css'); + if (node !== null && outerStylesheet !== null) { + node.parentNode.insertBefore(outerStylesheet, node); + } + + return result; + } + onWindowResize() { if (this.frontend === null) { return; } const textSource = this.frontend.textSourceLast; diff --git a/ext/bg/settings-popup-preview.html b/ext/bg/settings-popup-preview.html index bfe4550c..07caa271 100644 --- a/ext/bg/settings-popup-preview.html +++ b/ext/bg/settings-popup-preview.html @@ -4,7 +4,7 @@ <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1" /> <title>Yomichan Popup Preview</title> - <link rel="stylesheet" type="text/css" href="/fg/css/client.css"> + <link rel="stylesheet" type="text/css" href="/fg/css/client.css" id="client-css"> <style> html { transition: background-color 0.25s linear 0s, color 0.25s linear 0s; diff --git a/ext/bg/settings.html b/ext/bg/settings.html index cb223e72..ea3e8c18 100644 --- a/ext/bg/settings.html +++ b/ext/bg/settings.html @@ -259,7 +259,7 @@ </div> <div class="col-xs-6"> <label for="custom-popup-outer-css">Custom popup outer CSS</label> - <div><textarea autocomplete="off" spellcheck="false" wrap="soft" id="custom-popup-outer-css" class="form-control"></textarea></div> + <div><textarea autocomplete="off" spellcheck="false" wrap="soft" id="custom-popup-outer-css" class="form-control" placeholder="iframe.yomichan-float { /*styles*/ }"></textarea></div> </div> </div> </div> |