[webkit-changes] [WebKit/WebKit] b91561: [content-visibility] Sync visibility bits in Rende...

Rob Buis noreply at github.com
Fri Sep 1 02:12:44 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b9156186f52f48059654cca9eb179ce656cd86db
      https://github.com/WebKit/WebKit/commit/b9156186f52f48059654cca9eb179ce656cd86db
  Author: Rob Buis <rbuis at igalia.com>
  Date:   2023-09-01 (Fri, 01 Sep 2023)

  Changed paths:
    M LayoutTests/TestExpectations
    M Source/WebCore/rendering/RenderElement.cpp
    M Source/WebCore/rendering/RenderLayer.cpp
    M Source/WebCore/rendering/RenderLayerBacking.cpp
    M Source/WebCore/rendering/RenderLayerCompositor.cpp

  Log Message:
  -----------
  [content-visibility] Sync visibility bits in RenderLayer with content skipping
https://bugs.webkit.org/show_bug.cgi?id=251614

Reviewed by Simon Fraser.

Sync visibility bits in RenderLayer with content skipping by making sure
skipped content layers have m_hasVisibleContent and m_hasVisibleDescendant
set to false, and have m_hasVisibleDescendant set to false for layers
created by content-visibility: hidden (layer here is forced because of the
implicitly enabled layout containment).

This enables any hidden layer optimizations to apply to skipped content.

This change also removes some unneeded changes from r256186
and fixes the content-visibility-video.html WPT test.

* LayoutTests/TestExpectations:
* Source/WebCore/rendering/RenderLayer.cpp:
(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::updateDescendantDependentFlags):
(WebCore::RenderLayer::computeHasVisibleContent const):
(WebCore::RenderLayer::paintList): undo old change
(WebCore::RenderLayer::calculateClipRects const):
* Source/WebCore/rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateAfterDescendants): undo old change
* Source/WebCore/rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::canBeComposited const):

Canonical link: https://commits.webkit.org/267547@main




More information about the webkit-changes mailing list