Title: [128514] trunk
- Revision
- 128514
- Author
- [email protected]
- Date
- 2012-09-13 15:32:28 -0700 (Thu, 13 Sep 2012)
Log Message
Hide all ancestors of the full screen element when going full screen
https://bugs.webkit.org/show_bug.cgi?id=96332
Reviewed by James Robinson.
Source/WebCore:
Since fixed position elements can now sometimes become stacking
contexts, explicitly set position: static on full-screen ancestors so
that there are no stacking context ancestors that could cause the full
screen element to become incorrectly sorted.
Test: fullscreen/full-screen-fixed-pos-parent.html
* css/fullscreen.css:
(:-webkit-full-screen-ancestor:not(iframe)):
LayoutTests:
This test has an all red image that (without this patch) incorrectly
sorts on top of the full screen element. With this patch, the all
green full screen element appears on top.
* fullscreen/full-screen-fixed-pos-parent-expected.png: Added.
* fullscreen/full-screen-fixed-pos-parent-expected.txt: Added.
* fullscreen/full-screen-fixed-pos-parent.html: Added.
* fullscreen/resources/green.html: Added.
Modified Paths
Added Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (128513 => 128514)
--- trunk/LayoutTests/ChangeLog 2012-09-13 22:19:43 UTC (rev 128513)
+++ trunk/LayoutTests/ChangeLog 2012-09-13 22:32:28 UTC (rev 128514)
@@ -1,3 +1,19 @@
+2012-09-13 Adrienne Walker <[email protected]>
+
+ Hide all ancestors of the full screen element when going full screen
+ https://bugs.webkit.org/show_bug.cgi?id=96332
+
+ Reviewed by James Robinson.
+
+ This test has an all red image that (without this patch) incorrectly
+ sorts on top of the full screen element. With this patch, the all
+ green full screen element appears on top.
+
+ * fullscreen/full-screen-fixed-pos-parent-expected.png: Added.
+ * fullscreen/full-screen-fixed-pos-parent-expected.txt: Added.
+ * fullscreen/full-screen-fixed-pos-parent.html: Added.
+ * fullscreen/resources/green.html: Added.
+
2012-09-13 Adam Barth <[email protected]>
REGRESSION(r125126): It made fast/events/keyevent-iframe-removed-crash.html assert
Added: trunk/LayoutTests/fullscreen/full-screen-fixed-pos-parent-expected.png (0 => 128514)
--- trunk/LayoutTests/fullscreen/full-screen-fixed-pos-parent-expected.png (rev 0)
+++ trunk/LayoutTests/fullscreen/full-screen-fixed-pos-parent-expected.png 2012-09-13 22:32:28 UTC (rev 128514)
@@ -0,0 +1,6 @@
+\x89PNG
+
+
+IHDR X ' )tEXtchecksum f9cdba21f7e2009389f80333d1d70551\xA8sY
+\xA9IDATx\x9C\xED\xD6\xC1 \xC0\xB0\xD3\xC9\xDD%
+\x82$\xF4\xD95g \xED\xD7 \xBF1X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 3X 1\x83 \xBBg\xBC0\xE4\xF49\xCA IEND\xAEB`\x82
\ No newline at end of file
Added: trunk/LayoutTests/fullscreen/full-screen-fixed-pos-parent-expected.txt (0 => 128514)
--- trunk/LayoutTests/fullscreen/full-screen-fixed-pos-parent-expected.txt (rev 0)
+++ trunk/LayoutTests/fullscreen/full-screen-fixed-pos-parent-expected.txt 2012-09-13 22:32:28 UTC (rev 128514)
@@ -0,0 +1,2 @@
+
+
Added: trunk/LayoutTests/fullscreen/full-screen-fixed-pos-parent.html (0 => 128514)
--- trunk/LayoutTests/fullscreen/full-screen-fixed-pos-parent.html (rev 0)
+++ trunk/LayoutTests/fullscreen/full-screen-fixed-pos-parent.html 2012-09-13 22:32:28 UTC (rev 128514)
@@ -0,0 +1,63 @@
+<!DOCTYPE html>
+<html>
+<style>
+ #bad {
+ position: fixed;
+ top: 0px;
+ left: 0px;
+ background-color: red;
+ width: 100%;
+ height: 100%;
+ }
+
+ #fixed-container {
+ position: fixed;
+ top: 0px;
+ left: 0px;
+ z-index: 0;
+ }
+
+ #fullscreenme {
+ height: 400px;
+ width: 400px;
+ border: 0px;
+ }
+</style>
+</head>
+<script src=""
+<script>
+ if (window.internals)
+ window.internals.settings.setFixedPositionCreatesStackingContext(true);
+
+ function doTest() {
+ if (window.testRunner) {
+ testRunner.dumpAsText(true);
+ testRunner.waitUntilDone();
+ }
+ document.body.offsetTop;
+ var fullscreen = document.getElementById('fullscreenme');
+
+ var fullscreenChangeEvent = function(event) {
+ if (window.testRunner)
+ testRunner.notifyDone();
+ };
+
+ document.addEventListener('webkitfullscreenchange', fullscreenChangeEvent);
+ document.addEventListener('keydown', function () {
+ fullscreen.webkitRequestFullScreen();
+
+ });
+ if (window.eventSender)
+ eventSender.keyDown('a');
+ }
+ if ("webkitRequestFullScreen" in Element.prototype)
+ window.addEventListener("load", doTest, false);
+</script>
+<body>
+ <!-- when full screening the iframe, bad should not be visible -->
+ <div id="fixed-container">
+ <iframe id="fullscreenme" src=""
+ </div>
+ <div id="bad"></div>
+</body>
+</html>
Added: trunk/LayoutTests/fullscreen/resources/green.html (0 => 128514)
--- trunk/LayoutTests/fullscreen/resources/green.html (rev 0)
+++ trunk/LayoutTests/fullscreen/resources/green.html 2012-09-13 22:32:28 UTC (rev 128514)
@@ -0,0 +1,8 @@
+<html>
+ <style>
+ body {
+ background-color: green;
+ }
+ </style>
+ <body></body>
+</html>
Modified: trunk/Source/WebCore/ChangeLog (128513 => 128514)
--- trunk/Source/WebCore/ChangeLog 2012-09-13 22:19:43 UTC (rev 128513)
+++ trunk/Source/WebCore/ChangeLog 2012-09-13 22:32:28 UTC (rev 128514)
@@ -1,3 +1,20 @@
+2012-09-13 Adrienne Walker <[email protected]>
+
+ Hide all ancestors of the full screen element when going full screen
+ https://bugs.webkit.org/show_bug.cgi?id=96332
+
+ Reviewed by James Robinson.
+
+ Since fixed position elements can now sometimes become stacking
+ contexts, explicitly set position: static on full-screen ancestors so
+ that there are no stacking context ancestors that could cause the full
+ screen element to become incorrectly sorted.
+
+ Test: fullscreen/full-screen-fixed-pos-parent.html
+
+ * css/fullscreen.css:
+ (:-webkit-full-screen-ancestor:not(iframe)):
+
2012-09-13 Adam Barth <[email protected]>
REGRESSION(r125126): It made fast/events/keyevent-iframe-removed-crash.html assert
Modified: trunk/Source/WebCore/css/fullscreen.css (128513 => 128514)
--- trunk/Source/WebCore/css/fullscreen.css 2012-09-13 22:19:43 UTC (rev 128513)
+++ trunk/Source/WebCore/css/fullscreen.css 2012-09-13 22:32:28 UTC (rev 128514)
@@ -9,6 +9,7 @@
:-webkit-full-screen-ancestor:not(iframe) {
z-index: auto !important;
+ position: static !important;
opacity: 1 !important;
-webkit-transform: none !important;
-webkit-mask: none !important;
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes