[webkit-changes] [WebKit/WebKit] 4c635a: [CoordinatedGraphics] Remove unnecessary dirty rec...

Jani Hautakangas noreply at github.com
Wed Nov 22 01:49:42 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4c635a96d4412376b09964bf3e8c540603ad3354
      https://github.com/WebKit/WebKit/commit/4c635a96d4412376b09964bf3e8c540603ad3354
  Author: Jani Hautakangas <jani at igalia.com>
  Date:   2023-11-22 (Wed, 22 Nov 2023)

  Changed paths:
    M Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp
    M Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h

  Log Message:
  -----------
  [CoordinatedGraphics] Remove unnecessary dirty rect merges in CoordinatedGraphicsLayer
https://bugs.webkit.org/show_bug.cgi?id=265199

Reviewed by Carlos Garcia Campos.

CoordinatedGraphicsLayer holds list of dirty rects up to 32 entries.
If there are more dirty markings in between layer commits then rects exceeding
32 entry limit are unified and merged into list entry index 0. In the worst
case this leads to unnecessary invalidation of whole layer. There's already
dirty rect tracking per tile where dirty rects get unified and merged within
tile. Thus this unification and merge is unnecessary in
CoordinatedGraphicsLayer.

* Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::setNeedsDisplayInRect):
* Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:

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




More information about the webkit-changes mailing list