Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(480)

Unified Diff: third_party/WebKit/Source/core/paint/LayerClipRecorder.h

Issue 2923683002: Fix nested border radius with composited child. (Closed)
Patch Set: Split tests, check layer sizes, document Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/paint/LayerClipRecorder.h
diff --git a/third_party/WebKit/Source/core/paint/LayerClipRecorder.h b/third_party/WebKit/Source/core/paint/LayerClipRecorder.h
index 017940eaa1d33a03cbb01fcf782e97688c83070f..0a435ed3d95e4274f1175b5ac26553b974fe25f0 100644
--- a/third_party/WebKit/Source/core/paint/LayerClipRecorder.h
+++ b/third_party/WebKit/Source/core/paint/LayerClipRecorder.h
@@ -53,15 +53,25 @@ class CORE_EXPORT LayerClipRecorder {
~LayerClipRecorder();
- private:
- void CollectRoundedRectClips(PaintLayer&,
- const PaintLayer* clip_root,
- GraphicsContext&,
- const LayoutPoint& fragment_offset,
- PaintLayerFlags,
- BorderRadiusClippingRule,
- Vector<FloatRoundedRect>& rounded_rect_clips);
+ // Build a vector of the border radius clips that should be applied to
+ // the given PaintLayer, walking up the paint layer tree to the clip_root.
+ // The offset_within_layer is an offset to apply to the clip to position it
+ // in the required clipping coordinates (for cases when the painting
+ // coordinate system is offset from the layer coordinate system).
+ // cross_composited_scrollers should be true when the search for clips should
+ // continue even if the clipping layer is painting into a composited scrolling
+ // layer, as when painting a mask for a child of the scroller.
+ // The BorderRadiusClippingRule defines whether clips on the PaintLayer itself
+ // are included. Output is appended to rounded_rect_clips.
+ static void CollectRoundedRectClips(
+ PaintLayer&,
+ const PaintLayer* clip_root,
+ const LayoutPoint& offset_within_layer,
+ bool cross_composited_scrollers,
+ BorderRadiusClippingRule,
+ Vector<FloatRoundedRect>& rounded_rect_clips);
+ private:
GraphicsContext& graphics_context_;
const LayoutBoxModelObject& layout_object_;
DisplayItem::Type clip_type_;

Powered by Google App Engine
This is Rietveld 408576698