From ad897713e6acbcbd56962e8514ac866926da3cdd Mon Sep 17 00:00:00 2001 From: toasted-nutbread Date: Tue, 9 Jul 2019 17:52:44 -0400 Subject: Add support for custom popup CSS --- ext/fg/js/float.js | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'ext/fg/js/float.js') diff --git a/ext/fg/js/float.js b/ext/fg/js/float.js index 1f08702d..1deb61a9 100644 --- a/ext/fg/js/float.js +++ b/ext/fg/js/float.js @@ -21,6 +21,7 @@ class DisplayFloat extends Display { constructor() { super($('#spinner'), $('#definitions')); this.autoPlayAudioTimer = null; + this.styleNode = null; $(window).on('message', utilAsync(this.onMessage.bind(this))); } @@ -62,6 +63,13 @@ class DisplayFloat extends Display { orphaned: () => { this.onOrphaned(); + }, + + setOptions: (options) => { + const css = options.general.customPopupCss; + if (css) { + this.setStyle(css); + } } }; @@ -101,6 +109,20 @@ class DisplayFloat extends Display { this.autoPlayAudioTimer = null; } } + + setStyle(css) { + const parent = document.head; + + if (this.styleNode === null) { + this.styleNode = document.createElement('style'); + } + + this.styleNode.textContent = css; + + if (this.styleNode.parentNode !== parent) { + parent.appendChild(this.styleNode); + } + } } window.yomichan_display = new DisplayFloat(); -- cgit v1.2.3