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

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

Issue 360833002: Divorce PaintInvalidationState from LayoutState (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Address Julien's comments Created 6 years, 5 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 | Annotate | Revision Log
« no previous file with comments | « Source/core/rendering/RenderInline.cpp ('k') | Source/core/rendering/RenderLayer.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) 2003, 2009, 2012 Apple Inc. All rights reserved. 2 * Copyright (C) 2003, 2009, 2012 Apple Inc. All rights reserved.
3 * Copyright (C) 2013 Intel Corporation. All rights reserved. 3 * Copyright (C) 2013 Intel Corporation. All rights reserved.
4 * 4 *
5 * Portions are Copyright (C) 1998 Netscape Communications Corporation. 5 * Portions are Copyright (C) 1998 Netscape Communications Corporation.
6 * 6 *
7 * Other contributors: 7 * Other contributors:
8 * Robert O'Callahan <roc+@cs.cmu.edu> 8 * Robert O'Callahan <roc+@cs.cmu.edu>
9 * David Baron <dbaron@fas.harvard.edu> 9 * David Baron <dbaron@fas.harvard.edu>
10 * Christian Biesinger <cbiesinger@web.de> 10 * Christian Biesinger <cbiesinger@web.de>
(...skipping 328 matching lines...) Expand 10 before | Expand all | Expand 10 after
339 bool clipsCompositingDescendantsWithBorderRadius() const; 339 bool clipsCompositingDescendantsWithBorderRadius() const;
340 340
341 RenderLayer* scrollParent() const 341 RenderLayer* scrollParent() const
342 { 342 {
343 return const_cast<RenderLayer*>(compositingInputs().scrollParent); 343 return const_cast<RenderLayer*>(compositingInputs().scrollParent);
344 } 344 }
345 345
346 // Computes the position of the given render object in the space of |paintIn validationContainer|. 346 // Computes the position of the given render object in the space of |paintIn validationContainer|.
347 // FIXME: invert the logic to have paint invalidation containers take care o f painting objects into them, rather than the reverse. 347 // FIXME: invert the logic to have paint invalidation containers take care o f painting objects into them, rather than the reverse.
348 // This will allow us to clean up this static method messiness. 348 // This will allow us to clean up this static method messiness.
349 static LayoutPoint positionFromPaintInvalidationContainer(const RenderObject *, const RenderLayerModelObject* paintInvalidationContainer); 349 static LayoutPoint positionFromPaintInvalidationContainer(const RenderObject *, const RenderLayerModelObject* paintInvalidationContainer, const PaintInvalida tionState* = 0);
350 350
351 static void mapRectToPaintBackingCoordinates(const RenderLayerModelObject* p aintInvalidationContainer, LayoutRect&); 351 static void mapRectToPaintBackingCoordinates(const RenderLayerModelObject* p aintInvalidationContainer, LayoutRect&);
352 352
353 // Adjusts the given rect (in the coordinate space of the RenderObject) to t he coordinate space of |paintInvalidationContainer|'s GraphicsLayer backing. 353 // Adjusts the given rect (in the coordinate space of the RenderObject) to t he coordinate space of |paintInvalidationContainer|'s GraphicsLayer backing.
354 static void mapRectToPaintInvalidationBacking(const RenderObject*, const Ren derLayerModelObject* paintInvalidationContainer, LayoutRect&); 354 static void mapRectToPaintInvalidationBacking(const RenderObject*, const Ren derLayerModelObject* paintInvalidationContainer, LayoutRect&, const PaintInvalid ationState* = 0);
355 355
356 // Computes the bounding paint invalidation rect for |renderObject|, in the coordinate space of |paintInvalidationContainer|'s GraphicsLayer backing. 356 // Computes the bounding paint invalidation rect for |renderObject|, in the coordinate space of |paintInvalidationContainer|'s GraphicsLayer backing.
357 static LayoutRect computePaintInvalidationRect(const RenderObject*, const Re nderLayer* paintInvalidationContainer); 357 static LayoutRect computePaintInvalidationRect(const RenderObject*, const Re nderLayer* paintInvalidationContainer, const PaintInvalidationState* = 0);
358 358
359 bool paintsWithTransparency(PaintBehavior paintBehavior) const 359 bool paintsWithTransparency(PaintBehavior paintBehavior) const
360 { 360 {
361 return isTransparent() && ((paintBehavior & PaintBehaviorFlattenComposit ingLayers) || compositingState() != PaintsIntoOwnBacking); 361 return isTransparent() && ((paintBehavior & PaintBehaviorFlattenComposit ingLayers) || compositingState() != PaintsIntoOwnBacking);
362 } 362 }
363 363
364 bool paintsWithTransform(PaintBehavior) const; 364 bool paintsWithTransform(PaintBehavior) const;
365 365
366 // Returns true if background phase is painted opaque in the given rect. 366 // Returns true if background phase is painted opaque in the given rect.
367 // The query rect is given in local coordinates. 367 // The query rect is given in local coordinates.
(...skipping 355 matching lines...) Expand 10 before | Expand all | Expand 10 after
723 723
724 } // namespace WebCore 724 } // namespace WebCore
725 725
726 #ifndef NDEBUG 726 #ifndef NDEBUG
727 // Outside the WebCore namespace for ease of invocation from gdb. 727 // Outside the WebCore namespace for ease of invocation from gdb.
728 void showLayerTree(const WebCore::RenderLayer*); 728 void showLayerTree(const WebCore::RenderLayer*);
729 void showLayerTree(const WebCore::RenderObject*); 729 void showLayerTree(const WebCore::RenderObject*);
730 #endif 730 #endif
731 731
732 #endif // RenderLayer_h 732 #endif // RenderLayer_h
OLDNEW
« no previous file with comments | « Source/core/rendering/RenderInline.cpp ('k') | Source/core/rendering/RenderLayer.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698