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

Unified Diff: third_party/WebKit/Source/platform/graphics/paint/README.md

Issue 2330863003: Switch to null root property tree nodes [spv2] (Closed)
Patch Set: Rebase from space Created 4 years, 3 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/platform/graphics/paint/README.md
diff --git a/third_party/WebKit/Source/platform/graphics/paint/README.md b/third_party/WebKit/Source/platform/graphics/paint/README.md
index a2db6dbc2b1ebff2b45e4c571b304d65c5484747..b3f04b04c26c681d7f66ebbef27bde90302156aa 100644
--- a/third_party/WebKit/Source/platform/graphics/paint/README.md
+++ b/third_party/WebKit/Source/platform/graphics/paint/README.md
@@ -31,9 +31,17 @@ chunk is associated with a transform node, whose matrix should be multiplied by
its ancestor transform nodes in order to compute the final transformation matrix
to the screen.
-*** note
-Support for all paint properties has yet to be implemented in SPv2.
-***
+Paint properties are owned and stored by the object that creates them (see
+[ObjectPaintProperties](../../../core/paint/ObjectPaintProperties.h) and the
+paint properties on [FrameView](../../../core/frame/FrameView.h)). The complete
+set of property tree nodes used to paint a LayoutObject is cached on
+[ObjectPaintProperties](../../../core/paint/ObjectPaintProperties.h) in
+`LocalBorderBoxProperties`. There is an important distinction between the local
+border box properties and the properties owned by a layout object: a null
+property in [ObjectPaintProperties](../../../core/paint/ObjectPaintProperties.h)
+(e.g., `paintOffsetTranslation`) only implies that a specific LayoutObject
+doesn't create a property, but a null value in `LocalBorderBoxProperties`
+implies that the root property tree node should be used.
*** aside
TODO(jbroman): Explain the semantics of transforms, clips, scrolls and effects
@@ -42,7 +50,7 @@ as support for them is added to SPv2.
### Transforms
-Each paint chunk is associated with a [transform node](TransformPaintPropertyNode.h),
+Paint chunks can be associated with a [transform node](TransformPaintPropertyNode.h)
which defines the coordinate space in which the content should be painted.
Each transform node has:
@@ -80,7 +88,7 @@ imply any 3D sorting.
### Clips
-Each paint chunk is associated with a [clip node](ClipPaintPropertyNode.h),
+Paint chunks can be associated with a [clip node](ClipPaintPropertyNode.h)
which defines the raster region that will be applied on the canvas when
the chunk is rastered.
@@ -95,7 +103,7 @@ root space, intersects with the raster region defined by its parent clip node
### Scrolling
-Each paint chunk is associated with a [scroll node](ScrollPaintPropertyNode.h)
+Paint chunks can be associated with a [scroll node](ScrollPaintPropertyNode.h)
which defines information about how a subtree scrolls so threads other than the
main thread can perform scrolling. Scroll information includes:
@@ -111,7 +119,7 @@ scroll offset is stored as a 2d transform in the transform tree.
### Effects
-Each paint chunk is associated with an [effect node](EffectPaintPropertyNode.h),
+Paint chunks can be associated with an [effect node](EffectPaintPropertyNode.h)
which defines the effect (opacity, transfer mode, filter, mask, etc.) that
should be applied to the content before or as it is composited into the content
below.

Powered by Google App Engine
This is Rietveld 408576698