Add workaround for Firefox specific bug #5565
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Firefox (at least versions 128.0 and 137.0) doesn't allow popup created by
chrome.windows.createto request permissions. I've added a workaround that checks if the user is using Firefox, and opens a new tab instead of a new window.For some reason, this allows us to request permissions.
Relevant issue: fixes #5530
Tested in browser: Firefox for Fedora (64-bit) version 137.0
Speculation
I'm guessing the reason Firefox doesn't allow us to request permissions, is because it opens a popup (relative to the hamburger menu in the toolbar), but the popup windows don't have the location bar. If we could call
window.openinstead,it does work, presumably since the location bar is present. In fact, a better/more permanent fix would be to call
window.openfrom the reddit page (using the same URL), rather than callingchrome.windows.createfrom the background script.I'll also be reporting this as a Firefox bug in their bugzilla, but we'll see what happens there. (Link: https://bugzilla.mozilla.org/show_bug.cgi?id=1957822)