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 "wtf/MathExtras.h" | 8 #include "wtf/MathExtras.h" |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 | 10 |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
81 | CompositingReasonTransitionProperty | 81 | CompositingReasonTransitionProperty |
82 | CompositingReasonFilters | 82 | CompositingReasonFilters |
83 | CompositingReasonPositionFixed | 83 | CompositingReasonPositionFixed |
84 | CompositingReasonPositionSticky | 84 | CompositingReasonPositionSticky |
85 | CompositingReasonOverflowScrollingTouch | 85 | CompositingReasonOverflowScrollingTouch |
86 | CompositingReasonOverflowScrollingParent | 86 | CompositingReasonOverflowScrollingParent |
87 | CompositingReasonOutOfFlowClipping | 87 | CompositingReasonOutOfFlowClipping |
88 | CompositingReasonVideoOverlay | 88 | CompositingReasonVideoOverlay |
89 | CompositingReasonWillChange; | 89 | CompositingReasonWillChange; |
90 | 90 |
| 91 const uint64_t CompositingReasonComboAllStyleDeterminedDirectReasons = |
| 92 CompositingReason3DTransform |
| 93 | CompositingReasonVideo |
| 94 | CompositingReasonCanvas |
| 95 | CompositingReasonPlugin |
| 96 | CompositingReasonIFrame |
| 97 | CompositingReasonBackfaceVisibilityHidden |
| 98 | CompositingReasonActiveAnimation |
| 99 | CompositingReasonTransitionProperty |
| 100 | CompositingReasonFilters |
| 101 | CompositingReasonVideoOverlay |
| 102 | CompositingReasonWillChange; |
| 103 |
91 const uint64_t CompositingReasonComboReasonsThatRequireOwnBacking = | 104 const uint64_t CompositingReasonComboReasonsThatRequireOwnBacking = |
92 CompositingReasonComboAllDirectReasons | 105 CompositingReasonComboAllDirectReasons |
93 | CompositingReasonOverlap | 106 | CompositingReasonOverlap |
94 | CompositingReasonAssumedOverlap | 107 | CompositingReasonAssumedOverlap |
95 | CompositingReasonNegativeZIndexChildren | 108 | CompositingReasonNegativeZIndexChildren |
96 | CompositingReasonNoSquashingTargetFound | 109 | CompositingReasonNoSquashingTargetFound |
97 | CompositingReasonTransformWithCompositedDescendants | 110 | CompositingReasonTransformWithCompositedDescendants |
98 | CompositingReasonOpacityWithCompositedDescendants | 111 | CompositingReasonOpacityWithCompositedDescendants |
99 | CompositingReasonMaskWithCompositedDescendants | 112 | CompositingReasonMaskWithCompositedDescendants |
100 | CompositingReasonFilterWithCompositedDescendants | 113 | CompositingReasonFilterWithCompositedDescendants |
101 | CompositingReasonBlendingWithCompositedDescendants | 114 | CompositingReasonBlendingWithCompositedDescendants |
102 | CompositingReasonIsolateCompositedDescendants | 115 | CompositingReasonIsolateCompositedDescendants |
103 | CompositingReasonPreserve3DWith3DDescendants; // preserve-3d has to create
backing store to ensure that 3d-transformed elements intersect. | 116 | CompositingReasonPreserve3DWith3DDescendants; // preserve-3d has to create
backing store to ensure that 3d-transformed elements intersect. |
104 | 117 |
105 const uint64_t CompositingReasonComboSquashableReasons = | 118 const uint64_t CompositingReasonComboSquashableReasons = |
106 CompositingReasonOverlap | 119 CompositingReasonOverlap |
107 | CompositingReasonAssumedOverlap; | 120 | CompositingReasonAssumedOverlap; |
108 | 121 |
109 typedef uint64_t CompositingReasons; | 122 typedef uint64_t CompositingReasons; |
110 | 123 |
111 struct CompositingReasonStringMap { | 124 struct CompositingReasonStringMap { |
112 CompositingReasons reason; | 125 CompositingReasons reason; |
113 const char* shortName; | 126 const char* shortName; |
114 const char* description; | 127 const char* description; |
115 }; | 128 }; |
116 | 129 |
| 130 // FIXME: This static data shouldn't be in a header. When it's in the header |
| 131 // it's copied into every compilation unit that includes the header. |
117 static const CompositingReasonStringMap compositingReasonStringMap[] = { | 132 static const CompositingReasonStringMap compositingReasonStringMap[] = { |
118 { CompositingReasonNone, | 133 { CompositingReasonNone, |
119 "Unknown", | 134 "Unknown", |
120 "No reason given" }, | 135 "No reason given" }, |
121 { CompositingReason3DTransform, | 136 { CompositingReason3DTransform, |
122 "transform3D", | 137 "transform3D", |
123 "Has a 3d transform" }, | 138 "Has a 3d transform" }, |
124 { CompositingReasonVideo, | 139 { CompositingReasonVideo, |
125 "video", | 140 "video", |
126 "Is an accelerated video" }, | 141 "Is an accelerated video" }, |
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
254 "layerForMask", | 269 "layerForMask", |
255 "Secondary layer, to contain the mask contents" }, | 270 "Secondary layer, to contain the mask contents" }, |
256 { CompositingReasonLayerForClippingMask, | 271 { CompositingReasonLayerForClippingMask, |
257 "layerForClippingMask", | 272 "layerForClippingMask", |
258 "Secondary layer, for clipping mask" } | 273 "Secondary layer, for clipping mask" } |
259 }; | 274 }; |
260 | 275 |
261 } // namespace WebCore | 276 } // namespace WebCore |
262 | 277 |
263 #endif // CompositingReasons_h | 278 #endif // CompositingReasons_h |
OLD | NEW |