The RecordingSource isn't directly used by the embedder but holds data received from the ContentLayerClient.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e2989c5ed9269fcdf3f62df07fdb0b898f78d5e9 commit e2989c5ed9269fcdf3f62df07fdb0b898f78d5e9 Author: mlliu <mlliu@chromium.org> Date: Mon Jul 18 20:10:13 2016 cc: Clean up DisplayItemList API The DisplayItemList holds data received from WebContentLayerImpl. It processes that data and holds the results as internal data used by cc. Separate the data received from WebContentLayerImpl from the internal data. BUG= 625290 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review-Url: https://codereview.chromium.org/2149743003 Cr-Commit-Position: refs/heads/master@{#406077} [modify] https://crrev.com/e2989c5ed9269fcdf3f62df07fdb0b898f78d5e9/cc/playback/display_item_list.cc [modify] https://crrev.com/e2989c5ed9269fcdf3f62df07fdb0b898f78d5e9/cc/playback/display_item_list.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/51126b7275df6aa885015cf4693901003358049c commit 51126b7275df6aa885015cf4693901003358049c Author: mlliu <mlliu@chromium.org> Date: Tue Aug 02 22:18:24 2016 cc: Clean up RecordingSource API Currently, the data held in RecordingSource is either received from ContentLayerClient or PictureLayer. Separate them into two structs: ContentLayerClientData and PictureLayerClientData, and move them to PictureLayer. Also move most of the methods in RecordingSource to PictureLayer, except CreateRasterSource. UpdateAndExpandInvalidation is moved to PictureLayer. It will take pointers to the two structs, and update the members of the structs, instead of updating the internal state. So that when UpdateAndExpandInvalidation is called in PushPropertiesTo, PictureLayer's internal structs will be passed in. And when UpdateAndExpandInvalidation is called in GetPicture, local temporal structs will be passed in. BUG= 625290 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel Review-Url: https://codereview.chromium.org/2141233002 Cr-Commit-Position: refs/heads/master@{#409348} [modify] https://crrev.com/51126b7275df6aa885015cf4693901003358049c/cc/layers/picture_layer.cc [modify] https://crrev.com/51126b7275df6aa885015cf4693901003358049c/cc/layers/picture_layer.h [modify] https://crrev.com/51126b7275df6aa885015cf4693901003358049c/cc/layers/picture_layer_impl_unittest.cc [modify] https://crrev.com/51126b7275df6aa885015cf4693901003358049c/cc/layers/picture_layer_unittest.cc [modify] https://crrev.com/51126b7275df6aa885015cf4693901003358049c/cc/playback/discardable_image_map_unittest.cc [modify] https://crrev.com/51126b7275df6aa885015cf4693901003358049c/cc/playback/raster_source.cc [modify] https://crrev.com/51126b7275df6aa885015cf4693901003358049c/cc/playback/recording_source.cc [modify] https://crrev.com/51126b7275df6aa885015cf4693901003358049c/cc/playback/recording_source.h [modify] https://crrev.com/51126b7275df6aa885015cf4693901003358049c/cc/playback/recording_source_unittest.cc [modify] https://crrev.com/51126b7275df6aa885015cf4693901003358049c/cc/proto/layer.proto [modify] https://crrev.com/51126b7275df6aa885015cf4693901003358049c/cc/proto/recording_source.proto [modify] https://crrev.com/51126b7275df6aa885015cf4693901003358049c/cc/test/fake_picture_layer.cc [modify] https://crrev.com/51126b7275df6aa885015cf4693901003358049c/cc/test/fake_picture_layer.h [modify] https://crrev.com/51126b7275df6aa885015cf4693901003358049c/cc/test/fake_recording_source.cc [modify] https://crrev.com/51126b7275df6aa885015cf4693901003358049c/cc/test/fake_recording_source.h [modify] https://crrev.com/51126b7275df6aa885015cf4693901003358049c/cc/trees/layer_tree_host.cc [modify] https://crrev.com/51126b7275df6aa885015cf4693901003358049c/cc/trees/layer_tree_host_unittest.cc [modify] https://crrev.com/51126b7275df6aa885015cf4693901003358049c/cc/trees/layer_tree_host_unittest_serialization.cc
Comment 1 by khushals...@chromium.org
, Jul 15 2016