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

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

Issue 23431021: Refactoring animation code in accelerated path. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Fix typo 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
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 19 matching lines...) Expand all
30 #include "core/platform/graphics/FloatPoint3D.h" 30 #include "core/platform/graphics/FloatPoint3D.h"
31 #include "core/platform/graphics/GraphicsLayer.h" 31 #include "core/platform/graphics/GraphicsLayer.h"
32 #include "core/platform/graphics/GraphicsLayerClient.h" 32 #include "core/platform/graphics/GraphicsLayerClient.h"
33 #include "core/platform/graphics/transforms/TransformationMatrix.h" 33 #include "core/platform/graphics/transforms/TransformationMatrix.h"
34 #include "core/rendering/RenderLayer.h" 34 #include "core/rendering/RenderLayer.h"
35 35
36 namespace WebCore { 36 namespace WebCore {
37 37
38 class KeyframeList; 38 class KeyframeList;
39 class RenderLayerCompositor; 39 class RenderLayerCompositor;
40 class WebAnimationProvider;
40 41
41 enum CompositingLayerType { 42 enum CompositingLayerType {
42 NormalCompositingLayer, // non-tiled layer with backing store 43 NormalCompositingLayer, // non-tiled layer with backing store
43 MediaCompositingLayer, // layer that contains an image, video, webGL or plug in 44 MediaCompositingLayer, // layer that contains an image, video, webGL or plug in
44 ContainerCompositingLayer // layer with no backing store 45 ContainerCompositingLayer // layer with no backing store
45 }; 46 };
46 47
47 48
48 // A GraphicsLayerPaintInfo contains all the info needed to paint a partial subt ree of RenderLayers into a GraphicsLayer. 49 // A GraphicsLayerPaintInfo contains all the info needed to paint a partial subt ree of RenderLayers into a GraphicsLayer.
49 struct GraphicsLayerPaintInfo { 50 struct GraphicsLayerPaintInfo {
(...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after
240 void updateContentsRect(bool isSimpleContainer); 241 void updateContentsRect(bool isSimpleContainer);
241 242
242 void updateCompositingReasons(); 243 void updateCompositingReasons();
243 244
244 bool hasVisibleNonCompositingDescendantLayers() const; 245 bool hasVisibleNonCompositingDescendantLayers() const;
245 246
246 bool shouldClipCompositedBounds() const; 247 bool shouldClipCompositedBounds() const;
247 248
248 void doPaintTask(GraphicsLayerPaintInfo&, GraphicsContext*, const IntRect& c lip); 249 void doPaintTask(GraphicsLayerPaintInfo&, GraphicsContext*, const IntRect& c lip);
249 250
250 static CSSPropertyID graphicsLayerToCSSProperty(AnimatedPropertyID);
251 static AnimatedPropertyID cssToGraphicsLayerProperty(CSSPropertyID);
252
253 RenderLayer* m_owningLayer; 251 RenderLayer* m_owningLayer;
254 252
255 // The hierarchy of layers that is maintained by the RenderLayerBacking look s like this: 253 // The hierarchy of layers that is maintained by the RenderLayerBacking look s like this:
256 // 254 //
257 // m_ancestorScrollClippingLayer [OPTIONAL] 255 // m_ancestorScrollClippingLayer [OPTIONAL]
258 // + m_ancestorClippingLayer [OPTIONAL] 256 // + m_ancestorClippingLayer [OPTIONAL]
259 // + m_graphicsLayer 257 // + m_graphicsLayer
260 // + m_childContainmentLayer [OPTIONAL] <-OR-> m_scrollingLayer [OPTI ONAL] 258 // + m_childContainmentLayer [OPTIONAL] <-OR-> m_scrollingLayer [OPTI ONAL]
261 // + m_scrollingContents Layer [OPTIONAL] 259 // + m_scrollingContents Layer [OPTIONAL]
262 // 260 //
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
330 // 328 //
331 // With the hierarchy set up like this, the root content layer is able to sc roll without affecting 329 // With the hierarchy set up like this, the root content layer is able to sc roll without affecting
332 // the background layer (or repainting). 330 // the background layer (or repainting).
333 OwnPtr<GraphicsLayer> m_foregroundLayer; // Only used in cases where we need to draw the foreground separately. 331 OwnPtr<GraphicsLayer> m_foregroundLayer; // Only used in cases where we need to draw the foreground separately.
334 OwnPtr<GraphicsLayer> m_backgroundLayer; // Only used in cases where we need to draw the background separately. 332 OwnPtr<GraphicsLayer> m_backgroundLayer; // Only used in cases where we need to draw the background separately.
335 333
336 OwnPtr<GraphicsLayer> m_layerForHorizontalScrollbar; 334 OwnPtr<GraphicsLayer> m_layerForHorizontalScrollbar;
337 OwnPtr<GraphicsLayer> m_layerForVerticalScrollbar; 335 OwnPtr<GraphicsLayer> m_layerForVerticalScrollbar;
338 OwnPtr<GraphicsLayer> m_layerForScrollCorner; 336 OwnPtr<GraphicsLayer> m_layerForScrollCorner;
339 337
338 OwnPtr<WebAnimationProvider> m_animationProvider;
339
340 IntRect m_compositedBounds; 340 IntRect m_compositedBounds;
341 341
342 bool m_artificiallyInflatedBounds; // bounds had to be made non-zero to make transform-origin work 342 bool m_artificiallyInflatedBounds; // bounds had to be made non-zero to make transform-origin work
343 bool m_boundsConstrainedByClipping; 343 bool m_boundsConstrainedByClipping;
344 bool m_isMainFrameRenderViewLayer; 344 bool m_isMainFrameRenderViewLayer;
345 bool m_requiresOwnBackingStore; 345 bool m_requiresOwnBackingStore;
346 bool m_canCompositeFilters; 346 bool m_canCompositeFilters;
347 bool m_backgroundLayerPaintsFixedRootBackground; 347 bool m_backgroundLayerPaintsFixedRootBackground;
348 }; 348 };
349 349
350 } // namespace WebCore 350 } // namespace WebCore
351 351
352 #endif // RenderLayerBacking_h 352 #endif // RenderLayerBacking_h
OLDNEW
« no previous file with comments | « Source/core/platform/graphics/chromium/AnimationTranslationUtilTest.cpp ('k') | Source/core/rendering/RenderLayerBacking.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698