Index: third_party/WebKit/Source/core/paint/PaintInvalidationCapableScrollableArea.cpp |
diff --git a/third_party/WebKit/Source/core/paint/PaintInvalidationCapableScrollableArea.cpp b/third_party/WebKit/Source/core/paint/PaintInvalidationCapableScrollableArea.cpp |
index 6e7506549b9a0a030e35bc4fb50a72fe05005ae9..c204c43bb647b78868f63e69646eca333684cba2 100644 |
--- a/third_party/WebKit/Source/core/paint/PaintInvalidationCapableScrollableArea.cpp |
+++ b/third_party/WebKit/Source/core/paint/PaintInvalidationCapableScrollableArea.cpp |
@@ -28,7 +28,9 @@ void PaintInvalidationCapableScrollableArea::willRemoveScrollbar(Scrollbar& scro |
static LayoutRect scrollControlPaintInvalidationRect(const IntRect& scrollControlRect, const LayoutBox& box, const PaintInvalidatorContext& context) |
{ |
LayoutRect paintInvalidationRect(scrollControlRect); |
- if (!paintInvalidationRect.isEmpty()) |
+ // No need to apply any paint offset. Scroll controls paint in a different transform space than their contained box |
+ // (the scrollbarPaintOffset transform node). |
+ if (!paintInvalidationRect.isEmpty() && !RuntimeEnabledFeatures::slimmingPaintV2Enabled()) |
context.mapLocalRectToPaintInvalidationBacking(box, paintInvalidationRect); |
return paintInvalidationRect; |
} |