| Index: lib/options.js |
| =================================================================== |
| --- a/lib/options.js |
| +++ b/lib/options.js |
| @@ -119,16 +119,35 @@ |
| browser.tabs.create({url: optionsUrl}, () => |
| { |
| returnShowOptionsCall(optionsTab, callback); |
| }); |
| } |
| }); |
| }; |
| +// We need to clear the popup URL on Firefox for Android in order for the |
| +// options page to open instead of the bubble. Unfortunately there's a bug[1] |
| +// which prevents us from doing that, so we must avoid setting the URL on |
| +// Firefox from the manifest at all, instead setting it here only for |
| +// non-mobile. |
| +// [1] - https://bugzilla.mozilla.org/show_bug.cgi?id=1414613 |
| +if ("getBrowserInfo" in browser.runtime) |
| +{ |
| + browser.runtime.getBrowserInfo().then(browserInfo => |
| + { |
| + if (browserInfo.name != "Fennec") |
| + browser.browserAction.setPopup({popup: "popup.html"}); |
| + }); |
| +} |
| +else |
| +{ |
| + browser.browserAction.setPopup({popup: "popup.html"}); |
| +} |
| + |
| // On Firefox for Android, open the options page directly when the browser |
| // action is clicked. |
| browser.browserAction.onClicked.addListener(() => |
| { |
| browser.tabs.query({active: true, lastFocusedWindow: true}, ([tab]) => |
| { |
| let currentPage = new ext.Page(tab); |