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

Side by Side Diff: Source/core/rendering/svg/SVGRenderSupport.h

Issue 327093003: [RAL] Reduce SVG tree walks (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Added svg/repaint/image-with-clip-path.svg to the rebaseline list Created 6 years, 6 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
OLDNEW
1 /** 1 /**
2 * Copyright (C) 2007 Rob Buis <buis@kde.org> 2 * Copyright (C) 2007 Rob Buis <buis@kde.org>
3 * Copyright (C) 2007 Nikolas Zimmermann <zimmermann@kde.org> 3 * Copyright (C) 2007 Nikolas Zimmermann <zimmermann@kde.org>
4 * Copyright (C) 2007 Eric Seidel <eric@webkit.org> 4 * Copyright (C) 2007 Eric Seidel <eric@webkit.org>
5 * Copyright (C) 2009 Google, Inc. All rights reserved. 5 * Copyright (C) 2009 Google, Inc. All rights reserved.
6 * Copyright (C) Research In Motion Limited 2010. All rights reserved. 6 * Copyright (C) Research In Motion Limited 2010. All rights reserved.
7 * 7 *
8 * This library is free software; you can redistribute it and/or 8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Library General Public 9 * modify it under the terms of the GNU Library General Public
10 * License as published by the Free Software Foundation; either 10 * License as published by the Free Software Foundation; either
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
59 // Determines whether a container needs to be laid out because it's filtered and a child is being laid out. 59 // Determines whether a container needs to be laid out because it's filtered and a child is being laid out.
60 static bool filtersForceContainerLayout(RenderObject*); 60 static bool filtersForceContainerLayout(RenderObject*);
61 61
62 // Determines whether the passed point lies in a clipping area 62 // Determines whether the passed point lies in a clipping area
63 static bool pointInClippingArea(RenderObject*, const FloatPoint&); 63 static bool pointInClippingArea(RenderObject*, const FloatPoint&);
64 64
65 static void computeContainerBoundingBoxes(const RenderObject* container, Flo atRect& objectBoundingBox, bool& objectBoundingBoxValid, FloatRect& strokeBoundi ngBox, FloatRect& repaintBoundingBox); 65 static void computeContainerBoundingBoxes(const RenderObject* container, Flo atRect& objectBoundingBox, bool& objectBoundingBoxValid, FloatRect& strokeBoundi ngBox, FloatRect& repaintBoundingBox);
66 66
67 static bool paintInfoIntersectsRepaintRect(const FloatRect& localRepaintRect , const AffineTransform& localTransform, const PaintInfo&); 67 static bool paintInfoIntersectsRepaintRect(const FloatRect& localRepaintRect , const AffineTransform& localTransform, const PaintInfo&);
68 68
69 static bool parentTransformDidChange(RenderObject*);
70
69 // Important functions used by nearly all SVG renderers centralizing coordin ate transformations / repaint rect calculations 71 // Important functions used by nearly all SVG renderers centralizing coordin ate transformations / repaint rect calculations
70 static LayoutRect clippedOverflowRectForRepaint(const RenderObject*, const R enderLayerModelObject* repaintContainer); 72 static LayoutRect clippedOverflowRectForRepaint(const RenderObject*, const R enderLayerModelObject* repaintContainer);
71 static void computeFloatRectForRepaint(const RenderObject*, const RenderLaye rModelObject* repaintContainer, FloatRect&, bool fixed); 73 static void computeFloatRectForRepaint(const RenderObject*, const RenderLaye rModelObject* repaintContainer, FloatRect&, bool fixed);
72 static void mapLocalToContainer(const RenderObject*, const RenderLayerModelO bject* repaintContainer, TransformState&, bool* wasFixed = 0); 74 static void mapLocalToContainer(const RenderObject*, const RenderLayerModelO bject* repaintContainer, TransformState&, bool* wasFixed = 0);
73 static const RenderObject* pushMappingToContainer(const RenderObject*, const RenderLayerModelObject* ancestorToStopAt, RenderGeometryMap&); 75 static const RenderObject* pushMappingToContainer(const RenderObject*, const RenderLayerModelObject* ancestorToStopAt, RenderGeometryMap&);
74 static bool checkForSVGRepaintDuringLayout(RenderObject*); 76 static bool checkForSVGRepaintDuringLayout(RenderObject*);
75 77
76 // Shared between SVG renderers and resources. 78 // Shared between SVG renderers and resources.
77 static void applyStrokeStyleToContext(GraphicsContext*, const RenderStyle*, const RenderObject*); 79 static void applyStrokeStyleToContext(GraphicsContext*, const RenderStyle*, const RenderObject*);
78 static void applyStrokeStyleToStrokeData(StrokeData*, const RenderStyle*, co nst RenderObject*); 80 static void applyStrokeStyleToStrokeData(StrokeData*, const RenderStyle*, co nst RenderObject*);
(...skipping 10 matching lines...) Expand all
89 91
90 private: 92 private:
91 static void updateObjectBoundingBox(FloatRect& objectBoundingBox, bool& obje ctBoundingBoxValid, RenderObject* other, FloatRect otherBoundingBox); 93 static void updateObjectBoundingBox(FloatRect& objectBoundingBox, bool& obje ctBoundingBoxValid, RenderObject* other, FloatRect otherBoundingBox);
92 static void invalidateResourcesOfChildren(RenderObject* start); 94 static void invalidateResourcesOfChildren(RenderObject* start);
93 static bool layoutSizeOfNearestViewportChanged(const RenderObject* start); 95 static bool layoutSizeOfNearestViewportChanged(const RenderObject* start);
94 }; 96 };
95 97
96 } // namespace WebCore 98 } // namespace WebCore
97 99
98 #endif // SVGRenderSupport_h 100 #endif // SVGRenderSupport_h
OLDNEW
« no previous file with comments | « Source/core/rendering/svg/RenderSVGModelObject.cpp ('k') | Source/core/rendering/svg/SVGRenderSupport.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698