Commit 86f41e76 authored by wangxianzhu's avatar wangxianzhu Committed by Commit bot

Enable under-invalidation checking in tests calling runAfterLayoutAndPaint()

These tests often change dom/style after a complete paint and test how
the rendering pipeline handles the changes. They are good candidate
for under-invalidation checking.

BUG=619103

Review-Url: https://codereview.chromium.org/2092953002
Cr-Commit-Position: refs/heads/master@{#403355}
parent f468675e
......@@ -1138,6 +1138,11 @@ crbug.com/619103 paint/invalidation/animated-gif.html [ Pass Failure ]
crbug.com/619103 paint/invalidation/animated-gif-background.html [ Pass Failure ]
crbug.com/619103 paint/invalidation/animated-gif-background-offscreen.html [ Pass Failure ]
crbug.com/619103 [ Win ] svg/text/text-viewbox-rescale.html [ Pass Failure ]
crbug.com/619103 paint/overflow/interest-rect-change-scroll-down.html [ Failure ]
crbug.com/619103 paint/selection/text-selection-newline-mixed-ltr-rtl.html [ Failure ]
crbug.com/619103 paint/selection/text-selection-newline-rtl-double-linebreak.html [ Failure ]
crbug.com/619103 virtual/rootlayerscrolls/fast/scrolling/background-paint-scrolled-out-and-in.html [ Crash Timeout ]
crbug.com/619103 virtual/rootlayerscrolls/fast/scrolling/background-paint-scrolled.html [ Crash Timeout ]
crbug.com/443596 media/sources-fallback-codecs.html [ Pass Failure ]
......
......@@ -21,6 +21,15 @@
// ... // some code which modifies style/layout
// }, true);
if (window.internals) {
// TODO(wangxianzhu): Some spv2 tests crash with under-invalidation-checking
// because the extra display items between Subsequence/EndSubsequence for
// under-invalidation checking breaks paint chunks. Should fix this when fixing
// crbug.com/596983.
if (!internals.runtimeFlags.slimmingPaintV2Enabled)
internals.runtimeFlags.slimmingPaintUnderInvalidationCheckingEnabled = true;
}
function runAfterLayoutAndPaint(callback, autoNotifyDone) {
if (!window.testRunner) {
// For manual test. Delay 500ms to allow us to see the visual change
......
......@@ -598,8 +598,11 @@ void GraphicsLayer::trackPaintInvalidation(const DisplayItemClient& client, cons
return;
PaintInvalidationTracking& tracking = paintInvalidationTrackingMap().add(this, PaintInvalidationTracking()).storedValue->value;
PaintInvalidationInfo info = { &client, client.debugName(), rect, reason };
tracking.trackedPaintInvalidations.append(info);
if (m_isTrackingPaintInvalidations) {
PaintInvalidationInfo info = { &client, client.debugName(), rect, reason };
tracking.trackedPaintInvalidations.append(info);
}
#if DCHECK_IS_ON()
if (RuntimeEnabledFeatures::slimmingPaintUnderInvalidationCheckingEnabled()) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment