Closed
Bug 1411227
Opened 7 years ago
Closed 7 years ago
Allow WebExtensions to request fullscreen
Categories
(WebExtensions :: General, enhancement, P5)
WebExtensions
General
Tracking
(firefox57 wontfix)
RESOLVED
WONTFIX
Tracking | Status | |
---|---|---|
firefox57 | --- | wontfix |
People
(Reporter: kernp25, Unassigned, NeedInfo)
References
(Blocks 1 open bug)
Details
(Whiteboard: [design-decision-denied])
User Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:58.0) Gecko/20100101 Firefox/58.0
Build ID: 20171023100252
Expected results:
WebExtensions should be able to request fullscreen.
This code should work in a content script (like it works in google chrome):
if (document.documentElement.requestFullScreen) {
document.documentElement.requestFullScreen();
} else if (document.documentElement.mozRequestFullScreen) {
document.documentElement.mozRequestFullScreen();
} else if (document.documentElement.webkitRequestFullScreen) {
document.documentElement.webkitRequestFullScreen();
}
Updated•7 years ago
|
Comment 1•7 years ago
|
||
hi,
The 'fullscreen' mode in WebExtensions is indipensable, and I find it useful in the category of animation, gaming and entertainment.
I published a WebExtension "screen saver"
- Addons : https://addons.mozilla.org/fr/firefox/addon/screen-saver/
- Script : https://github.com/hellosct1/screensaver-webextensions
Currently, here's what I'm doing to launch the 'fullscreen' mode
document.addEventListener("keypress", function() {
if (document.documentElement.requestFullScreen) {
document.documentElement.requestFullScreen();
} else if (document.documentElement.mozRequestFullScreen) {
document.documentElement.mozRequestFullScreen();
} else if (document.documentElement.webkitRequestFullScreen) {
document.documentElement.webkitRequestFullScreen();
}
});
This code is the /content_scripts/anim.js file
I watched the API addEventListener and the event (https://developer.mozilla.org/en-US/docs/Web/Events) but It's missing the trigger to run the Fullscreen
I hope that I have explained the problem I am experiencing.
thank's
Christophe
Comment 2•7 years ago
|
||
Works for me with requestFullscreen(). requestFullScreen does not exist.
Status: UNCONFIRMED → RESOLVED
Closed: 7 years ago
Resolution: --- → DUPLICATE
Comment 4•7 years ago
|
||
IMO not really dupe of bug 1388479. Bug 1388479 says "add fullScreen permission", but this bug is about making "requestFullscreen" always work when called from a WebExtension.
Right now, if you add a page action for going fullscreen, and run this inside the page action handler,
> browser.tabs.executeScript({
> code: "document.documentElement.requestFullscreen();",
> });
requestFullscreen() will fail with error "[JavaScript Warning: "Request for fullscreen was denied because Element.requestFullscreen() was not called from inside a short running user-generated event handler." {file: "resource://gre/modules/ExtensionContent.jsm" line: 362}]".
This bug is about lifting this restriction when requestFullscreen is called by a WebExtension. Note that Fennec does not have a "Fullscreen" menu option, so there's no native replacement for this functionality inside Fennec.
Status: RESOLVED → REOPENED
Ever confirmed: true
Resolution: DUPLICATE → ---
Updated•7 years ago
|
Severity: normal → enhancement
Comment 5•7 years ago
|
||
Hi kernp25, this has been added to the agenda for the WebExtensions APIs triage on April 3, 2018. Would you be able to join us?
Here’s a quick overview of what to expect at the triage:
* We normally spend 5 minutes per bug
* The more information in the bug, the better
* The goal of the triage is to give a general thumbs up or thumbs down on a proposal; we won't be going deep into implementation details
Relevant Links:
* Wiki for the meeting: https://wiki.mozilla.org/WebExtensions/Triage#Next_Meeting
* Meeting agenda: https://docs.google.com/document/d/1H1ZEWf7dmyyu7NZZL90TkbyaUTjbdIK3TUEtO_vff34/edit#
* Vision doc for WebExtensions: https://wiki.mozilla.org/WebExtensions/Vision
coming from https://bugzilla.mozilla.org/show_bug.cgi?id=1388479
In Google Chrome my "Full screen" extension works just fine. Firefox not:
https://addons.mozilla.org/en-US/firefox/addon/full-screen-for-firefox/
WebExtensions should have more power then normal webpages. So this code should work:
> browser.tabs.executeScript({
> code: "document.documentElement.requestFullscreen();",
> });
Note that requestFullscreen can also be abused by malicious websites [1]:
So "Request for fullscreen was denied because Element.requestFullscreen() was not called from inside a short running user-generated event handler." doesn't really protect the user here.
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1428913
Comment 9•7 years ago
|
||
We discussed about this during the API triage meeting and we agreed that exempting all the WebExtensions content scripts from the user interaction requirement on the requestFullscreen method is not an option, and so I'm marking this as wontfix and change the whiteboard field to [design-decision-denied].
Status: REOPENED → RESOLVED
Closed: 7 years ago → 7 years ago
Resolution: --- → WONTFIX
Whiteboard: [design-decision-needed] → [design-decision-denied]
Comment hidden (advocacy) |
Updated•6 years ago
|
Product: Toolkit → WebExtensions
Comment 11•2 years ago
|
||
I know that it is old and closed topic but have you consider adding "fullscreen" permission to manifest. If Element.requestFullscreen() is to hard to change you could add browser.fullscreen module, that can be called in content_script
I need this functionality for my automation extension that plays next episode of show ;)
Flags: needinfo?(nanimo1309)
You need to log in
before you can comment on or make changes to this bug.
Description
•