[webkit-changes] [WebKit/WebKit] 74803a: [GTK][WPE] Make it possible to verify damage rects...
Simon Pena
noreply at github.com
Mon Feb 24 06:34:44 PST 2025
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 74803a0710d915fb9d76175f7c22186f8315e54e
https://github.com/WebKit/WebKit/commit/74803a0710d915fb9d76175f7c22186f8315e54e
Author: Simon Pena <spena at igalia.com>
Date: 2025-02-24 (Mon, 24 Feb 2025)
Changed paths:
A LayoutTests/platform/glib/damage/basic-propagation-001-expected.txt
A LayoutTests/platform/glib/damage/basic-propagation-001.html
A LayoutTests/platform/glib/damage/basic-propagation-002-expected.txt
A LayoutTests/platform/glib/damage/basic-propagation-002.html
A LayoutTests/platform/glib/damage/common.css
A LayoutTests/platform/glib/damage/common.js
M Source/WebCore/page/ChromeClient.h
M Source/WebCore/platform/graphics/Damage.h
M Source/WebCore/testing/Internals.cpp
M Source/WebCore/testing/Internals.h
M Source/WebCore/testing/Internals.idl
M Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp
M Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h
M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.cpp
M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.h
A Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/FrameDamageForTesting.h
M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.h
M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/ThreadedCompositor.cpp
M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/ThreadedCompositor.h
M Source/WebKit/WebProcess/WebPage/DrawingArea.h
Log Message:
-----------
[GTK][WPE] Make it possible to verify damage rects in layout tests
https://bugs.webkit.org/show_bug.cgi?id=284951
Reviewed by Carlos Garcia Campos.
Expose damage information to JS through Internals for validation using
layout tests.
When DAMAGE_TRACKING is enabled and the Internals object is available,
frame damage information is stored and then made available through a new
FrameDamageForTesting interface. This is exposed through the
DrawingArea, and available in AC mode.
* LayoutTests/platform/glib/damage/basic-propagation-001-expected.txt: Added.
* LayoutTests/platform/glib/damage/basic-propagation-001.html: Added.
* LayoutTests/platform/glib/damage/basic-propagation-002-expected.txt: Added.
* LayoutTests/platform/glib/damage/basic-propagation-002.html: Added.
* LayoutTests/platform/glib/damage/common.css: Added.
(body):
* LayoutTests/platform/glib/damage/common.js: Added.
(failTest):
(setupTestCase):
* Source/WebCore/page/ChromeClient.h: New API to reset and get damage
history.
(WebCore::ChromeClient::resetDamageHistoryForTesting):
(WebCore::ChromeClient::damageHistoryForTesting const):
* Source/WebCore/platform/graphics/Damage.h: New wrapper to store frame
damage history.
(WebCore::FrameDamageHistory::damageInformation const):
(WebCore::FrameDamageHistory::addDamage):
* Source/WebCore/testing/Internals.cpp:
(WebCore::Internals::resetToConsistentState):
(WebCore::Internals::Internals):
(WebCore::Internals::getCurrentDamagePropagation const):
(WebCore::Internals::getFrameDamageHistory const):
* Source/WebCore/testing/Internals.h:
* Source/WebCore/testing/Internals.idl:
* Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::resetDamageHistoryForTesting):
(WebKit::WebChromeClient::damageHistoryForTesting const):
* Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h:
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.cpp:
(WebKit::DrawingAreaCoordinatedGraphics::frameDamageForTesting const):
If AC mode is not enabled, frame damage history won't be available.
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.h:
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/FrameDamageForTesting.h: Added.
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.h:
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/ThreadedCompositor.cpp:
(WebKit::ThreadedCompositor::paintToCurrentGLContext):
(WebKit::ThreadedCompositor::resetFrameDamageHistory):
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/ThreadedCompositor.h:
(WebKit::ThreadedCompositor::frameDamageHistory const):
* Source/WebKit/WebProcess/WebPage/DrawingArea.h: Allow querying frame
damage history for testing without side effects.
(WebKit::DrawingArea::frameDamageForTesting const):
Canonical link: https://commits.webkit.org/290948@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list