OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CompositingReasons_h | 5 #ifndef CompositingReasons_h |
6 #define CompositingReasons_h | 6 #define CompositingReasons_h |
7 | 7 |
8 #include "platform/PlatformExport.h" | 8 #include "platform/PlatformExport.h" |
9 #include "wtf/MathExtras.h" | 9 #include "wtf/MathExtras.h" |
10 #include <stdint.h> | 10 #include <stdint.h> |
(...skipping 11 matching lines...) Expand all Loading... |
22 const uint64_t CompositingReasonIFrame = UINT6
4_C(1) << 4; | 22 const uint64_t CompositingReasonIFrame = UINT6
4_C(1) << 4; |
23 const uint64_t CompositingReasonBackfaceVisibilityHidden = UINT6
4_C(1) << 5; | 23 const uint64_t CompositingReasonBackfaceVisibilityHidden = UINT6
4_C(1) << 5; |
24 const uint64_t CompositingReasonActiveAnimation = UINT6
4_C(1) << 6; | 24 const uint64_t CompositingReasonActiveAnimation = UINT6
4_C(1) << 6; |
25 const uint64_t CompositingReasonTransitionProperty = UINT6
4_C(1) << 7; | 25 const uint64_t CompositingReasonTransitionProperty = UINT6
4_C(1) << 7; |
26 const uint64_t CompositingReasonPositionFixed = UINT6
4_C(1) << 8; | 26 const uint64_t CompositingReasonPositionFixed = UINT6
4_C(1) << 8; |
27 const uint64_t CompositingReasonOverflowScrollingTouch = UINT6
4_C(1) << 9; | 27 const uint64_t CompositingReasonOverflowScrollingTouch = UINT6
4_C(1) << 9; |
28 const uint64_t CompositingReasonOverflowScrollingParent = UINT6
4_C(1) << 10; | 28 const uint64_t CompositingReasonOverflowScrollingParent = UINT6
4_C(1) << 10; |
29 const uint64_t CompositingReasonOutOfFlowClipping = UINT6
4_C(1) << 11; | 29 const uint64_t CompositingReasonOutOfFlowClipping = UINT6
4_C(1) << 11; |
30 const uint64_t CompositingReasonVideoOverlay = UINT6
4_C(1) << 12; | 30 const uint64_t CompositingReasonVideoOverlay = UINT6
4_C(1) << 12; |
31 const uint64_t CompositingReasonWillChangeCompositingHint = UINT6
4_C(1) << 13; | 31 const uint64_t CompositingReasonWillChangeCompositingHint = UINT6
4_C(1) << 13; |
| 32 const uint64_t CompositingReasonScrollBlocksOn = UINT6
4_C(1) << 14; |
32 | 33 |
33 // Overlap reasons that require knowing what's behind you in paint-order before
knowing the answer | 34 // Overlap reasons that require knowing what's behind you in paint-order before
knowing the answer |
34 const uint64_t CompositingReasonAssumedOverlap = UINT6
4_C(1) << 14; | 35 const uint64_t CompositingReasonAssumedOverlap = UINT6
4_C(1) << 15; |
35 const uint64_t CompositingReasonOverlap = UINT6
4_C(1) << 15; | 36 const uint64_t CompositingReasonOverlap = UINT6
4_C(1) << 16; |
36 const uint64_t CompositingReasonNegativeZIndexChildren = UINT6
4_C(1) << 16; | 37 const uint64_t CompositingReasonNegativeZIndexChildren = UINT6
4_C(1) << 17; |
37 const uint64_t CompositingReasonScrollsWithRespectToSquashingLayer = UINT6
4_C(1) << 17; | 38 const uint64_t CompositingReasonScrollsWithRespectToSquashingLayer = UINT6
4_C(1) << 18; |
38 const uint64_t CompositingReasonSquashingSparsityExceeded = UINT6
4_C(1) << 18; | 39 const uint64_t CompositingReasonSquashingSparsityExceeded = UINT6
4_C(1) << 19; |
39 const uint64_t CompositingReasonSquashingClippingContainerMismatch = UINT6
4_C(1) << 19; | 40 const uint64_t CompositingReasonSquashingClippingContainerMismatch = UINT6
4_C(1) << 20; |
40 const uint64_t CompositingReasonSquashingOpacityAncestorMismatch = UINT6
4_C(1) << 20; | 41 const uint64_t CompositingReasonSquashingOpacityAncestorMismatch = UINT6
4_C(1) << 21; |
41 const uint64_t CompositingReasonSquashingTransformAncestorMismatch = UINT6
4_C(1) << 21; | 42 const uint64_t CompositingReasonSquashingTransformAncestorMismatch = UINT6
4_C(1) << 22; |
42 const uint64_t CompositingReasonSquashingFilterMismatch = UINT6
4_C(1) << 22; | 43 const uint64_t CompositingReasonSquashingFilterMismatch = UINT6
4_C(1) << 23; |
43 const uint64_t CompositingReasonSquashingWouldBreakPaintOrder = UINT6
4_C(1) << 23; | 44 const uint64_t CompositingReasonSquashingWouldBreakPaintOrder = UINT6
4_C(1) << 24; |
44 const uint64_t CompositingReasonSquashingVideoIsDisallowed = UINT6
4_C(1) << 24; | 45 const uint64_t CompositingReasonSquashingVideoIsDisallowed = UINT6
4_C(1) << 25; |
45 const uint64_t CompositingReasonSquashedLayerClipsCompositingDescendants = UINT6
4_C(1) << 25; | 46 const uint64_t CompositingReasonSquashedLayerClipsCompositingDescendants = UINT6
4_C(1) << 26; |
46 const uint64_t CompositingReasonSquashingRenderPartIsDisallowed = UINT6
4_C(1) << 26; | 47 const uint64_t CompositingReasonSquashingRenderPartIsDisallowed = UINT6
4_C(1) << 27; |
47 const uint64_t CompositingReasonSquashingReflectionIsDisallowed = UINT6
4_C(1) << 27; | 48 const uint64_t CompositingReasonSquashingReflectionIsDisallowed = UINT6
4_C(1) << 28; |
48 const uint64_t CompositingReasonSquashingBlendingIsDisallowed = UINT6
4_C(1) << 28; | 49 const uint64_t CompositingReasonSquashingBlendingIsDisallowed = UINT6
4_C(1) << 29; |
49 | 50 |
50 // Subtree reasons that require knowing what the status of your subtree is befor
e knowing the answer | 51 // Subtree reasons that require knowing what the status of your subtree is befor
e knowing the answer |
51 const uint64_t CompositingReasonTransformWithCompositedDescendants = UINT6
4_C(1) << 29; | 52 const uint64_t CompositingReasonTransformWithCompositedDescendants = UINT6
4_C(1) << 30; |
52 const uint64_t CompositingReasonOpacityWithCompositedDescendants = UINT6
4_C(1) << 30; | 53 const uint64_t CompositingReasonOpacityWithCompositedDescendants = UINT6
4_C(1) << 31; |
53 const uint64_t CompositingReasonMaskWithCompositedDescendants = UINT6
4_C(1) << 31; | 54 const uint64_t CompositingReasonMaskWithCompositedDescendants = UINT6
4_C(1) << 32; |
54 const uint64_t CompositingReasonReflectionWithCompositedDescendants = UINT6
4_C(1) << 32; | 55 const uint64_t CompositingReasonReflectionWithCompositedDescendants = UINT6
4_C(1) << 33; |
55 const uint64_t CompositingReasonFilterWithCompositedDescendants = UINT6
4_C(1) << 33; | 56 const uint64_t CompositingReasonFilterWithCompositedDescendants = UINT6
4_C(1) << 34; |
56 const uint64_t CompositingReasonBlendingWithCompositedDescendants = UINT6
4_C(1) << 34; | 57 const uint64_t CompositingReasonBlendingWithCompositedDescendants = UINT6
4_C(1) << 35; |
57 const uint64_t CompositingReasonClipsCompositingDescendants = UINT6
4_C(1) << 35; | 58 const uint64_t CompositingReasonClipsCompositingDescendants = UINT6
4_C(1) << 36; |
58 const uint64_t CompositingReasonPerspectiveWith3DDescendants = UINT6
4_C(1) << 36; | 59 const uint64_t CompositingReasonPerspectiveWith3DDescendants = UINT6
4_C(1) << 37; |
59 const uint64_t CompositingReasonPreserve3DWith3DDescendants = UINT6
4_C(1) << 37; | 60 const uint64_t CompositingReasonPreserve3DWith3DDescendants = UINT6
4_C(1) << 38; |
60 const uint64_t CompositingReasonReflectionOfCompositedParent = UINT6
4_C(1) << 38; | 61 const uint64_t CompositingReasonReflectionOfCompositedParent = UINT6
4_C(1) << 39; |
61 const uint64_t CompositingReasonIsolateCompositedDescendants = UINT6
4_C(1) << 39; | 62 const uint64_t CompositingReasonIsolateCompositedDescendants = UINT6
4_C(1) << 40; |
62 | 63 |
63 // The root layer is a special case that may be forced to be a layer, but also i
t needs to be | 64 // The root layer is a special case that may be forced to be a layer, but also i
t needs to be |
64 // a layer if anything else in the subtree is composited. | 65 // a layer if anything else in the subtree is composited. |
65 const uint64_t CompositingReasonRoot = UINT6
4_C(1) << 40; | 66 const uint64_t CompositingReasonRoot = UINT6
4_C(1) << 41; |
66 | 67 |
67 // CompositedLayerMapping internal hierarchy reasons | 68 // CompositedLayerMapping internal hierarchy reasons |
68 const uint64_t CompositingReasonLayerForAncestorClip = UINT6
4_C(1) << 41; | 69 const uint64_t CompositingReasonLayerForAncestorClip = UINT6
4_C(1) << 42; |
69 const uint64_t CompositingReasonLayerForDescendantClip = UINT6
4_C(1) << 42; | 70 const uint64_t CompositingReasonLayerForDescendantClip = UINT6
4_C(1) << 43; |
70 const uint64_t CompositingReasonLayerForPerspective = UINT6
4_C(1) << 43; | 71 const uint64_t CompositingReasonLayerForPerspective = UINT6
4_C(1) << 44; |
71 const uint64_t CompositingReasonLayerForHorizontalScrollbar = UINT6
4_C(1) << 44; | 72 const uint64_t CompositingReasonLayerForHorizontalScrollbar = UINT6
4_C(1) << 45; |
72 const uint64_t CompositingReasonLayerForVerticalScrollbar = UINT6
4_C(1) << 45; | 73 const uint64_t CompositingReasonLayerForVerticalScrollbar = UINT6
4_C(1) << 46; |
73 const uint64_t CompositingReasonLayerForOverflowControlsHost = UINT6
4_C(1) << 46; | 74 const uint64_t CompositingReasonLayerForOverflowControlsHost = UINT6
4_C(1) << 47; |
74 const uint64_t CompositingReasonLayerForScrollCorner = UINT6
4_C(1) << 47; | 75 const uint64_t CompositingReasonLayerForScrollCorner = UINT6
4_C(1) << 48; |
75 const uint64_t CompositingReasonLayerForScrollingContents = UINT6
4_C(1) << 48; | 76 const uint64_t CompositingReasonLayerForScrollingContents = UINT6
4_C(1) << 49; |
76 const uint64_t CompositingReasonLayerForScrollingContainer = UINT6
4_C(1) << 49; | 77 const uint64_t CompositingReasonLayerForScrollingContainer = UINT6
4_C(1) << 50; |
77 const uint64_t CompositingReasonLayerForSquashingContents = UINT6
4_C(1) << 50; | 78 const uint64_t CompositingReasonLayerForSquashingContents = UINT6
4_C(1) << 51; |
78 const uint64_t CompositingReasonLayerForSquashingContainer = UINT6
4_C(1) << 51; | 79 const uint64_t CompositingReasonLayerForSquashingContainer = UINT6
4_C(1) << 52; |
79 const uint64_t CompositingReasonLayerForForeground = UINT6
4_C(1) << 52; | 80 const uint64_t CompositingReasonLayerForForeground = UINT6
4_C(1) << 53; |
80 const uint64_t CompositingReasonLayerForBackground = UINT6
4_C(1) << 53; | 81 const uint64_t CompositingReasonLayerForBackground = UINT6
4_C(1) << 54; |
81 const uint64_t CompositingReasonLayerForMask = UINT6
4_C(1) << 54; | 82 const uint64_t CompositingReasonLayerForMask = UINT6
4_C(1) << 55; |
82 const uint64_t CompositingReasonLayerForClippingMask = UINT6
4_C(1) << 55; | 83 const uint64_t CompositingReasonLayerForClippingMask = UINT6
4_C(1) << 56; |
83 const uint64_t CompositingReasonLayerForScrollingBlockSelection = UINT6
4_C(1) << 56; | 84 const uint64_t CompositingReasonLayerForScrollingBlockSelection = UINT6
4_C(1) << 57; |
84 | 85 |
85 // Composited elements with inline transforms trigger assumed overlap so that | 86 // Composited elements with inline transforms trigger assumed overlap so that |
86 // we can update their transforms quickly. | 87 // we can update their transforms quickly. |
87 const uint64_t CompositingReasonInlineTransform = UINT6
4_C(1) << 57; | 88 const uint64_t CompositingReasonInlineTransform = UINT6
4_C(1) << 58; |
88 | 89 |
89 // Various combinations of compositing reasons are defined here also, for more i
ntutive and faster bitwise logic. | 90 // Various combinations of compositing reasons are defined here also, for more i
ntutive and faster bitwise logic. |
90 const uint64_t CompositingReasonComboAllDirectReasons = | 91 const uint64_t CompositingReasonComboAllDirectReasons = |
91 CompositingReason3DTransform | 92 CompositingReason3DTransform |
92 | CompositingReasonVideo | 93 | CompositingReasonVideo |
93 | CompositingReasonCanvas | 94 | CompositingReasonCanvas |
94 | CompositingReasonPlugin | 95 | CompositingReasonPlugin |
95 | CompositingReasonIFrame | 96 | CompositingReasonIFrame |
96 | CompositingReasonBackfaceVisibilityHidden | 97 | CompositingReasonBackfaceVisibilityHidden |
97 | CompositingReasonActiveAnimation | 98 | CompositingReasonActiveAnimation |
98 | CompositingReasonTransitionProperty | 99 | CompositingReasonTransitionProperty |
99 | CompositingReasonPositionFixed | 100 | CompositingReasonPositionFixed |
100 | CompositingReasonOverflowScrollingTouch | 101 | CompositingReasonOverflowScrollingTouch |
101 | CompositingReasonOverflowScrollingParent | 102 | CompositingReasonOverflowScrollingParent |
102 | CompositingReasonOutOfFlowClipping | 103 | CompositingReasonOutOfFlowClipping |
103 | CompositingReasonVideoOverlay | 104 | CompositingReasonVideoOverlay |
104 | CompositingReasonWillChangeCompositingHint; | 105 | CompositingReasonWillChangeCompositingHint |
| 106 | CompositingReasonScrollBlocksOn; |
105 | 107 |
106 const uint64_t CompositingReasonComboAllDirectStyleDeterminedReasons = | 108 const uint64_t CompositingReasonComboAllDirectStyleDeterminedReasons = |
107 CompositingReason3DTransform | 109 CompositingReason3DTransform |
108 | CompositingReasonBackfaceVisibilityHidden | 110 | CompositingReasonBackfaceVisibilityHidden |
109 | CompositingReasonActiveAnimation | 111 | CompositingReasonActiveAnimation |
110 | CompositingReasonTransitionProperty | 112 | CompositingReasonTransitionProperty |
111 | CompositingReasonWillChangeCompositingHint; | 113 | CompositingReasonWillChangeCompositingHint |
| 114 | CompositingReasonScrollBlocksOn; |
112 | 115 |
113 const uint64_t CompositingReasonComboCompositedDescendants = | 116 const uint64_t CompositingReasonComboCompositedDescendants = |
114 CompositingReasonTransformWithCompositedDescendants | 117 CompositingReasonTransformWithCompositedDescendants |
115 | CompositingReasonIsolateCompositedDescendants | 118 | CompositingReasonIsolateCompositedDescendants |
116 | CompositingReasonOpacityWithCompositedDescendants | 119 | CompositingReasonOpacityWithCompositedDescendants |
117 | CompositingReasonMaskWithCompositedDescendants | 120 | CompositingReasonMaskWithCompositedDescendants |
118 | CompositingReasonFilterWithCompositedDescendants | 121 | CompositingReasonFilterWithCompositedDescendants |
119 | CompositingReasonBlendingWithCompositedDescendants | 122 | CompositingReasonBlendingWithCompositedDescendants |
120 | CompositingReasonReflectionWithCompositedDescendants | 123 | CompositingReasonReflectionWithCompositedDescendants |
121 | CompositingReasonClipsCompositingDescendants; | 124 | CompositingReasonClipsCompositingDescendants; |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
179 const char* shortName; | 182 const char* shortName; |
180 const char* description; | 183 const char* description; |
181 }; | 184 }; |
182 | 185 |
183 PLATFORM_EXPORT extern const CompositingReasonStringMap kCompositingReasonString
Map[]; | 186 PLATFORM_EXPORT extern const CompositingReasonStringMap kCompositingReasonString
Map[]; |
184 PLATFORM_EXPORT extern size_t kNumberOfCompositingReasons; | 187 PLATFORM_EXPORT extern size_t kNumberOfCompositingReasons; |
185 | 188 |
186 } // namespace blink | 189 } // namespace blink |
187 | 190 |
188 #endif // CompositingReasons_h | 191 #endif // CompositingReasons_h |
OLD | NEW |