Index: Source/core/rendering/RenderLayerBacking.cpp |
diff --git a/Source/core/rendering/RenderLayerBacking.cpp b/Source/core/rendering/RenderLayerBacking.cpp |
index 1213a77414fd400828adc5b6f17d64980fa0a7f3..3f5958a2f263c5138d75e3f7c6134a5ce31a26a1 100644 |
--- a/Source/core/rendering/RenderLayerBacking.cpp |
+++ b/Source/core/rendering/RenderLayerBacking.cpp |
@@ -514,7 +514,13 @@ 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 (RuntimeEnabledFeatures::overlayFullscreenVideoEnabled() && renderer()->isVideo()) { |
+ HTMLMediaElement* mediaElement = toHTMLMediaElement(renderer()->node()); |
+ if (mediaElement->isFullscreen()) |
+ contentsVisible = false; |
+ } |
+ 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 |