canmove, Confirmed users
2,675
edits
(remove spam Undo revision 809159 by Seotoolinfo (talk)) |
|||
(14 intermediate revisions by 5 users not shown) | |||
Line 90: | Line 90: | ||
As requestFullScreenWithKeys, but hints to the UA that while in full-screen state, the toplevel browsing context for this Document should have keys disabled. While keys are disabled, there may be a reduced risk of spoofing attacks inducing the user to input inappropriate data, and the UA may choose to relax restrictions on entering full-screen state with keys disabled. | As requestFullScreenWithKeys, but hints to the UA that while in full-screen state, the toplevel browsing context for this Document should have keys disabled. While keys are disabled, there may be a reduced risk of spoofing attacks inducing the user to input inappropriate data, and the UA may choose to relax restrictions on entering full-screen state with keys disabled. | ||
''cpearce: We | ''cpearce: We are planning on dispatching a "fullscreendenied" event when requests for full-screen are denied. We changed to an "ask forgiveness" model, rather than an "ask permission" model, so requests can be approved/denied immediately in requestFullScreen(). UAs which choose to implement requestFullScreen with an "ask permission" model may never end up sending a "fullscreendenied" event however.'' | ||
==== fullscreenchange event ==== | ==== fullscreenchange event ==== | ||
Line 128: | Line 128: | ||
==== UA stylesheet rules ==== | ==== UA stylesheet rules ==== | ||
Suggested UA stylesheet rules: | Suggested UA stylesheet rules: | ||
Line 140: | Line 141: | ||
z-index:2147483647; | z-index:2147483647; | ||
background:black; | background:black; | ||
width: 100% !important; | /* override mapped width and height attributes */ | ||
height: 100% !important; | width:100% !important; | ||
height:100% !important; | |||
} | } | ||
/* | /* If there is a full-screen element that is not the root then | ||
we should hide the viewport scrollbar. */ | we should hide the viewport scrollbar. */ | ||
:root: | :root:full-screen-ancestor { | ||
overflow: hidden; | overflow:hidden; | ||
} | |||
:full-screen-ancestor { | |||
/* Ancestors of a full-screen element should not induce stacking contexts | |||
that would prevent the full-screen element from being on top. */ | |||
z-index:auto; | |||
/* Ancestors of a full-screen element should not be partially transparent, | |||
since that would apply to the full-screen element and make the page visible | |||
behind it. It would also create a pseudo-stacking-context that would let content | |||
draw on top of the full-screen element. */ | |||
opacity:1; | |||
/* Ancestors of a full-screen element should not apply SVG masking, clipping, or | |||
filtering, since that would affect the full-screen element and create a pseudo- | |||
stacking context. */ | |||
mask:none; | |||
clip:auto; | |||
filter:none; | |||
} | } | ||
For these to be effective, we really want their to be higher precedence than non-important author rules. So we need to add a new precedence level for UA style rules that's between "author" and "author important". Gecko already supports this via "override styles sheets" (nsIPresShell::AddOverrideStyleSheet), already used by the editor. | |||
==== Webkit additions ==== | ==== Webkit additions ==== | ||
Line 157: | Line 175: | ||
* :full-screen-root-with-target - While a Document is in the fullscreen state and the document's current fullscreen element is an element in the document, the 'full-screen-root-with-target' pseudoclass applies to the root element of that Document. | * :full-screen-root-with-target - While a Document is in the fullscreen state and the document's current fullscreen element is an element in the document, the 'full-screen-root-with-target' pseudoclass applies to the root element of that Document. | ||
These are unnecessary given the above features. ":full-screen-document { ... }" can be written "@media all and (view-mode: fullscreen) { :root { ... } }". ":full-screen-root-with-target { ... }" can be written ":root:full-screen-ancestor, :root:full-screen { ... }". | |||
See [http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2010-August/027670.html feedback on new pseudo-classes] and [http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2010-August/027672.html follow-up from RoC] (and subsequent thread) | See [http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2010-August/027670.html feedback on new pseudo-classes] and [http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2010-August/027672.html follow-up from RoC] (and subsequent thread) | ||
Line 216: | Line 234: | ||
=== Discussion 2011-10-03 === | === Discussion 2011-10-03 === | ||
* [[Security/Reviews/Firefox10/CodeEditor/FullScreenAPI]] | * [[Security/Reviews/Firefox10/CodeEditor/FullScreenAPI]] | ||
* comparisons made to Flash's restrictions, e.g. as documented in [http://www.adobe.com/devnet/flashplayer/articles/full_screen_mode.html Exploring full-screen mode in Flash Player] and [http://kb2.adobe.com/cps/405/kb405548.html Limited full-screen keyboard input (Flash Player 10)]. | |||
=== Discussion 2011-04-21 === | === Discussion 2011-04-21 === | ||
Line 283: | Line 302: | ||
** text of this page repeatedly uses "fullscreen" | ** text of this page repeatedly uses "fullscreen" | ||
** Wikipedia prefers "[https://secure.wikimedia.org/wikipedia/en/wiki/Fullscreen fullscreen]" and redirects "[https://secure.wikimedia.org/wikipedia/en/wiki/Full_screen full screen]" to that page. | ** Wikipedia prefers "[https://secure.wikimedia.org/wikipedia/en/wiki/Fullscreen fullscreen]" and redirects "[https://secure.wikimedia.org/wikipedia/en/wiki/Full_screen full screen]" to that page. | ||
** the combined term "fullscreen" is more easily uniquely searchable than separate terms | |||
* '''full screen''' | * '''full screen''' | ||
** title of this page implies "full screen" from the camelcase: ([[Gecko:FullScreenAPI|FullScreenAPI]]) | ** title of this page implies "full screen" from the camelcase: ([[Gecko:FullScreenAPI|FullScreenAPI]]) - but that's just legacy. | ||
** the Firefox 4 "View" menu item "Full Screen" (shift-command-F) | ** the Firefox 4 "View" menu item "Full Screen" (shift-command-F) | ||
''roc: Elika and I resolved to use 'full-screen' everywhere.'' | <div class=discussion> | ||
* ''roc: Elika and I resolved to use 'full-screen' everywhere.'' | |||
** Why? It would be useful to have reasoning documented for this conclusion so we can avoid re-exploring it. [[User:Tantek|Tantek]] | |||
</div> | |||
=== avoiding ancestor reflow === | === avoiding ancestor reflow === | ||
Line 313: | Line 336: | ||
In progress: | In progress: | ||
* [[Platform/Features/Full_Screen_APIs|Firefox Platform/Features/Full_Screen_APIs]] | * [[Platform/Features/Full_Screen_APIs|Firefox Platform/Features/Full_Screen_APIs]] | ||
** [http://blog.pearce.org.nz/2011/09/mozilla-full-screen-api-progress-update.html 2011-09-22 Mozilla full-screen API progress update] | |||
* [http://trac.webkit.org/changeset/92576 WebKit Checkin] | * [http://trac.webkit.org/changeset/92576 WebKit Checkin] | ||
** [http://codereview.chromium.org/7461059/ Chrome review] | ** [http://codereview.chromium.org/7461059/ Chrome review] | ||
** [http://peter.sh/2011/01/javascript-full-screen-api-navigation-timing-and-repeating-css-gradients/ Safari Webkit nightlies have support] | ** [http://peter.sh/2011/01/javascript-full-screen-api-navigation-timing-and-repeating-css-gradients/ Safari Webkit nightlies have support] | ||
[[Category:Web APIs]] | |||
== Articles == | |||
* 2011-10-26 [http://updates.html5rocks.com/2011/10/Let-Your-Content-Do-the-Talking-Fullscreen-API Let Your Content Do the Talking: Fullscreen API] | |||
* 2012-06-06 [http://sorcery.smugmug.com/2012/06/06/using-html5s-fullscreen-api-for-fun-and-profit/ Using HTML5′s Fullscreen API for Fun and Profit] |