Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Side by Side Diff: Source/core/rendering/RenderLayerBacking.h

Issue 16688004: Large canvas does not honor containing div's border radius (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Replaced explicit baselines with NeedsRebaseline Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « Source/core/rendering/RenderLayer.cpp ('k') | Source/core/rendering/RenderLayerBacking.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2009, 2010, 2011 Apple Inc. All rights reserved. 2 * Copyright (C) 2009, 2010, 2011 Apple Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
104 GraphicsLayer* foregroundLayer() const { return m_foregroundLayer.get(); } 104 GraphicsLayer* foregroundLayer() const { return m_foregroundLayer.get(); }
105 105
106 GraphicsLayer* backgroundLayer() const { return m_backgroundLayer.get(); } 106 GraphicsLayer* backgroundLayer() const { return m_backgroundLayer.get(); }
107 bool backgroundLayerPaintsFixedRootBackground() const { return m_backgroundL ayerPaintsFixedRootBackground; } 107 bool backgroundLayerPaintsFixedRootBackground() const { return m_backgroundL ayerPaintsFixedRootBackground; }
108 108
109 bool hasScrollingLayer() const { return m_scrollingLayer; } 109 bool hasScrollingLayer() const { return m_scrollingLayer; }
110 GraphicsLayer* scrollingLayer() const { return m_scrollingLayer.get(); } 110 GraphicsLayer* scrollingLayer() const { return m_scrollingLayer.get(); }
111 GraphicsLayer* scrollingContentsLayer() const { return m_scrollingContentsLa yer.get(); } 111 GraphicsLayer* scrollingContentsLayer() const { return m_scrollingContentsLa yer.get(); }
112 112
113 bool hasMaskLayer() const { return m_maskLayer != 0; } 113 bool hasMaskLayer() const { return m_maskLayer != 0; }
114 bool hasChildClippingMaskLayer() const { return m_childClippingMaskLayer; }
114 115
115 GraphicsLayer* parentForSublayers() const; 116 GraphicsLayer* parentForSublayers() const;
116 GraphicsLayer* childForSuperlayers() const; 117 GraphicsLayer* childForSuperlayers() const;
117 118
118 // Returns true for a composited layer that has no backing store of its own, so 119 // Returns true for a composited layer that has no backing store of its own, so
119 // paints into some ancestor layer. 120 // paints into some ancestor layer.
120 bool paintsIntoCompositedAncestor() const { return !m_requiresOwnBackingStor e; } 121 bool paintsIntoCompositedAncestor() const { return !m_requiresOwnBackingStor e; }
121 122
122 void setRequiresOwnBackingStore(bool); 123 void setRequiresOwnBackingStore(bool);
123 124
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
190 191
191 RenderLayerModelObject* renderer() const { return m_owningLayer->renderer(); } 192 RenderLayerModelObject* renderer() const { return m_owningLayer->renderer(); }
192 RenderLayerCompositor* compositor() const { return m_owningLayer->compositor (); } 193 RenderLayerCompositor* compositor() const { return m_owningLayer->compositor (); }
193 194
194 void updateInternalHierarchy(); 195 void updateInternalHierarchy();
195 bool updateClippingLayers(bool needsAncestorClip, bool needsDescendantClip, bool needsScrollClip); 196 bool updateClippingLayers(bool needsAncestorClip, bool needsDescendantClip, bool needsScrollClip);
196 bool updateOverflowControlsLayers(bool needsHorizontalScrollbarLayer, bool n eedsVerticalScrollbarLayer, bool needsScrollCornerLayer); 197 bool updateOverflowControlsLayers(bool needsHorizontalScrollbarLayer, bool n eedsVerticalScrollbarLayer, bool needsScrollCornerLayer);
197 bool updateForegroundLayer(bool needsForegroundLayer); 198 bool updateForegroundLayer(bool needsForegroundLayer);
198 bool updateBackgroundLayer(bool needsBackgroundLayer); 199 bool updateBackgroundLayer(bool needsBackgroundLayer);
199 bool updateMaskLayer(bool needsMaskLayer); 200 bool updateMaskLayer(bool needsMaskLayer);
201 bool updateClippingMaskLayers(bool needsChildClippingMaskLayer);
200 bool requiresHorizontalScrollbarLayer() const { return m_owningLayer->horizo ntalScrollbar(); } 202 bool requiresHorizontalScrollbarLayer() const { return m_owningLayer->horizo ntalScrollbar(); }
201 bool requiresVerticalScrollbarLayer() const { return m_owningLayer->vertical Scrollbar(); } 203 bool requiresVerticalScrollbarLayer() const { return m_owningLayer->vertical Scrollbar(); }
202 bool requiresScrollCornerLayer() const { return !m_owningLayer->scrollCorner AndResizerRect().isEmpty(); } 204 bool requiresScrollCornerLayer() const { return !m_owningLayer->scrollCorner AndResizerRect().isEmpty(); }
203 bool updateScrollingLayers(bool scrollingLayers); 205 bool updateScrollingLayers(bool scrollingLayers);
204 void updateScrollParent(RenderLayer*); 206 void updateScrollParent(RenderLayer*);
205 void updateClipParent(RenderLayer*); 207 void updateClipParent(RenderLayer*);
206 void updateDrawsContent(bool isSimpleContainer); 208 void updateDrawsContent(bool isSimpleContainer);
207 void registerScrollingLayers(); 209 void registerScrollingLayers();
208 210
209 void setBackgroundLayerPaintsFixedRootBackground(bool); 211 void setBackgroundLayerPaintsFixedRootBackground(bool);
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
300 OwnPtr<GraphicsLayer> m_ancestorClippingLayer; // Only used if we are clippe d by an ancestor which is not a stacking context. 302 OwnPtr<GraphicsLayer> m_ancestorClippingLayer; // Only used if we are clippe d by an ancestor which is not a stacking context.
301 OwnPtr<GraphicsLayer> m_graphicsLayer; 303 OwnPtr<GraphicsLayer> m_graphicsLayer;
302 OwnPtr<GraphicsLayer> m_childContainmentLayer; // Only used if we have clipp ing on a stacking context with compositing children. 304 OwnPtr<GraphicsLayer> m_childContainmentLayer; // Only used if we have clipp ing on a stacking context with compositing children.
303 OwnPtr<GraphicsLayer> m_scrollingLayer; // Only used if the layer is using c omposited scrolling. 305 OwnPtr<GraphicsLayer> m_scrollingLayer; // Only used if the layer is using c omposited scrolling.
304 OwnPtr<GraphicsLayer> m_scrollingContentsLayer; // Only used if the layer is using composited scrolling. 306 OwnPtr<GraphicsLayer> m_scrollingContentsLayer; // Only used if the layer is using composited scrolling.
305 307
306 // This layer is also added to the hierarchy by the RLB, but in a different way than 308 // This layer is also added to the hierarchy by the RLB, but in a different way than
307 // the layers above. It's added to m_graphicsLayer as its mask layer (natura lly) if 309 // the layers above. It's added to m_graphicsLayer as its mask layer (natura lly) if
308 // we have a mask, and isn't part of the typical hierarchy (it has no childr en). 310 // we have a mask, and isn't part of the typical hierarchy (it has no childr en).
309 OwnPtr<GraphicsLayer> m_maskLayer; // Only used if we have a mask. 311 OwnPtr<GraphicsLayer> m_maskLayer; // Only used if we have a mask.
312 OwnPtr<GraphicsLayer> m_childClippingMaskLayer; // Only used if we have to c lip child layers or accelerated contents with border radius or clip-path.
310 313
311 // There are two other (optional) layers whose painting is managed by the Re nderLayerBacking, 314 // There are two other (optional) layers whose painting is managed by the Re nderLayerBacking,
312 // but whose position in the hierarchy is maintained by the RenderLayerCompo sitor. These 315 // but whose position in the hierarchy is maintained by the RenderLayerCompo sitor. These
313 // are the foreground and background layers. The foreground layer exists if we have composited 316 // are the foreground and background layers. The foreground layer exists if we have composited
314 // descendants with negative z-order. We need the extra layer in this case b ecause the layer 317 // descendants with negative z-order. We need the extra layer in this case b ecause the layer
315 // needs to draw both below (for the background, say) and above (for the nor mal flow content, say) 318 // needs to draw both below (for the background, say) and above (for the nor mal flow content, say)
316 // the negative z-order descendants and this is impossible with a single lay er. The RLC handles 319 // the negative z-order descendants and this is impossible with a single lay er. The RLC handles
317 // inserting m_foregroundLayer in the correct position in our descendant lis t for us (right after 320 // inserting m_foregroundLayer in the correct position in our descendant lis t for us (right after
318 // the neg z-order dsecendants). 321 // the neg z-order dsecendants).
319 // 322 //
(...skipping 23 matching lines...) Expand all
343 bool m_boundsConstrainedByClipping; 346 bool m_boundsConstrainedByClipping;
344 bool m_isMainFrameRenderViewLayer; 347 bool m_isMainFrameRenderViewLayer;
345 bool m_requiresOwnBackingStore; 348 bool m_requiresOwnBackingStore;
346 bool m_canCompositeFilters; 349 bool m_canCompositeFilters;
347 bool m_backgroundLayerPaintsFixedRootBackground; 350 bool m_backgroundLayerPaintsFixedRootBackground;
348 }; 351 };
349 352
350 } // namespace WebCore 353 } // namespace WebCore
351 354
352 #endif // RenderLayerBacking_h 355 #endif // RenderLayerBacking_h
OLDNEW
« no previous file with comments | « Source/core/rendering/RenderLayer.cpp ('k') | Source/core/rendering/RenderLayerBacking.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698