Index: Source/core/rendering/RenderLayerBacking.cpp |
diff --git a/Source/core/rendering/RenderLayerBacking.cpp b/Source/core/rendering/RenderLayerBacking.cpp |
index 938cf70beb81d0779674b2ebd2e68fca14c16284..def326bdcc13fd8600d3d32b2c33b048aeb3f09a 100644 |
--- a/Source/core/rendering/RenderLayerBacking.cpp |
+++ b/Source/core/rendering/RenderLayerBacking.cpp |
@@ -512,7 +512,15 @@ void RenderLayerBacking::updateGraphicsLayerGeometry() |
// m_graphicsLayer is the corresponding GraphicsLayer for this RenderLayer and its non-compositing |
// descendants. So, the visibility flag for m_graphicsLayer should be true if there are any |
// non-compositing visible layers. |
- m_graphicsLayer->setContentsVisible(m_owningLayer->hasVisibleContent() || hasVisibleNonCompositingDescendantLayers()); |
+ bool contentsVisible = m_owningLayer->hasVisibleContent() || hasVisibleNonCompositingDescendantLayers(); |
+#if USE(NATIVE_FULLSCREEN_VIDEO) |
+ if (renderer()->isVideo()) { |
+ HTMLMediaElement* mediaElement = toMediaElement(renderer()->node()); |
+ if (mediaElement->isFullscreen()) |
+ contentsVisible = false; |
+ } |
+#endif |
+ m_graphicsLayer->setContentsVisible(contentsVisible); |
RenderStyle* style = renderer()->style(); |
// FIXME: reflections should force transform-style to be flat in the style: https://bugs.webkit.org/show_bug.cgi?id=106959 |