aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortoasted-nutbread <toasted-nutbread@users.noreply.github.com>2023-12-20 00:43:41 -0500
committerGitHub <noreply@github.com>2023-12-20 05:43:41 +0000
commitad94a56e573553f3c66e8fcccff3042544faeb1b (patch)
treed5ea82322e9face770f709520c219e1b6edf4893
parentd6dcf8288a77996d2aba989a26d2a21f7ebf4b33 (diff)
Add Offscreen.prepare for constructor side effects (#402)
-rw-r--r--ext/js/background/offscreen-main.js7
-rw-r--r--ext/js/background/offscreen.js8
2 files changed, 9 insertions, 6 deletions
diff --git a/ext/js/background/offscreen-main.js b/ext/js/background/offscreen-main.js
index f85908bd..aac5b8f2 100644
--- a/ext/js/background/offscreen-main.js
+++ b/ext/js/background/offscreen-main.js
@@ -19,8 +19,9 @@
import {Offscreen} from './offscreen.js';
/** Entry point. */
-async function main() {
- new Offscreen();
+function main() {
+ const offscreen = new Offscreen();
+ offscreen.prepare();
}
-await main();
+main();
diff --git a/ext/js/background/offscreen.js b/ext/js/background/offscreen.js
index bcbcda6b..d1cf3384 100644
--- a/ext/js/background/offscreen.js
+++ b/ext/js/background/offscreen.js
@@ -68,13 +68,15 @@ export class Offscreen {
]));
/* eslint-enable no-multi-spaces */
- const onMessage = this._onMessage.bind(this);
- chrome.runtime.onMessage.addListener(onMessage);
-
/** @type {?Promise<void>} */
this._prepareDatabasePromise = null;
}
+ /** */
+ prepare() {
+ chrome.runtime.onMessage.addListener(this._onMessage.bind(this));
+ }
+
/** @type {import('offscreen').MessageHandler<'clipboardGetTextOffscreen', true>} */
async _getTextHandler({useRichText}) {
return await this._clipboardReader.getText(useRichText);