Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: d19192443a84fc6e6c00383118c8af3e16f78c8a
      
https://github.com/WebKit/WebKit/commit/d19192443a84fc6e6c00383118c8af3e16f78c8a
  Author: Nikolaos Mouchtaris <nmouchta...@apple.com>
  Date:   2023-05-15 (Mon, 15 May 2023)

  Changed paths:
    M Source/WebCore/platform/ScrollableArea.cpp
    M Source/WebCore/platform/ScrollbarsController.h
    M 
Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollbarsController.h
    M 
Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollbarsController.mm

  Log Message:
  -----------
  [UI-side compositing] Eliminate unnecessary invalidate of scrollbar layers 
when scrolling
https://bugs.webkit.org/show_bug.cgi?id=256624
rdar://109184266

Reviewed by Simon Fraser.

For UI-side compositing, we only paint into scrollbar layers in the WebProcess 
for
custom scrollbars. To reflect this, add 
RemoteScrollbarsController::shouldDrawIntoScrollbarLayer
and check before invalidating the scrollbar layers, to prevent unnecessary 
calls into
GraphicsLayerCA::platformCALayerPaintContents when we aren't actually going to 
paint anything.

* Source/WebCore/platform/ScrollableArea.cpp:
(WebCore::ScrollableArea::invalidateScrollbar):
* Source/WebCore/platform/ScrollbarsController.h:
(WebCore::ScrollbarsController::shouldDrawIntoScrollbarLayer const):
* Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollbarsController.h:
* 
Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteScrollbarsController.mm:
(WebKit::RemoteScrollbarsController::shouldDrawIntoScrollbarLayer const):

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


_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to