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

Issue 21839004: cc: Push valid property values when CalcDrawProps skips layer. (Closed)

Created:
7 years, 4 months ago by danakj
Modified:
7 years, 4 months ago
Reviewers:
boliu, enne (OOO)
CC:
chromium-reviews, feature-media-reviews_chromium.org, cc-bugs_chromium.org, piman
Visibility:
Public.

Description

cc: Push valid property values when CalcDrawProps skips layer. If CalcDropProps does not run on a layer for any reason, then we do not SavePaintProperties() on the layer. When we push the layer's properties, we can not push the paint properties since they are not valid. We should instead push the raw value on the layer. This is safe because if we didn't SavePaintProperties() we will also not call Update() on the layer, so there is no chance for painting to change any property values. This is enforced by a new DCHECK() in Layer::Update() and we have all the subclasses of Layer call up to the Update() method. R=boliu, enne BUG=267574 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=215512

Patch Set 1 : pushpaintprops: #

Patch Set 2 : pushpaintprops: Simpler to dcheck in TiledLayer #

Total comments: 9

Patch Set 3 : pushpaintprops: stuff #

Total comments: 5

Patch Set 4 : pushpaintprops: nit #

Patch Set 5 : pushpaintprops: woo #

Patch Set 6 : pushpaintprops: rebase #

Patch Set 7 : pushpaintprops: Call SavePaintProps when needed in tests #

Unified diffs Side-by-side diffs Delta from patch set Stats (+187 lines, -47 lines) Patch
M cc/layers/contents_scaling_layer.cc View 1 chunk +4 lines, -2 lines 0 comments Download
M cc/layers/layer.cc View 1 2 3 4 5 2 chunks +12 lines, -1 line 0 comments Download
M cc/layers/nine_patch_layer.cc View 2 chunks +4 lines, -2 lines 0 comments Download
M cc/layers/nine_patch_layer_unittest.cc View 1 2 3 4 5 6 5 chunks +5 lines, -0 lines 0 comments Download
M cc/layers/paint_properties.h View 1 2 1 chunk +3 lines, -1 line 0 comments Download
M cc/layers/picture_layer.cc View 1 2 3 chunks +10 lines, -8 lines 0 comments Download
M cc/layers/scrollbar_layer.cc View 2 chunks +5 lines, -3 lines 0 comments Download
M cc/layers/scrollbar_layer_unittest.cc View 1 2 3 4 5 6 2 chunks +2 lines, -0 lines 0 comments Download
M cc/layers/texture_layer.cc View 1 chunk +1 line, -1 line 0 comments Download
M cc/layers/tiled_layer.cc View 1 2 3 4 6 chunks +29 lines, -28 lines 0 comments Download
M cc/layers/video_layer.cc View 1 chunk +5 lines, -1 line 0 comments Download
M cc/trees/layer_tree_host_unittest.cc View 1 2 3 4 5 6 2 chunks +107 lines, -0 lines 0 comments Download

Messages

Total messages: 23 (0 generated)
danakj
7 years, 4 months ago (2013-08-02 15:54:17 UTC) #1
enne (OOO)
Yay, thanks for this cleanup. :) https://codereview.chromium.org/21839004/diff/15001/cc/layers/layer.cc File cc/layers/layer.cc (right): https://codereview.chromium.org/21839004/diff/15001/cc/layers/layer.cc#newcode851 cc/layers/layer.cc:851: DCHECK(saved_paint_properties_); This seems ...
7 years, 4 months ago (2013-08-02 17:00:47 UTC) #2
boliu
Tested PS2 (with the viewport empty early out added back). Works fine for webview. https://codereview.chromium.org/21839004/diff/15001/cc/trees/layer_tree_host.cc ...
7 years, 4 months ago (2013-08-02 17:44:50 UTC) #3
enne (OOO)
https://codereview.chromium.org/21839004/diff/15001/cc/trees/layer_tree_host.cc File cc/trees/layer_tree_host.cc (right): https://codereview.chromium.org/21839004/diff/15001/cc/trees/layer_tree_host.cc#newcode681 cc/trees/layer_tree_host.cc:681: if (device_viewport_size().IsEmpty()) On 2013/08/02 17:44:50, boliu wrote: > On ...
7 years, 4 months ago (2013-08-02 17:47:41 UTC) #4
danakj
https://codereview.chromium.org/21839004/diff/15001/cc/trees/layer_tree_host.cc File cc/trees/layer_tree_host.cc (right): https://codereview.chromium.org/21839004/diff/15001/cc/trees/layer_tree_host.cc#newcode681 cc/trees/layer_tree_host.cc:681: if (device_viewport_size().IsEmpty()) On 2013/08/02 17:47:41, enne wrote: > On ...
7 years, 4 months ago (2013-08-02 18:35:11 UTC) #5
enne (OOO)
https://codereview.chromium.org/21839004/diff/15001/cc/trees/layer_tree_host.cc File cc/trees/layer_tree_host.cc (right): https://codereview.chromium.org/21839004/diff/15001/cc/trees/layer_tree_host.cc#newcode681 cc/trees/layer_tree_host.cc:681: if (device_viewport_size().IsEmpty()) On 2013/08/02 18:35:11, danakj wrote: > I ...
7 years, 4 months ago (2013-08-02 18:41:49 UTC) #6
danakj
https://codereview.chromium.org/21839004/diff/15001/cc/trees/layer_tree_host.cc File cc/trees/layer_tree_host.cc (right): https://codereview.chromium.org/21839004/diff/15001/cc/trees/layer_tree_host.cc#newcode681 cc/trees/layer_tree_host.cc:681: if (device_viewport_size().IsEmpty()) On 2013/08/02 18:41:49, enne wrote: > On ...
7 years, 4 months ago (2013-08-02 21:49:13 UTC) #7
danakj
PTAL https://codereview.chromium.org/21839004/diff/15001/cc/layers/layer.cc File cc/layers/layer.cc (right): https://codereview.chromium.org/21839004/diff/15001/cc/layers/layer.cc#newcode851 cc/layers/layer.cc:851: DCHECK(saved_paint_properties_); On 2013/08/02 17:00:48, enne wrote: > This ...
7 years, 4 months ago (2013-08-02 21:57:28 UTC) #8
enne (OOO)
lgtm https://codereview.chromium.org/21839004/diff/32001/cc/layers/tiled_layer.cc File cc/layers/tiled_layer.cc (right): https://codereview.chromium.org/21839004/diff/32001/cc/layers/tiled_layer.cc#newcode748 cc/layers/tiled_layer.cc:748: bool did_paint = false; I think you could ...
7 years, 4 months ago (2013-08-02 22:04:55 UTC) #9
danakj
https://codereview.chromium.org/21839004/diff/32001/cc/trees/layer_tree_host_unittest.cc File cc/trees/layer_tree_host_unittest.cc (right): https://codereview.chromium.org/21839004/diff/32001/cc/trees/layer_tree_host_unittest.cc#newcode4081 cc/trees/layer_tree_host_unittest.cc:4081: root_layer_->SetAnchorPoint(gfx::PointF()); On 2013/08/02 22:04:55, enne wrote: > Are the ...
7 years, 4 months ago (2013-08-02 22:05:58 UTC) #10
danakj
https://codereview.chromium.org/21839004/diff/32001/cc/layers/tiled_layer.cc File cc/layers/tiled_layer.cc (right): https://codereview.chromium.org/21839004/diff/32001/cc/layers/tiled_layer.cc#newcode748 cc/layers/tiled_layer.cc:748: bool did_paint = false; On 2013/08/02 22:04:55, enne wrote: ...
7 years, 4 months ago (2013-08-02 22:11:27 UTC) #11
danakj
PTAL, thanks! Renamed did_paint
7 years, 4 months ago (2013-08-02 22:12:10 UTC) #12
enne (OOO)
https://codereview.chromium.org/21839004/diff/32001/cc/layers/tiled_layer.cc File cc/layers/tiled_layer.cc (right): https://codereview.chromium.org/21839004/diff/32001/cc/layers/tiled_layer.cc#newcode748 cc/layers/tiled_layer.cc:748: bool did_paint = false; On 2013/08/02 22:11:27, danakj wrote: ...
7 years, 4 months ago (2013-08-02 22:13:20 UTC) #13
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/danakj@chromium.org/21839004/44001
7 years, 4 months ago (2013-08-02 22:14:43 UTC) #14
danakj
Well.. we can't use the layer tree host unconditionally inside SavePaintProperties, since tests call CalcDrawProps ...
7 years, 4 months ago (2013-08-02 22:28:33 UTC) #15
commit-bot: I haz the power
Retried try job too often on linux_rel for step(s) cc_unittests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=linux_rel&number=155142
7 years, 4 months ago (2013-08-02 22:56:43 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/danakj@chromium.org/21839004/61001
7 years, 4 months ago (2013-08-03 02:35:52 UTC) #17
commit-bot: I haz the power
Retried try job too often on linux_rel for step(s) cc_unittests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=linux_rel&number=155235
7 years, 4 months ago (2013-08-03 03:39:30 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/danakj@chromium.org/21839004/61001
7 years, 4 months ago (2013-08-03 14:21:59 UTC) #19
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/danakj@chromium.org/21839004/83002
7 years, 4 months ago (2013-08-03 14:48:41 UTC) #20
commit-bot: I haz the power
Step "update" is always a major failure. Look at the try server FAQ for more ...
7 years, 4 months ago (2013-08-03 14:55:56 UTC) #21
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/danakj@chromium.org/21839004/83002
7 years, 4 months ago (2013-08-03 14:57:40 UTC) #22
commit-bot: I haz the power
7 years, 4 months ago (2013-08-03 18:44:31 UTC) #23
Message was sent while issue was closed.
Change committed as 215512

Powered by Google App Engine
This is Rietveld 408576698