Index: Source/core/rendering/compositing/CompositingReasonFinder.cpp |
diff --git a/Source/core/rendering/compositing/CompositingReasonFinder.cpp b/Source/core/rendering/compositing/CompositingReasonFinder.cpp |
index 7755f81b988691a05226110fc5a4350d0a0cd76d..a65ae9056e53ac1b3842a3553ee70e436c62d7c9 100644 |
--- a/Source/core/rendering/compositing/CompositingReasonFinder.cpp |
+++ b/Source/core/rendering/compositing/CompositingReasonFinder.cpp |
@@ -263,7 +263,15 @@ bool CompositingReasonFinder::requiresCompositingForOutOfFlowClipping(const Rend |
bool CompositingReasonFinder::requiresCompositingForWillChange(const RenderObject* renderer) const |
{ |
- return renderer->style()->hasWillChangeCompositingHint(); |
+ if (renderer->style()->hasWillChangeCompositingHint()) |
+ return true; |
+ |
+ if (Settings* settings = m_renderView.document().settings()) { |
+ if (!settings->acceleratedCompositingForGpuRasterizationHintEnabled()) |
+ return false; |
+ } |
+ |
+ return renderer->style()->hasWillChangeGpuRasterizationHint(); |
} |
bool CompositingReasonFinder::isViewportConstrainedFixedOrStickyLayer(const RenderLayer* layer) |