OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2009, 2010 Apple Inc. All rights reserved. | 2 * Copyright (C) 2009, 2010 Apple Inc. All rights reserved. |
3 * Copyright (C) 2014 Google Inc. All rights reserved. | 3 * Copyright (C) 2014 Google Inc. All rights reserved. |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions | 6 * modification, are permitted provided that the following conditions |
7 * are met: | 7 * are met: |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
138 // FIXME: this is only necessary because there is frame code that assumes th
at composited frames are not squashed. | 138 // FIXME: this is only necessary because there is frame code that assumes th
at composited frames are not squashed. |
139 if (layer->renderer()->isRenderPart() || squashingLayer.renderer()->isRender
Part()) | 139 if (layer->renderer()->isRenderPart() || squashingLayer.renderer()->isRender
Part()) |
140 return CompositingReasonSquashingRenderPartIsDisallowed; | 140 return CompositingReasonSquashingRenderPartIsDisallowed; |
141 | 141 |
142 if (layer->reflectionInfo()) | 142 if (layer->reflectionInfo()) |
143 return CompositingReasonSquashingReflectionIsDisallowed; | 143 return CompositingReasonSquashingReflectionIsDisallowed; |
144 | 144 |
145 if (squashingWouldExceedSparsityTolerance(layer, squashingState)) | 145 if (squashingWouldExceedSparsityTolerance(layer, squashingState)) |
146 return CompositingReasonSquashingSparsityExceeded; | 146 return CompositingReasonSquashingSparsityExceeded; |
147 | 147 |
148 if (layer->renderer()->hasBlendMode()) | 148 if (layer->renderer()->style()->hasBlendMode()) |
149 return CompositingReasonSquashingBlendingIsDisallowed; | 149 return CompositingReasonSquashingBlendingIsDisallowed; |
150 | 150 |
151 // FIXME: this is not efficient, since it walks up the tree. We should store
these values on the CompositingInputsCache. | 151 // FIXME: this is not efficient, since it walks up the tree. We should store
these values on the CompositingInputsCache. |
152 if (layer->clippingContainer() != squashingLayer.clippingContainer() && !squ
ashingLayer.compositedLayerMapping()->containingSquashedLayer(layer->clippingCon
tainer(), squashingState.nextSquashedLayerIndex)) | 152 if (layer->clippingContainer() != squashingLayer.clippingContainer() && !squ
ashingLayer.compositedLayerMapping()->containingSquashedLayer(layer->clippingCon
tainer(), squashingState.nextSquashedLayerIndex)) |
153 return CompositingReasonSquashingClippingContainerMismatch; | 153 return CompositingReasonSquashingClippingContainerMismatch; |
154 | 154 |
155 // Composited descendants need to be clipped by a child containment graphics
layer, which would not be available if the layer is | 155 // Composited descendants need to be clipped by a child containment graphics
layer, which would not be available if the layer is |
156 // squashed (and therefore has no CLM nor a child containment graphics layer
). | 156 // squashed (and therefore has no CLM nor a child containment graphics layer
). |
157 if (m_compositor->clipsCompositingDescendants(layer)) | 157 if (m_compositor->clipsCompositingDescendants(layer)) |
158 return CompositingReasonSquashedLayerClipsCompositingDescendants; | 158 return CompositingReasonSquashedLayerClipsCompositingDescendants; |
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
290 | 290 |
291 RenderLayerStackingNodeIterator iterator(*layer->stackingNode(), NormalFlowC
hildren | PositiveZOrderChildren); | 291 RenderLayerStackingNodeIterator iterator(*layer->stackingNode(), NormalFlowC
hildren | PositiveZOrderChildren); |
292 while (RenderLayerStackingNode* curNode = iterator.next()) | 292 while (RenderLayerStackingNode* curNode = iterator.next()) |
293 assignLayersToBackingsInternal(curNode->layer(), squashingState, layersN
eedingPaintInvalidation); | 293 assignLayersToBackingsInternal(curNode->layer(), squashingState, layersN
eedingPaintInvalidation); |
294 | 294 |
295 if (squashingState.hasMostRecentMapping && &squashingState.mostRecentMapping
->owningLayer() == layer) | 295 if (squashingState.hasMostRecentMapping && &squashingState.mostRecentMapping
->owningLayer() == layer) |
296 squashingState.haveAssignedBackingsToEntireSquashingLayerSubtree = true; | 296 squashingState.haveAssignedBackingsToEntireSquashingLayerSubtree = true; |
297 } | 297 } |
298 | 298 |
299 } | 299 } |
OLD | NEW |