| OLD | NEW |
| 1 # Platform paint code | 1 # Platform paint code |
| 2 | 2 |
| 3 This directory contains the implementation of display lists and display | 3 This directory contains the implementation of display lists and display |
| 4 list-based painting, except for code which requires knowledge of `core/` | 4 list-based painting, except for code which requires knowledge of `core/` |
| 5 concepts, such as DOM elements and layout objects. | 5 concepts, such as DOM elements and layout objects. |
| 6 | 6 |
| 7 This code is owned by the [paint team][paint-team-site]. | 7 This code is owned by the [paint team][paint-team-site]. |
| 8 | 8 |
| 9 Slimming Paint v2 is currently being implemented. Unlike Slimming Paint v1, SPv2 | 9 Slimming Paint v2 is currently being implemented. Unlike Slimming Paint v1, SPv2 |
| 10 represents its paint artifact not as a flat display list, but as a list of | 10 represents its paint artifact not as a flat display list, but as a list of |
| (...skipping 241 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 252 consuming the `PaintArtifact` produced by the `PaintController`, and converting | 252 consuming the `PaintArtifact` produced by the `PaintController`, and converting |
| 253 it into a form suitable for the compositor to consume. | 253 it into a form suitable for the compositor to consume. |
| 254 | 254 |
| 255 At present, `PaintArtifactCompositor` creates a cc layer tree, with one layer | 255 At present, `PaintArtifactCompositor` creates a cc layer tree, with one layer |
| 256 for each paint chunk. In the future, it is expected that we will use heuristics | 256 for each paint chunk. In the future, it is expected that we will use heuristics |
| 257 to combine paint chunks into a smaller number of layers. | 257 to combine paint chunks into a smaller number of layers. |
| 258 | 258 |
| 259 The owner of the `PaintArtifactCompositor` (e.g. `WebView`) can then attach its | 259 The owner of the `PaintArtifactCompositor` (e.g. `WebView`) can then attach its |
| 260 root layer to the overall layer hierarchy to be displayed to the user. | 260 root layer to the overall layer hierarchy to be displayed to the user. |
| 261 | 261 |
| 262 In the future we would like to explore moving to a single shared property tree |
| 263 representation across both cc and |
| 264 Blink. See [Web Page Geometries](https://goo.gl/MwVIto) for more. |
| 265 |
| 262 ## Geometry routines | 266 ## Geometry routines |
| 263 | 267 |
| 264 The [`GeometryMapper`](GeometryMapper.h) is responsible for efficiently computin
g | 268 The [`GeometryMapper`](GeometryMapper.h) is responsible for efficiently computin
g |
| 265 visual and transformed rects of display items in the coordinate space of ancesto
r | 269 visual and transformed rects of display items in the coordinate space of ancesto
r |
| 266 [`PropertyTreeState`](PropertyTreeState.h)s. | 270 [`PropertyTreeState`](PropertyTreeState.h)s. |
| 267 | 271 |
| 268 The transformed rect of a display item in an ancestor `PropertyTreeState` is | 272 The transformed rect of a display item in an ancestor `PropertyTreeState` is |
| 269 that rect, multiplied by the transforms between the display item's | 273 that rect, multiplied by the transforms between the display item's |
| 270 `PropertyTreeState` and the ancestors, then flattened into 2D. | 274 `PropertyTreeState` and the ancestors, then flattened into 2D. |
| 271 | 275 |
| 272 The visual rect of a display item in an ancestor `PropertyTreeState` is the | 276 The visual rect of a display item in an ancestor `PropertyTreeState` is the |
| 273 intersection of all of the intermediate clips (transformed in to the ancestor | 277 intersection of all of the intermediate clips (transformed in to the ancestor |
| 274 state), with the display item's transformed rect. | 278 state), with the display item's transformed rect. |
| OLD | NEW |