From a0657e1bab6450095b020fb47b9c09a8ca7b5cdc Mon Sep 17 00:00:00 2001 From: toasted-nutbread Date: Sun, 24 Jan 2021 14:20:17 -0500 Subject: Various firefox fixes (#1306) * Fix for chrome.commands not being present on Firefox's embedded float.html * Fix _getSearchContext mishandling _optionsContextOverride --- ext/fg/js/frontend.js | 18 +++++++++++------- ext/mixed/js/hotkey-help-controller.js | 5 +++++ 2 files changed, 16 insertions(+), 7 deletions(-) (limited to 'ext') diff --git a/ext/fg/js/frontend.js b/ext/fg/js/frontend.js index e9b57eb5..94edeb12 100644 --- a/ext/fg/js/frontend.js +++ b/ext/fg/js/frontend.js @@ -637,14 +637,14 @@ class Frontend { } async _getOptionsContext() { - return (await this._getSearchContext()).optionsContext; + let optionsContext = this._optionsContextOverride; + if (optionsContext === null) { + optionsContext = (await this._getSearchContext()).optionsContext; + } + return optionsContext; } async _getSearchContext() { - if (this._optionsContextOverride !== null) { - return this._optionsContextOverride; - } - let url = window.location.href; let documentTitle = document.title; if (this._useProxyPopup) { @@ -655,9 +655,13 @@ class Frontend { } } - const depth = this._depth; + let optionsContext = this._optionsContextOverride; + if (optionsContext === null) { + optionsContext = {depth: this._depth, url}; + } + return { - optionsContext: {depth, url}, + optionsContext, detail: {documentTitle} }; } diff --git a/ext/mixed/js/hotkey-help-controller.js b/ext/mixed/js/hotkey-help-controller.js index 032573c1..8137b50b 100644 --- a/ext/mixed/js/hotkey-help-controller.js +++ b/ext/mixed/js/hotkey-help-controller.js @@ -83,6 +83,11 @@ class HotkeyHelpController { async _setupGlobalCommands(commandMap) { const commands = await new Promise((resolve, reject) => { + if (!(isObject(chrome.commands) && typeof chrome.commands.getAll === 'function')) { + resolve([]); + return; + } + chrome.commands.getAll((result) => { const e = chrome.runtime.lastError; if (e) { -- cgit v1.2.3