-
Notifications
You must be signed in to change notification settings - Fork 17
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Make compositingState explicit (re-land #2 with bogus ASSERT removed)
A lot of code uses isComposited() and compositedLayerMapping() as booleans to check the compositing state of a RenderLayer or RenderObject. However, in the code there are actually 3 different states: (1) not composited (paints into CompositedLayerMapping of a composited ancestor) (2) paints into own CompositedLayerMapping (3) has its own CompositedLayerMapping but actually still paints into composited ancestor. Furthermore, upcoming changes to compositing will add a fourth state: (4) paints into a GraphicsLayer that is shared by a group of layers. This patch removes isComposited() boolean check, and replaces it with compositingState() that returns an enum. Most call sites outside of RenderLayer, CompositedLayerMapping, and RenderLayerCompositor have been updated to reflect what states they really intended to check for. Remaining call sites have been replaced with the compositedLayerMapping() accessor for now, which is exactly equivalent to the old isComposited() boolean, and those sites will be updated in follow-up patches. BUG=261605 [email protected], [email protected], [email protected] Review URL: https://codereview.chromium.org/24921002 git-svn-id: svn://svn.chromium.org/blink/trunk@159118 bbb929c8-8fbe-4397-9dbb-9b2b20218538
- Loading branch information
1 parent
b6d574a
commit db8f4a6
Showing
24 changed files
with
192 additions
and
118 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
// Copyright 2013 The Chromium Authors. All rights reserved. | ||
// Use of this source code is governed by a BSD-style license that can be | ||
// found in the LICENSE file. | ||
|
||
#ifndef CompositingState_h | ||
#define CompositingState_h | ||
|
||
namespace WebCore { | ||
|
||
enum CompositingState { | ||
// The layer paints into its enclosing composited ancestor. | ||
NotComposited = 0, | ||
|
||
// The layer is composited, but its contents still paint into enclosing composited ancestor. | ||
// In this state, repaint invalidations must be sent to the enclosing composited ancestor. | ||
// Typically this happens when a layer's properties need to be represented in the compositor | ||
// output data structures, but it doesn't actually have any other reasons to be composited. | ||
HasOwnBackingButPaintsIntoAncestor = 1, | ||
|
||
PaintsIntoOwnBacking = 2, | ||
}; | ||
|
||
} // namespace WebCore | ||
|
||
#endif // CompositingState_h |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.