aboutsummaryrefslogtreecommitdiff
path: root/ext/js/accessibility/google-docs.js
diff options
context:
space:
mode:
Diffstat (limited to 'ext/js/accessibility/google-docs.js')
-rw-r--r--ext/js/accessibility/google-docs.js61
1 files changed, 4 insertions, 57 deletions
diff --git a/ext/js/accessibility/google-docs.js b/ext/js/accessibility/google-docs.js
index 4bc398ff..00266bb6 100644
--- a/ext/js/accessibility/google-docs.js
+++ b/ext/js/accessibility/google-docs.js
@@ -1,6 +1,5 @@
/*
* Copyright (C) 2023 Yomitan Authors
- * Copyright (C) 2021-2022 Yomichan Authors
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,59 +15,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
-(async () => {
- // Reentrant check
- // @ts-expect-error - Checking a property to the global object
- if (self.googleDocsAccessibilitySetup) { return; }
- // @ts-expect-error - Adding a property to the global object
- self.googleDocsAccessibilitySetup = true;
-
- /**
- * @template {import('api').ApiNames} TAction
- * @template {import('api').ApiParams<TAction>} TParams
- * @param {TAction} action
- * @param {TParams} params
- * @returns {Promise<import('api').ApiReturn<TAction>>}
- */
- const invokeApi = (action, params) => {
- return new Promise((resolve, reject) => {
- chrome.runtime.sendMessage({action, params}, (response) => {
- void chrome.runtime.lastError;
- if (typeof response !== 'object' || response === null) {
- reject(new Error('Unexpected response'));
- } else if (typeof response.error !== 'undefined') {
- reject(new Error('Invalid response'));
- } else {
- resolve(response.result);
- }
- });
- });
- };
-
- const optionsContext = {depth: 0, url: location.href};
- /** @type {import('api').ApiReturn<'optionsGet'>} */
- let options;
- try {
- options = await invokeApi('optionsGet', {optionsContext});
- } catch (e) {
- return;
- }
-
- if (!options.accessibility.forceGoogleDocsHtmlRendering) { return; }
-
- // The extension ID below is on an allow-list that is used on the Google Docs webpage.
- /* eslint-disable */
- // @ts-expect-error : Adding a property to the global object
- const inject = () => { window._docs_annotate_canvas_by_ext = 'ogmnaimimemjmbakcfefmnahgdfhfami'; };
- /* eslint-enable */
-
- let parent = document.head;
- if (parent === null) {
- parent = document.documentElement;
- if (parent === null) { return; }
- }
- const script = document.createElement('script');
- script.textContent = `(${inject.toString()})();`;
- parent.appendChild(script);
- parent.removeChild(script);
-})();
+// The extension ID below is on an allow-list that is used on the Google Docs webpage.
+// @ts-expect-error - Adding a property to the global object
+// eslint-disable-next-line no-underscore-dangle
+window._docs_annotate_canvas_by_ext = 'ogmnaimimemjmbakcfefmnahgdfhfami';