[webkit-changes] [WebKit/WebKit] 3a63df: Update RenderLayerBacking to store backingSharingL...

Chris Dumez noreply at github.com
Tue Sep 12 12:22:25 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3a63df5050587ec8333b679463f25df7fef4b26d
      https://github.com/WebKit/WebKit/commit/3a63df5050587ec8333b679463f25df7fef4b26d
  Author: Chris Dumez <cdumez at apple.com>
  Date:   2023-09-12 (Tue, 12 Sep 2023)

  Changed paths:
    M Source/WebCore/rendering/RenderLayer.cpp
    M Source/WebCore/rendering/RenderLayerBacking.cpp
    M Source/WebCore/rendering/RenderLayerBacking.h
    M Source/WebCore/rendering/RenderLayerCompositor.cpp

  Log Message:
  -----------
  Update RenderLayerBacking to store backingSharingLayers in a WeakListHashSet
https://bugs.webkit.org/show_bug.cgi?id=261449

Reviewed by Simon Fraser.

Update RenderLayerBacking to store backingSharingLayers in a `WeakListHashSet<RenderLayer>`
instead of a Vector<WeakPtr<RenderLayer>>. This is beneficial to performance as we keep
doing linear searches in the vector otherwise.

* Source/WebCore/rendering/RenderLayer.cpp:
(WebCore::RenderLayer::~RenderLayer):
* Source/WebCore/rendering/RenderLayerBacking.cpp:
(WebCore::clearBackingSharingLayerProviders):
(WebCore::RenderLayerBacking::setBackingSharingLayers):
(WebCore::RenderLayerBacking::removeBackingSharingLayer):
(WebCore::RenderLayerBacking::updateCompositedBounds):
(WebCore::RenderLayerBacking::paintIntoLayer):
* Source/WebCore/rendering/RenderLayerBacking.h:
* Source/WebCore/rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::BackingSharingState::endBackingSharingSequence):

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




More information about the webkit-changes mailing list