| 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 225 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 236 RenderLayerClipper& clipper() { return m_clipper; } | 236 RenderLayerClipper& clipper() { return m_clipper; } |
| 237 const RenderLayerClipper& clipper() const { return m_clipper; } | 237 const RenderLayerClipper& clipper() const { return m_clipper; } |
| 238 | 238 |
| 239 inline bool isPositionedContainer() const | 239 inline bool isPositionedContainer() const |
| 240 { | 240 { |
| 241 // FIXME: This is not in sync with containingBlock. | 241 // FIXME: This is not in sync with containingBlock. |
| 242 RenderLayerModelObject* layerRenderer = renderer(); | 242 RenderLayerModelObject* layerRenderer = renderer(); |
| 243 return isRootLayer() || layerRenderer->isPositioned() || hasTransform(); | 243 return isRootLayer() || layerRenderer->isPositioned() || hasTransform(); |
| 244 } | 244 } |
| 245 | 245 |
| 246 bool lostGroupedMapping() const { return m_lostGroupedMapping; } | |
| 247 void setLostGroupedMapping(bool b) { m_lostGroupedMapping = b; } | |
| 248 | |
| 249 void updateOrRemoveFilterEffectRenderer(); | 246 void updateOrRemoveFilterEffectRenderer(); |
| 250 | |
| 251 void updateSelfPaintingLayer(); | 247 void updateSelfPaintingLayer(); |
| 252 | 248 |
| 253 private: | 249 private: |
| 254 // TODO(ojan): Get rid of this. These are basically layer-tree-only paint ph
ases. | 250 // TODO(ojan): Get rid of this. These are basically layer-tree-only paint ph
ases. |
| 255 enum PaintLayerFlags { | 251 enum PaintLayerFlags { |
| 256 PaintContent, | 252 PaintContent, |
| 257 }; | 253 }; |
| 258 | 254 |
| 259 // Bounding box in the coordinates of this layer. | 255 // Bounding box in the coordinates of this layer. |
| 260 LayoutRect logicalBoundingBox() const; | 256 LayoutRect logicalBoundingBox() const; |
| (...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 354 // we ended up painting this layer or any desce
ndants (and therefore need to | 350 // we ended up painting this layer or any desce
ndants (and therefore need to |
| 355 // blend). | 351 // blend). |
| 356 | 352 |
| 357 unsigned m_3DTransformedDescendantStatusDirty : 1; | 353 unsigned m_3DTransformedDescendantStatusDirty : 1; |
| 358 // Set on a stacking context layer that has 3D descendants anywhere | 354 // Set on a stacking context layer that has 3D descendants anywhere |
| 359 // in a preserves3D hierarchy. Hint to do 3D-aware hit testing. | 355 // in a preserves3D hierarchy. Hint to do 3D-aware hit testing. |
| 360 unsigned m_has3DTransformedDescendant : 1; | 356 unsigned m_has3DTransformedDescendant : 1; |
| 361 | 357 |
| 362 unsigned m_hasFilterInfo : 1; | 358 unsigned m_hasFilterInfo : 1; |
| 363 | 359 |
| 364 // True if this render layer just lost its grouped mapping due to the Compos
itedLayerMapping being destroyed, | |
| 365 // and we don't yet know to what graphics layer this RenderLayer will be ass
igned. | |
| 366 unsigned m_lostGroupedMapping : 1; | |
| 367 | |
| 368 RenderLayerModelObject* m_renderer; | 360 RenderLayerModelObject* m_renderer; |
| 369 | 361 |
| 370 RenderLayer* m_parent; | 362 RenderLayer* m_parent; |
| 371 RenderLayer* m_previous; | 363 RenderLayer* m_previous; |
| 372 RenderLayer* m_next; | 364 RenderLayer* m_next; |
| 373 RenderLayer* m_first; | 365 RenderLayer* m_first; |
| 374 RenderLayer* m_last; | 366 RenderLayer* m_last; |
| 375 | 367 |
| 376 // Cached normal flow values for absolute positioned elements with static le
ft/top values. | 368 // Cached normal flow values for absolute positioned elements with static le
ft/top values. |
| 377 LayoutUnit m_staticInlinePosition; | 369 LayoutUnit m_staticInlinePosition; |
| 378 LayoutUnit m_staticBlockPosition; | 370 LayoutUnit m_staticBlockPosition; |
| 379 | 371 |
| 380 OwnPtr<TransformationMatrix> m_transform; | 372 OwnPtr<TransformationMatrix> m_transform; |
| 381 | 373 |
| 382 RenderLayerClipper m_clipper; // FIXME: Lazily allocate? | 374 RenderLayerClipper m_clipper; // FIXME: Lazily allocate? |
| 383 OwnPtr<RenderLayerStackingNode> m_stackingNode; | 375 OwnPtr<RenderLayerStackingNode> m_stackingNode; |
| 384 | 376 |
| 385 LayoutSize m_subpixelAccumulation; // The accumulated subpixel offset of a c
omposited layer's composited bounds compared to absolute coordinates. | 377 LayoutSize m_subpixelAccumulation; // The accumulated subpixel offset of a c
omposited layer's composited bounds compared to absolute coordinates. |
| 386 }; | 378 }; |
| 387 | 379 |
| 388 } // namespace blink | 380 } // namespace blink |
| 389 | 381 |
| 390 #ifndef NDEBUG | 382 #ifndef NDEBUG |
| 391 // Outside the WebCore namespace for ease of invocation from gdb. | 383 // Outside the WebCore namespace for ease of invocation from gdb. |
| 392 void showLayerTree(const blink::RenderLayer*); | 384 void showLayerTree(const blink::RenderLayer*); |
| 393 void showLayerTree(const blink::RenderObject*); | 385 void showLayerTree(const blink::RenderObject*); |
| 394 #endif | 386 #endif |
| 395 | 387 |
| 396 #endif // SKY_ENGINE_CORE_RENDERING_RENDERLAYER_H_ | 388 #endif // SKY_ENGINE_CORE_RENDERING_RENDERLAYER_H_ |
| OLD | NEW |