Foreground of apple.com/iphone video page visible during full screen animation.
authorjer.noble@apple.com <jer.noble@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 6 Apr 2012 21:38:33 +0000 (21:38 +0000)
committerjer.noble@apple.com <jer.noble@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 6 Apr 2012 21:38:33 +0000 (21:38 +0000)
https://bugs.webkit.org/show_bug.cgi?id=83080

Reviewed by Simon Fraser.

Source/WebCore:

No new tests; updated fullscreen/full-screen-stacking-context.html

The apple.com/iphone video page uses a -webkit-mask: CSS style, which creates a stacking
context and causes the page to pop in front of the full screen renderer.  Add all the
styles suggested by the W3C full screen spec to the -webkit-full-screen-ancestor rule
to keep these stacking contexts from being created.

* css/fullscreen.css:
(:-webkit-full-screen-ancestor:not(iframe)):

LayoutTests:

* fullscreen/full-screen-stacking-context.html:
* platform/mac/fullscreen/full-screen-stacking-context-expected.png:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@113498 268f45cc-cd09-0410-ab3c-d52691b4dbfc

LayoutTests/ChangeLog
LayoutTests/fullscreen/full-screen-stacking-context.html
LayoutTests/platform/mac/fullscreen/full-screen-stacking-context-expected.png
Source/WebCore/ChangeLog
Source/WebCore/css/fullscreen.css

index 7ac1054..0152e5e 100644 (file)
@@ -1,3 +1,13 @@
+2012-04-03  Jer Noble  <jer.noble@apple.com>
+
+        Foreground of apple.com/iphone video page visible during full screen animation.
+        https://bugs.webkit.org/show_bug.cgi?id=83080
+
+        Reviewed by Simon Fraser.
+
+        * fullscreen/full-screen-stacking-context.html:
+        * platform/mac/fullscreen/full-screen-stacking-context-expected.png:
+
 2012-04-06  Tim Horton  <timothy_horton@apple.com>
 
         [cg] REGRESSION (r101517): Animating the transform of a <rect> with shape-rendering: crispEdges leaves behind garbage
index 0f75ea4..a0dd2e2 100644 (file)
                 top: 50px;
                 left: 50px;
                 z-index: 1;
+                background-color: red;
+            }
+            #one, #two {
                 opacity: 0.5;
                 -webkit-transform: rotate(180);
-                background-color: red;
+                -webkit-mask: -webkit-linear-gradient(left, alpha 0%, white 100%);
+                -webkit-filter: contrast(100%);
+                clip:rect(0px,100px,100px,0px);
+                -webkit-box-reflect: below;
+                -webkit-transform-style: preserve-3d;
+                -webkit-perspective: 300;
             }
             #zero {
                 position: relative;
index f31ecb1..f8c7db1 100644 (file)
Binary files a/LayoutTests/platform/mac/fullscreen/full-screen-stacking-context-expected.png and b/LayoutTests/platform/mac/fullscreen/full-screen-stacking-context-expected.png differ
index adedc2c..b3d7805 100644 (file)
@@ -1,3 +1,20 @@
+2012-04-03  Jer Noble  <jer.noble@apple.com>
+
+        Foreground of apple.com/iphone video page visible during full screen animation.
+        https://bugs.webkit.org/show_bug.cgi?id=83080
+
+        Reviewed by Simon Fraser.
+
+        No new tests; updated fullscreen/full-screen-stacking-context.html
+
+        The apple.com/iphone video page uses a -webkit-mask: CSS style, which creates a stacking
+        context and causes the page to pop in front of the full screen renderer.  Add all the
+        styles suggested by the W3C full screen spec to the -webkit-full-screen-ancestor rule
+        to keep these stacking contexts from being created.
+
+        * css/fullscreen.css:
+        (:-webkit-full-screen-ancestor:not(iframe)):
+
 2012-04-06  Abhishek Arya  <inferno@chromium.org>
 
         Virtualize createAnonymousBoxWithSameTypeAs.
index f4987f5..8e7c873 100644 (file)
     z-index: auto !important;
     opacity: 1 !important;
     -webkit-transform: none !important;
+    -webkit-mask: none !important;
+    clip: none !important;
+    -webkit-filter: none !important;
+    -webkit-transition: none !important;
+    -webkit-box-reflect: none !important;
+    -webkit-perspective: none !important;
+    -webkit-transform-style: flat !important;
 }
 
 video:-webkit-full-screen {