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

Issue 708213002: Remove the HasOwnBackingButPaintsIntoAncestor compositing state. (Closed)

Created:
6 years, 1 month ago by chrishtr
Modified:
6 years, 1 month ago
Reviewers:
Ian Vollick
CC:
darktears, blink-layers+watch_chromium.org, blink-reviews, blink-reviews-animation_chromium.org, blink-reviews-rendering, dstockwell, eae+blinkwatch, Eric Willigers, jchaffraix+rendering, leviw+renderwatch, Mike Lawther (Google), pdr+renderingwatchlist_chromium.org, rjwright, shans, Steve Block, Timothy Loh, zoltan1
Project:
blink
Visibility:
Public.

Description

Remove the HasOwnBackingButPaintsIntoAncestor compositing state. The referenced bug is caused by a composited descendant that has an opacity animation not having the correct background painted for its ancestor that it needs to blend with. However, HasOwnBackingButPaintsIntoAncestor is also just an optimization to reduce the number of composited layers that draw content, in cases where we think we can get away with it. (e.g. only existing to pass along preserves-3d state). In exchange for these optimizations, the feature introduces significant complexity, and has caused a number of bugs. Let's just kill it. BUG=418521 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=185007

Patch Set 1 #

Total comments: 2

Patch Set 2 : Some more code cleanup #

Total comments: 2

Patch Set 3 : Renumbered. #

Patch Set 4 : Fixed. #

Patch Set 5 : Fixed #

Patch Set 6 : Fixed #

Patch Set 7 : Removed more tests. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+30 lines, -800 lines) Patch
M LayoutTests/TestExpectations View 1 2 3 4 5 2 chunks +4 lines, -1 line 0 comments Download
D LayoutTests/compositing/backing/no-backing-for-clip.html View 1 2 3 4 5 6 1 chunk +0 lines, -59 lines 0 comments Download
D LayoutTests/compositing/backing/no-backing-for-clip-expected.txt View 1 2 3 4 5 6 1 chunk +0 lines, -46 lines 0 comments Download
D LayoutTests/compositing/backing/no-backing-for-clip-overlap.html View 1 2 3 4 5 6 1 chunk +0 lines, -59 lines 0 comments Download
D LayoutTests/compositing/backing/no-backing-for-clip-overlap-expected.txt View 1 2 3 4 5 6 1 chunk +0 lines, -54 lines 0 comments Download
D LayoutTests/compositing/backing/no-backing-for-perspective.html View 1 2 3 4 5 6 1 chunk +0 lines, -57 lines 0 comments Download
D LayoutTests/compositing/backing/no-backing-for-perspective-expected.txt View 1 2 3 4 5 6 1 chunk +0 lines, -64 lines 0 comments Download
D LayoutTests/compositing/change-from-paints-into-ancestor-to-paints-into-own-backing-for-ancestor-reason.html View 1 chunk +0 lines, -18 lines 0 comments Download
D LayoutTests/compositing/change-from-paints-into-ancestor-to-paints-into-own-backing-for-ancestor-reason-expected.txt View 1 chunk +0 lines, -54 lines 0 comments Download
D LayoutTests/compositing/change-from-paints-into-ancestor-to-paints-into-own-backing-for-intrinsic-reason.html View 1 chunk +0 lines, -31 lines 0 comments Download
D LayoutTests/compositing/change-from-paints-into-ancestor-to-paints-into-own-backing-for-intrinsic-reason-expected.txt View 1 chunk +0 lines, -48 lines 0 comments Download
M LayoutTests/compositing/layer-creation/overlap-animation-expected.txt View 1 chunk +1 line, -0 lines 0 comments Download
M LayoutTests/compositing/layer-creation/overlap-transforms-expected.txt View 1 chunk +1 line, -0 lines 0 comments Download
M LayoutTests/compositing/overflow/clip-descendents-expected.txt View 2 chunks +2 lines, -0 lines 0 comments Download
D LayoutTests/compositing/repaint/fixed-pos-with-composited-child.html View 1 chunk +0 lines, -62 lines 0 comments Download
D LayoutTests/compositing/repaint/fixed-pos-with-composited-child-expected.txt View 1 chunk +0 lines, -36 lines 0 comments Download
D LayoutTests/compositing/repaint/repaint-into-ancestor-after-layout.html View 1 chunk +0 lines, -53 lines 0 comments Download
D LayoutTests/compositing/repaint/repaint-into-ancestor-after-layout-expected.txt View 1 chunk +0 lines, -36 lines 0 comments Download
M LayoutTests/compositing/squashing/invalidate-when-leaving-squashed-layer-expected.txt View 1 chunk +0 lines, -3 lines 0 comments Download
M LayoutTests/compositing/squashing/no-squashing-into-fixed-position-that-clips-expected.txt View 1 chunk +1 line, -0 lines 0 comments Download
M LayoutTests/compositing/squashing/squash-above-fixed-1-expected.txt View 2 chunks +0 lines, -2 lines 0 comments Download
M LayoutTests/compositing/visibility/layer-visible-content-expected.png View Binary file 0 comments Download
M LayoutTests/compositing/visibility/layer-visible-content-expected.txt View 1 chunk +1 line, -0 lines 0 comments Download
M LayoutTests/fast/repaint/filter-invalidation-with-composited-container-change-expected.txt View 1 2 3 1 chunk +0 lines, -1 line 0 comments Download
M LayoutTests/platform/linux/compositing/backing/no-backing-for-clip-expected.txt View 2 chunks +2 lines, -0 lines 0 comments Download
M LayoutTests/platform/linux/compositing/backing/no-backing-for-clip-overlap-expected.txt View 1 chunk +1 line, -0 lines 0 comments Download
M LayoutTests/platform/linux/compositing/backing/no-backing-for-perspective-expected.txt View 2 chunks +2 lines, -0 lines 0 comments Download
M LayoutTests/platform/linux/transforms/3d/point-mapping/3d-point-mapping-deep-expected.png View 1 2 3 4 Binary file 0 comments Download
M LayoutTests/platform/win/compositing/geometry/preserve-3d-switching-expected.txt View 1 chunk +1 line, -0 lines 0 comments Download
M LayoutTests/platform/win/compositing/layer-creation/fixed-position-scroll-expected.png View Binary file 0 comments Download
M LayoutTests/virtual/prefer_compositing_to_lcd_text/compositing/overflow/clip-descendents-expected.txt View 1 2 3 2 chunks +2 lines, -0 lines 0 comments Download
M Source/core/inspector/InspectorTraceEvents.h View 1 1 chunk +0 lines, -1 line 0 comments Download
M Source/core/inspector/InspectorTraceEvents.cpp View 1 1 chunk +0 lines, -1 line 0 comments Download
M Source/core/paint/BoxPainter.cpp View 1 chunk +0 lines, -4 lines 0 comments Download
M Source/core/paint/LayerPainter.cpp View 1 2 3 4 5 1 chunk +0 lines, -1 line 0 comments Download
M Source/core/rendering/RenderLayer.h View 1 1 chunk +0 lines, -2 lines 0 comments Download
M Source/core/rendering/RenderLayer.cpp View 1 3 chunks +1 line, -13 lines 0 comments Download
M Source/core/rendering/RenderTreeAsText.cpp View 1 chunk +0 lines, -2 lines 0 comments Download
M Source/core/rendering/compositing/CompositedLayerMapping.h View 2 chunks +1 line, -15 lines 0 comments Download
M Source/core/rendering/compositing/CompositedLayerMapping.cpp View 10 chunks +6 lines, -56 lines 0 comments Download
M Source/core/rendering/compositing/CompositingLayerAssigner.cpp View 1 chunk +2 lines, -2 lines 0 comments Download
M Source/core/rendering/compositing/CompositingState.h View 1 2 1 chunk +2 lines, -8 lines 0 comments Download
M Source/core/rendering/compositing/GraphicsLayerUpdater.cpp View 1 chunk +0 lines, -6 lines 0 comments Download
M Source/core/rendering/compositing/RenderLayerCompositor.cpp View 1 chunk +0 lines, -5 lines 0 comments Download

Messages

Total messages: 10 (2 generated)
chrishtr
https://codereview.chromium.org/708213002/diff/1/LayoutTests/compositing/squashing/invalidate-when-leaving-squashed-layer-expected.txt File LayoutTests/compositing/squashing/invalidate-when-leaving-squashed-layer-expected.txt (left): https://codereview.chromium.org/708213002/diff/1/LayoutTests/compositing/squashing/invalidate-when-leaving-squashed-layer-expected.txt#oldcode8 LayoutTests/compositing/squashing/invalidate-when-leaving-squashed-layer-expected.txt:8: "repaintRects": [ I think this test is busted. Will ...
6 years, 1 month ago (2014-11-07 23:34:18 UTC) #2
Ian Vollick
This change is SO AWESOME. I'm also concerned about that test, though. https://codereview.chromium.org/708213002/diff/1/LayoutTests/compositing/squashing/invalidate-when-leaving-squashed-layer-expected.txt File LayoutTests/compositing/squashing/invalidate-when-leaving-squashed-layer-expected.txt ...
6 years, 1 month ago (2014-11-08 00:10:09 UTC) #3
chrishtr
On 2014/11/08 at 00:10:09, vollick wrote: > This change is SO AWESOME. I'm also concerned ...
6 years, 1 month ago (2014-11-08 00:25:03 UTC) #4
chrishtr
https://codereview.chromium.org/708213002/diff/20001/Source/core/rendering/compositing/CompositingState.h File Source/core/rendering/compositing/CompositingState.h (right): https://codereview.chromium.org/708213002/diff/20001/Source/core/rendering/compositing/CompositingState.h#newcode14 Source/core/rendering/compositing/CompositingState.h:14: PaintsIntoOwnBacking = 2, On 2014/11/08 at 00:10:09, vollick wrote: ...
6 years, 1 month ago (2014-11-08 00:27:15 UTC) #5
Ian Vollick
On 2014/11/08 00:27:15, chrishtr wrote: > https://codereview.chromium.org/708213002/diff/20001/Source/core/rendering/compositing/CompositingState.h > File Source/core/rendering/compositing/CompositingState.h (right): > > https://codereview.chromium.org/708213002/diff/20001/Source/core/rendering/compositing/CompositingState.h#newcode14 > ...
6 years, 1 month ago (2014-11-08 01:18:55 UTC) #6
chrishtr
Filed crbug.com/431542 for the suspicious squashing test. Going to commit this CL now.
6 years, 1 month ago (2014-11-08 18:43:32 UTC) #7
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/708213002/120001
6 years, 1 month ago (2014-11-08 18:58:56 UTC) #9
commit-bot: I haz the power
6 years, 1 month ago (2014-11-08 20:18:13 UTC) #10
Message was sent while issue was closed.
Committed patchset #7 (id:120001) as 185007

Powered by Google App Engine
This is Rietveld 408576698