OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2003, 2009, 2012 Apple Inc. All rights reserved. | 2 * Copyright (C) 2003, 2009, 2012 Apple Inc. All rights reserved. |
3 * Copyright (C) 2013 Intel Corporation. All rights reserved. | 3 * Copyright (C) 2013 Intel Corporation. All rights reserved. |
4 * | 4 * |
5 * Portions are Copyright (C) 1998 Netscape Communications Corporation. | 5 * Portions are Copyright (C) 1998 Netscape Communications Corporation. |
6 * | 6 * |
7 * Other contributors: | 7 * Other contributors: |
8 * Robert O'Callahan <roc+@cs.cmu.edu> | 8 * Robert O'Callahan <roc+@cs.cmu.edu> |
9 * David Baron <dbaron@fas.harvard.edu> | 9 * David Baron <dbaron@fas.harvard.edu> |
10 * Christian Biesinger <cbiesinger@web.de> | 10 * Christian Biesinger <cbiesinger@web.de> |
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
152 // Bounding box relative to some ancestor layer. Pass offsetFromRoot if know
n. | 152 // Bounding box relative to some ancestor layer. Pass offsetFromRoot if know
n. |
153 LayoutRect physicalBoundingBox(const RenderLayer* ancestorLayer, const Layou
tPoint* offsetFromRoot = 0) const; | 153 LayoutRect physicalBoundingBox(const RenderLayer* ancestorLayer, const Layou
tPoint* offsetFromRoot = 0) const; |
154 LayoutRect physicalBoundingBoxIncludingReflectionAndStackingChildren(const R
enderLayer* ancestorLayer, const LayoutPoint& offsetFromRoot) const; | 154 LayoutRect physicalBoundingBoxIncludingReflectionAndStackingChildren(const R
enderLayer* ancestorLayer, const LayoutPoint& offsetFromRoot) const; |
155 | 155 |
156 // If true, this layer's children are included in its bounds for overlap tes
ting. | 156 // If true, this layer's children are included in its bounds for overlap tes
ting. |
157 // We can't rely on the children's positions if this layer has a filter that
could have moved the children's pixels around. | 157 // We can't rely on the children's positions if this layer has a filter that
could have moved the children's pixels around. |
158 bool overlapBoundsIncludeChildren() const { return hasFilter() && renderer()
->style()->filter().hasFilterThatMovesPixels(); } | 158 bool overlapBoundsIncludeChildren() const { return hasFilter() && renderer()
->style()->filter().hasFilterThatMovesPixels(); } |
159 | 159 |
160 LayoutRect boundingBoxForCompositing(const RenderLayer* ancestorLayer = 0) c
onst; | 160 LayoutRect boundingBoxForCompositing(const RenderLayer* ancestorLayer = 0) c
onst; |
161 | 161 |
162 LayoutUnit staticInlinePosition() const { return m_staticInlinePosition; } | |
163 LayoutUnit staticBlockPosition() const { return m_staticBlockPosition; } | |
164 | |
165 void setStaticInlinePosition(LayoutUnit position) { m_staticInlinePosition =
position; } | |
166 void setStaticBlockPosition(LayoutUnit position) { m_staticBlockPosition = p
osition; } | |
167 | |
168 LayoutSize subpixelAccumulation() const; | 162 LayoutSize subpixelAccumulation() const; |
169 void setSubpixelAccumulation(const LayoutSize&); | 163 void setSubpixelAccumulation(const LayoutSize&); |
170 | 164 |
171 bool hasTransform() const { return renderer()->hasTransform(); } | 165 bool hasTransform() const { return renderer()->hasTransform(); } |
172 // Note that this transform has the transform-origin baked in. | 166 // Note that this transform has the transform-origin baked in. |
173 TransformationMatrix* transform() const { return m_transform.get(); } | 167 TransformationMatrix* transform() const { return m_transform.get(); } |
174 // currentTransform computes a transform which takes accelerated animations
into account. The | 168 // currentTransform computes a transform which takes accelerated animations
into account. The |
175 // resulting transform has transform-origin baked in. If the layer does not
have a transform, | 169 // resulting transform has transform-origin baked in. If the layer does not
have a transform, |
176 // returns the identity matrix. | 170 // returns the identity matrix. |
177 TransformationMatrix currentTransform(RenderStyle::ApplyTransformOrigin = Re
nderStyle::IncludeTransformOrigin) const; | 171 TransformationMatrix currentTransform(RenderStyle::ApplyTransformOrigin = Re
nderStyle::IncludeTransformOrigin) const; |
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
307 unsigned m_hasFilterInfo : 1; | 301 unsigned m_hasFilterInfo : 1; |
308 | 302 |
309 RenderLayerModelObject* m_renderer; | 303 RenderLayerModelObject* m_renderer; |
310 | 304 |
311 RenderLayer* m_parent; | 305 RenderLayer* m_parent; |
312 RenderLayer* m_previous; | 306 RenderLayer* m_previous; |
313 RenderLayer* m_next; | 307 RenderLayer* m_next; |
314 RenderLayer* m_first; | 308 RenderLayer* m_first; |
315 RenderLayer* m_last; | 309 RenderLayer* m_last; |
316 | 310 |
317 // Cached normal flow values for absolute positioned elements with static le
ft/top values. | |
318 LayoutUnit m_staticInlinePosition; | |
319 LayoutUnit m_staticBlockPosition; | |
320 | |
321 OwnPtr<TransformationMatrix> m_transform; | 311 OwnPtr<TransformationMatrix> m_transform; |
322 | 312 |
323 RenderLayerClipper m_clipper; // FIXME: Lazily allocate? | 313 RenderLayerClipper m_clipper; // FIXME: Lazily allocate? |
324 OwnPtr<RenderLayerStackingNode> m_stackingNode; | 314 OwnPtr<RenderLayerStackingNode> m_stackingNode; |
325 | 315 |
326 LayoutSize m_subpixelAccumulation; // The accumulated subpixel offset of a c
omposited layer's composited bounds compared to absolute coordinates. | 316 LayoutSize m_subpixelAccumulation; // The accumulated subpixel offset of a c
omposited layer's composited bounds compared to absolute coordinates. |
327 }; | 317 }; |
328 | 318 |
329 } // namespace blink | 319 } // namespace blink |
330 | 320 |
331 #ifndef NDEBUG | 321 #ifndef NDEBUG |
332 // Outside the WebCore namespace for ease of invocation from gdb. | 322 // Outside the WebCore namespace for ease of invocation from gdb. |
333 void showLayerTree(const blink::RenderLayer*); | 323 void showLayerTree(const blink::RenderLayer*); |
334 void showLayerTree(const blink::RenderObject*); | 324 void showLayerTree(const blink::RenderObject*); |
335 #endif | 325 #endif |
336 | 326 |
337 #endif // SKY_ENGINE_CORE_RENDERING_RENDERLAYER_H_ | 327 #endif // SKY_ENGINE_CORE_RENDERING_RENDERLAYER_H_ |
OLD | NEW |