OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All rights
reserved. | 2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All rights
reserved. |
3 * | 3 * |
4 * Portions are Copyright (C) 1998 Netscape Communications Corporation. | 4 * Portions are Copyright (C) 1998 Netscape Communications Corporation. |
5 * | 5 * |
6 * Other contributors: | 6 * Other contributors: |
7 * Robert O'Callahan <roc+@cs.cmu.edu> | 7 * Robert O'Callahan <roc+@cs.cmu.edu> |
8 * David Baron <dbaron@fas.harvard.edu> | 8 * David Baron <dbaron@fas.harvard.edu> |
9 * Christian Biesinger <cbiesinger@web.de> | 9 * Christian Biesinger <cbiesinger@web.de> |
10 * Randall Jesup <rjesup@wgate.com> | 10 * Randall Jesup <rjesup@wgate.com> |
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
107 #endif | 107 #endif |
108 | 108 |
109 if (m_posZOrderList) | 109 if (m_posZOrderList) |
110 m_posZOrderList->clear(); | 110 m_posZOrderList->clear(); |
111 if (m_negZOrderList) | 111 if (m_negZOrderList) |
112 m_negZOrderList->clear(); | 112 m_negZOrderList->clear(); |
113 m_zOrderListsDirty = true; | 113 m_zOrderListsDirty = true; |
114 | 114 |
115 m_descendantsAreContiguousInStackingOrderDirty = true; | 115 m_descendantsAreContiguousInStackingOrderDirty = true; |
116 | 116 |
117 if (!renderer()->documentBeingDestroyed()) { | 117 if (!renderer()->documentBeingDestroyed()) |
118 compositor()->setNeedsUpdateCompositingRequirementsState(); | |
119 compositor()->setCompositingLayersNeedRebuild(); | 118 compositor()->setCompositingLayersNeedRebuild(); |
120 } | |
121 } | 119 } |
122 | 120 |
123 void RenderLayerStackingNode::dirtyStackingContextZOrderLists() | 121 void RenderLayerStackingNode::dirtyStackingContextZOrderLists() |
124 { | 122 { |
125 RenderLayerStackingNode* stackingContextNode = ancestorStackingContextNode()
; | 123 RenderLayerStackingNode* stackingContextNode = ancestorStackingContextNode()
; |
126 if (stackingContextNode) | 124 if (stackingContextNode) |
127 stackingContextNode->dirtyZOrderLists(); | 125 stackingContextNode->dirtyZOrderLists(); |
128 | 126 |
129 RenderLayerStackingNode* stackingNode = ancestorStackingNode(); | 127 RenderLayerStackingNode* stackingNode = ancestorStackingNode(); |
130 if (stackingNode && stackingNode != stackingContextNode) | 128 if (stackingNode && stackingNode != stackingContextNode) |
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
310 bool isStackingContext = this->isStackingContext(); | 308 bool isStackingContext = this->isStackingContext(); |
311 if (isStackingContext == wasStackingContext && oldVisibility == renderer()->
style()->visibility() && oldZIndex == zIndex()) | 309 if (isStackingContext == wasStackingContext && oldVisibility == renderer()->
style()->visibility() && oldZIndex == zIndex()) |
312 return; | 310 return; |
313 | 311 |
314 dirtyStackingContextZOrderLists(); | 312 dirtyStackingContextZOrderLists(); |
315 | 313 |
316 if (isStackingContext) | 314 if (isStackingContext) |
317 dirtyZOrderLists(); | 315 dirtyZOrderLists(); |
318 else | 316 else |
319 clearZOrderLists(); | 317 clearZOrderLists(); |
320 | |
321 compositor()->setNeedsUpdateCompositingRequirementsState(); | |
322 } | 318 } |
323 | 319 |
324 bool RenderLayerStackingNode::shouldBeNormalFlowOnly() const | 320 bool RenderLayerStackingNode::shouldBeNormalFlowOnly() const |
325 { | 321 { |
326 const bool couldBeNormalFlow = renderer()->hasOverflowClip() | 322 const bool couldBeNormalFlow = renderer()->hasOverflowClip() |
327 || renderer()->hasReflection() | 323 || renderer()->hasReflection() |
328 || renderer()->hasMask() | 324 || renderer()->hasMask() |
329 || renderer()->isCanvas() | 325 || renderer()->isCanvas() |
330 || renderer()->isVideo() | 326 || renderer()->isVideo() |
331 || renderer()->isEmbeddedObject() | 327 || renderer()->isEmbeddedObject() |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
372 return ancestor->stackingNode(); | 368 return ancestor->stackingNode(); |
373 return 0; | 369 return 0; |
374 } | 370 } |
375 | 371 |
376 RenderLayerModelObject* RenderLayerStackingNode::renderer() const | 372 RenderLayerModelObject* RenderLayerStackingNode::renderer() const |
377 { | 373 { |
378 return m_layer->renderer(); | 374 return m_layer->renderer(); |
379 } | 375 } |
380 | 376 |
381 } // namespace WebCore | 377 } // namespace WebCore |
OLD | NEW |