Branch: refs/heads/webkitglib/2.54
  Home:   https://github.com/WebKit/WebKit
  Commit: 6b7bdba8dcad4a433821c72854115293640ef833
      
https://github.com/WebKit/WebKit/commit/6b7bdba8dcad4a433821c72854115293640ef833
  Author: Carlos Garcia Campos <[email protected]>
  Date:   2026-08-06 (Thu, 06 Aug 2026)

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

  Log Message:
  -----------
  Cherry-pick 318313@main (715e92812255). 
https://bugs.webkit.org/show_bug.cgi?id=320738

    [CoordinatedGraphics] Remove unused m_transformedVisibleRect from 
CoordinatedPlatformLayer
    https://bugs.webkit.org/show_bug.cgi?id=320738

    Reviewed by Fujii Hironori.

    Only the one including future is used, so we can keep that one as just
    m_transformedVisibleRect. We can also simplify GraphicsLayerCoordinated,
    m_layerTransform.cachedCombined is only used inside 
computeLayerTransformIfNeeded()
    so it can be a local variable.

    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayer.cpp:
    (WebCore::CoordinatedPlatformLayer::setTransformedVisibleRect):
    (WebCore::CoordinatedPlatformLayer::updateBackingStore):
    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayer.h:
    * 
Source/WebCore/platform/graphics/texmap/coordinated/GraphicsLayerCoordinated.cpp:
    (WebCore::GraphicsLayerCoordinated::computeLayerTransformIfNeeded):
    (WebCore::GraphicsLayerCoordinated::updateVisibleRect):
    * 
Source/WebCore/platform/graphics/texmap/coordinated/GraphicsLayerCoordinated.h:

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

Canonical link: https://commits.webkit.org/317695.56@webkitglib/2.54


  Commit: 19d7d8d68f6896e449ccba943a58045d89a061bb
      
https://github.com/WebKit/WebKit/commit/19d7d8d68f6896e449ccba943a58045d89a061bb
  Author: Carlos Garcia Campos <[email protected]>
  Date:   2026-08-06 (Thu, 06 Aug 2026)

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

  Log Message:
  -----------
  Cherry-pick 318445@main (68b163ff10b4). 
https://bugs.webkit.org/show_bug.cgi?id=320890

    [GTK][WPE] Skia compositor: 
CoordinatedPlatformLayer::hasCommittedContentsBuffer() uses m_skiaTarget and 
can be called from different threads
    https://bugs.webkit.org/show_bug.cgi?id=320890

    Reviewed by Nikolas Zimmermann.

    In CoordinatedPlatformLayer m_skiaTarget is not pretected by any lock
    because it's only expected to be used from the compositing thread, but
    it's used from hasCommittedContentsBuffer() that can be called from gst
    threads. Add a bool flag protected by m_lock to note when the layer has
    a committed contents buffer and use it instead of 
hasCommittedContentsBuffer().

    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayer.cpp:
    (WebCore::CoordinatedPlatformLayer::invalidateTarget):
    (WebCore::CoordinatedPlatformLayer::setContentsBuffer):
    (WebCore::CoordinatedPlatformLayer::replaceCurrentContentsBufferWithCopy):
    (WebCore::CoordinatedPlatformLayer::flushCompositingStateOnTarget):
    (WebCore::CoordinatedPlatformLayer::flushCompositingStateOnSkiaTarget):
    (WebCore::CoordinatedPlatformLayer::hasCommittedContentsBuffer const): 
Deleted.
    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayer.h:

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

Canonical link: https://commits.webkit.org/317695.57@webkitglib/2.54


  Commit: 2be3288c8fb977ce910a6ebfd0d00e1afe34679f
      
https://github.com/WebKit/WebKit/commit/2be3288c8fb977ce910a6ebfd0d00e1afe34679f
  Author: Carlos Garcia Campos <[email protected]>
  Date:   2026-08-06 (Thu, 06 Aug 2026)

  Changed paths:
    M Source/WebCore/platform/graphics/skia/SkiaCompositingLayer.cpp
    M Source/WebCore/platform/graphics/skia/SkiaCompositingLayer.h
    M 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayer.cpp

  Log Message:
  -----------
  Cherry-pick 318449@main (fbc68d0f05e7). 
https://bugs.webkit.org/show_bug.cgi?id=320888

    [GTK][WPE] Skia compositor: do not early release hole punch buffers on 
layer invalidation
    https://bugs.webkit.org/show_bug.cgi?id=320888

    Reviewed by Nikolas Zimmermann.

    We only do it for texture mapper. With skia compositor the committed
    buffer is owned by SkiaCompositingLayer that is also going to be
    destroyed on invalidate, so we need to transfer the ownership of the
    hole punch buffer to CoordinatedPlatformLayer.

    * Source/WebCore/platform/graphics/skia/SkiaCompositingLayer.h:
    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayer.cpp:
    (WebCore::CoordinatedPlatformLayer::invalidateTarget):
    (WebCore::shouldReleaseBuffer):
    * Source/WebCore/platform/graphics/skia/SkiaCompositingLayer.cpp:
    (WebCore::SkiaCompositingLayer::takeContentsBuffer):

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

Canonical link: https://commits.webkit.org/317695.58@webkitglib/2.54


  Commit: 21049455a19f1434599996a30c37e528eb4d1f73
      
https://github.com/WebKit/WebKit/commit/21049455a19f1434599996a30c37e528eb4d1f73
  Author: Carlos Garcia Campos <[email protected]>
  Date:   2026-08-06 (Thu, 06 Aug 2026)

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

  Log Message:
  -----------
  Cherry-pick 318455@main (4b1174b93a43). 
https://bugs.webkit.org/show_bug.cgi?id=320902

    [CoordinatedGraphics] Remove the lock requirement for 
CoordinatedPlatformLayer members that are only accessed from the main thread
    https://bugs.webkit.org/show_bug.cgi?id=320902

    Reviewed by Nikolas Zimmermann.

    Replace the lock requirement by main thread requirement. Also remove the
    visibleRect() getter, since it's only ued by 
CoordinatedBackingStoreProxy::updateIfNeeded()
    and we can just pass the unscaled viewport size instead.

    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedBackingStoreProxy.cpp:
    (WebCore::CoordinatedBackingStoreProxy::updateIfNeeded):
    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedBackingStoreProxy.h:
    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayer.cpp:
    (WebCore::CoordinatedPlatformLayer::setOwner):
    (WebCore::CoordinatedPlatformLayer::owner const):
    (WebCore::CoordinatedPlatformLayer::didUpdateLayerTransform):
    (WebCore::CoordinatedPlatformLayer::setVisibleRect):
    (WebCore::CoordinatedPlatformLayer::setTransformedVisibleRect):
    (WebCore::CoordinatedPlatformLayer::setContentsScale):
    (WebCore::CoordinatedPlatformLayer::setDirtyRegion):
    (WebCore::CoordinatedPlatformLayer::setShowRepaintCounter):
    (WebCore::CoordinatedPlatformLayer::updateBackingStore):
    (WebCore::CoordinatedPlatformLayer::updateContents):
    (WebCore::CoordinatedPlatformLayer::paint):
    (WebCore::CoordinatedPlatformLayer::record):
    (WebCore::CoordinatedPlatformLayer::replay):
    (WebCore::CoordinatedPlatformLayer::visibleRect const): Deleted.
    (WebCore::CoordinatedPlatformLayer::setDrawsContent):
    (WebCore::CoordinatedPlatformLayer::needsBackingStore const):
    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayer.h:
    (WebCore::CoordinatedPlatformLayer::WTF_GUARDED_BY_CAPABILITY):
    (WebCore::CoordinatedPlatformLayer::hasPendingTilesCreation const):

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

Canonical link: https://commits.webkit.org/317695.59@webkitglib/2.54


  Commit: bd4f9a352ba2bfcf7a9d399e00304ff549199710
      
https://github.com/WebKit/WebKit/commit/bd4f9a352ba2bfcf7a9d399e00304ff549199710
  Author: Carlos Garcia Campos <[email protected]>
  Date:   2026-08-06 (Thu, 06 Aug 2026)

  Changed paths:
    M 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedAnimatedBackingStoreClient.cpp
    M 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedAnimatedBackingStoreClient.h
    M 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedBackingStoreProxy.cpp
    M 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedBackingStoreProxy.h
    M 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayer.cpp
    M 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayer.h

  Log Message:
  -----------
  Cherry-pick 318535@main (0f25453ee003). 
https://bugs.webkit.org/show_bug.cgi?id=320970

    [CoordinatedGraphics] Move CoordinatedAnimatedBackingStoreClient ownership 
to CoordinatedBackingStoreProxy
    https://bugs.webkit.org/show_bug.cgi?id=320970

    Reviewed by Nikolas Zimmermann.

    A CoordinatedAnimatedBackingStoreClient can only exist when the layer
    has a CoordinatedBackingStoreProxy, and the client is updated with the
    cover rect computed by CoordinatedBackingStoreProxy so it's simpler to
    make CoordinatedBackingStoreProxy own the 
CoordinatedAnimatedBackingStoreClient.

    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedAnimatedBackingStoreClient.cpp:
    (WebCore::CoordinatedAnimatedBackingStoreClient::create):
    (WebCore::CoordinatedAnimatedBackingStoreClient::update):
    
(WebCore::CoordinatedAnimatedBackingStoreClient::CoordinatedAnimatedBackingStoreClient):
 Deleted.
    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedAnimatedBackingStoreClient.h:
    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedBackingStoreProxy.cpp:
    (WebCore::CoordinatedBackingStoreProxy::~CoordinatedBackingStoreProxy):
    (WebCore::CoordinatedBackingStoreProxy::invalidate):
    (WebCore::CoordinatedBackingStoreProxy::setAffectedByTransformAnimation):
    (WebCore::CoordinatedBackingStoreProxy::updateIfNeeded):
    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedBackingStoreProxy.h:
    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayer.cpp:
    (WebCore::CoordinatedPlatformLayer::updateBackingStore):
    (WebCore::CoordinatedPlatformLayer::updateContents):
    (WebCore::CoordinatedPlatformLayer::purgeBackingStores):
    (WebCore::CoordinatedPlatformLayer::flushCompositingStateOnTarget):
    (WebCore::CoordinatedPlatformLayer::flushCompositingStateOnSkiaTarget):
    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayer.h:

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

Canonical link: https://commits.webkit.org/317695.60@webkitglib/2.54


  Commit: 5bb8bea61297a3f8863989b5305584a991e023a9
      
https://github.com/WebKit/WebKit/commit/5bb8bea61297a3f8863989b5305584a991e023a9
  Author: Carlos Garcia Campos <[email protected]>
  Date:   2026-08-06 (Thu, 06 Aug 2026)

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

  Log Message:
  -----------
  Cherry-pick 318554@main (0fd8ffebbc04). 
https://bugs.webkit.org/show_bug.cgi?id=320978

    [CoordinatedGraphics] Release the CoordinatedPlatformLayer lock while 
recording and replaying tiles
    https://bugs.webkit.org/show_bug.cgi?id=320978

    Reviewed by Nikolas Zimmermann.

    Recording can take a while, if the scrolling thread needs to access the
    layer while being recorded it has to wait for something that doesn't
    change the layer state. We can copy the values we need to pass to
    CoordinatedBackingStoreProxy::updateIfNeeded() and release the log
    before calling it. This patch also moves the painting code back to
    CoordinatedBackingStoreProxy since nowadays the implementation of record
    and replay is just a single line on code and we avoid passing values
    from layer to proxy and then back from proxy to layer.

    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedBackingStoreProxy.cpp:
    (WebCore::CoordinatedBackingStoreProxy::updateIfNeeded):
    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedBackingStoreProxy.h:
    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayer.cpp:
    (WebCore::CoordinatedPlatformLayer::updateBackingStore):
    (WebCore::CoordinatedPlatformLayer::threadSafeGrContext const):
    (WebCore::CoordinatedPlatformLayer::paint): Deleted.
    (WebCore::CoordinatedPlatformLayer::record): Deleted.
    (WebCore::CoordinatedPlatformLayer::replay): Deleted.
    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayer.h:

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

Canonical link: https://commits.webkit.org/317695.61@webkitglib/2.54


  Commit: 580595538d7f06a8c2a189d82bfb59f9c6ad374d
      
https://github.com/WebKit/WebKit/commit/580595538d7f06a8c2a189d82bfb59f9c6ad374d
  Author: Carlos Garcia Campos <[email protected]>
  Date:   2026-08-06 (Thu, 06 Aug 2026)

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

  Log Message:
  -----------
  Cherry-pick 318589@main (f959dc4080ec). 
https://bugs.webkit.org/show_bug.cgi?id=320990

Unreviewed cherry-pick.

    [CoordinatedGraphics] CoordinatedAnimatedBackingStoreClient is not thread 
safe
    https://bugs.webkit.org/show_bug.cgi?id=320990

    Reviewed by Nikolas Zimmermann.

    Its members are written from the main thread in update() and read from
    the compositing thread in requestBackingStoreUpdateIfNeeded() without
    locking.

    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedAnimatedBackingStoreClient.cpp:
    (WebCore::CoordinatedAnimatedBackingStoreClient::invalidate):
    (WebCore::CoordinatedAnimatedBackingStoreClient::update):
    
(WebCore::CoordinatedAnimatedBackingStoreClient::requestBackingStoreUpdateIfNeeded
 const):
    
(WebCore::CoordinatedAnimatedBackingStoreClient::requestBackingStoreUpdateIfNeeded):
 Deleted.
    * 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedAnimatedBackingStoreClient.h:

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

Canonical link: https://commits.webkit.org/317695.62@webkitglib/2.54


Compare: https://github.com/WebKit/WebKit/compare/e7212d862f08...580595538d7f

To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to