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 3486 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3497 CompositedLayerMappingPtr RenderLayer::compositedLayerMapping() const | 3497 CompositedLayerMappingPtr RenderLayer::compositedLayerMapping() const |
3498 { | 3498 { |
3499 ASSERT(isAllowedToQueryCompositingState()); | 3499 ASSERT(isAllowedToQueryCompositingState()); |
3500 return m_compositedLayerMapping.get(); | 3500 return m_compositedLayerMapping.get(); |
3501 } | 3501 } |
3502 | 3502 |
3503 CompositedLayerMappingPtr RenderLayer::ensureCompositedLayerMapping() | 3503 CompositedLayerMappingPtr RenderLayer::ensureCompositedLayerMapping() |
3504 { | 3504 { |
3505 if (!m_compositedLayerMapping) { | 3505 if (!m_compositedLayerMapping) { |
3506 m_compositedLayerMapping = adoptPtr(new CompositedLayerMapping(this)); | 3506 m_compositedLayerMapping = adoptPtr(new CompositedLayerMapping(this)); |
| 3507 m_compositedLayerMapping->setNeedsGeometryUpdate(); |
3507 | 3508 |
3508 updateOrRemoveFilterEffectRenderer(); | 3509 updateOrRemoveFilterEffectRenderer(); |
3509 | 3510 |
3510 if (RuntimeEnabledFeatures::cssCompositingEnabled()) | 3511 if (RuntimeEnabledFeatures::cssCompositingEnabled()) |
3511 compositedLayerMapping()->setBlendMode(m_blendInfo.blendMode()); | 3512 compositedLayerMapping()->setBlendMode(m_blendInfo.blendMode()); |
3512 } | 3513 } |
3513 return m_compositedLayerMapping.get(); | 3514 return m_compositedLayerMapping.get(); |
3514 } | 3515 } |
3515 | 3516 |
3516 void RenderLayer::clearCompositedLayerMapping(bool layerBeingDestroyed) | 3517 void RenderLayer::clearCompositedLayerMapping(bool layerBeingDestroyed) |
(...skipping 346 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3863 DisableCompositingQueryAsserts disabler; | 3864 DisableCompositingQueryAsserts disabler; |
3864 if (paintsWithFilters()) | 3865 if (paintsWithFilters()) |
3865 didPaintWithFilters = true; | 3866 didPaintWithFilters = true; |
3866 updateFilters(oldStyle, renderer()->style()); | 3867 updateFilters(oldStyle, renderer()->style()); |
3867 } | 3868 } |
3868 | 3869 |
3869 // FIXME: Remove incremental compositing updates after fixing the chicken/eg
g issues | 3870 // FIXME: Remove incremental compositing updates after fixing the chicken/eg
g issues |
3870 // https://code.google.com/p/chromium/issues/detail?id=343756 | 3871 // https://code.google.com/p/chromium/issues/detail?id=343756 |
3871 DisableCompositingQueryAsserts disabler; | 3872 DisableCompositingQueryAsserts disabler; |
3872 | 3873 |
| 3874 if (hasCompositedLayerMapping()) |
| 3875 compositedLayerMapping()->setNeedsGeometryUpdate(); |
| 3876 |
3873 const RenderStyle* newStyle = renderer()->style(); | 3877 const RenderStyle* newStyle = renderer()->style(); |
3874 | 3878 |
3875 compositor()->updateLayerCompositingState(this, RenderLayerCompositor::UseCh
ickenEggHacks); | 3879 compositor()->updateLayerCompositingState(this, RenderLayerCompositor::UseCh
ickenEggHacks); |
3876 // FIXME: this compositing logic should be pushed into the compositing code,
not here. | 3880 // FIXME: this compositing logic should be pushed into the compositing code,
not here. |
3877 if (needsCompositingLayersRebuiltForClip(oldStyle, newStyle) | 3881 if (needsCompositingLayersRebuiltForClip(oldStyle, newStyle) |
3878 || needsCompositingLayersRebuiltForOverflow(oldStyle, newStyle) | 3882 || needsCompositingLayersRebuiltForOverflow(oldStyle, newStyle) |
3879 || needsCompositingLayersRebuiltForFilters(oldStyle, newStyle, didPaintW
ithFilters) | 3883 || needsCompositingLayersRebuiltForFilters(oldStyle, newStyle, didPaintW
ithFilters) |
3880 || needsCompositingLayersRebuiltForBlending(oldStyle, newStyle)) { | 3884 || needsCompositingLayersRebuiltForBlending(oldStyle, newStyle)) { |
3881 compositor()->setCompositingLayersNeedRebuild(); | 3885 compositor()->setCompositingLayersNeedRebuild(); |
3882 } | 3886 } |
(...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4031 } | 4035 } |
4032 } | 4036 } |
4033 | 4037 |
4034 void showLayerTree(const WebCore::RenderObject* renderer) | 4038 void showLayerTree(const WebCore::RenderObject* renderer) |
4035 { | 4039 { |
4036 if (!renderer) | 4040 if (!renderer) |
4037 return; | 4041 return; |
4038 showLayerTree(renderer->enclosingLayer()); | 4042 showLayerTree(renderer->enclosingLayer()); |
4039 } | 4043 } |
4040 #endif | 4044 #endif |
OLD | NEW |