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

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: 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 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
65 static bool filtersForceContainerLayout(RenderObject*); 65 static bool filtersForceContainerLayout(RenderObject*);
66 66
67 // Determines whether the passed point lies in a clipping area 67 // Determines whether the passed point lies in a clipping area
68 static bool pointInClippingArea(RenderObject*, const FloatPoint&); 68 static bool pointInClippingArea(RenderObject*, const FloatPoint&);
69 69
70 template <typename RenderObjectType> 70 template <typename RenderObjectType>
71 static void computeContainerBoundingBoxes(const RenderObjectType* container, FloatRect& objectBoundingBox, bool& objectBoundingBoxValid, FloatRect& strokeBo undingBox, FloatRect& repaintBoundingBox); 71 static void computeContainerBoundingBoxes(const RenderObjectType* container, FloatRect& objectBoundingBox, bool& objectBoundingBoxValid, FloatRect& strokeBo undingBox, FloatRect& repaintBoundingBox);
72 72
73 static bool paintInfoIntersectsRepaintRect(const FloatRect& localRepaintRect , const AffineTransform& localTransform, const PaintInfo&); 73 static bool paintInfoIntersectsRepaintRect(const FloatRect& localRepaintRect , const AffineTransform& localTransform, const PaintInfo&);
74 74
75 static bool parentTransformDidChange(RenderObject*);
leviw_travelin_and_unemployed 2014/06/10 23:32:26 Why RenderObject and not RenderSVGModelObject? I g
pdr. 2014/06/11 03:09:24 Sometimes svg.. https://docs.google.com/a/chromium
76
75 // Important functions used by nearly all SVG renderers centralizing coordin ate transformations / repaint rect calculations 77 // Important functions used by nearly all SVG renderers centralizing coordin ate transformations / repaint rect calculations
76 static LayoutRect clippedOverflowRectForRepaint(const RenderObject*, const R enderLayerModelObject* repaintContainer); 78 static LayoutRect clippedOverflowRectForRepaint(const RenderObject*, const R enderLayerModelObject* repaintContainer);
77 static void computeFloatRectForRepaint(const RenderObject*, const RenderLaye rModelObject* repaintContainer, FloatRect&, bool fixed); 79 static void computeFloatRectForRepaint(const RenderObject*, const RenderLaye rModelObject* repaintContainer, FloatRect&, bool fixed);
78 static void mapLocalToContainer(const RenderObject*, const RenderLayerModelO bject* repaintContainer, TransformState&, bool* wasFixed = 0); 80 static void mapLocalToContainer(const RenderObject*, const RenderLayerModelO bject* repaintContainer, TransformState&, bool* wasFixed = 0);
79 static const RenderObject* pushMappingToContainer(const RenderObject*, const RenderLayerModelObject* ancestorToStopAt, RenderGeometryMap&); 81 static const RenderObject* pushMappingToContainer(const RenderObject*, const RenderLayerModelObject* ancestorToStopAt, RenderGeometryMap&);
80 static bool checkForSVGRepaintDuringLayout(RenderObject*); 82 static bool checkForSVGRepaintDuringLayout(RenderObject*);
81 83
82 // Shared between SVG renderers and resources. 84 // Shared between SVG renderers and resources.
83 static void applyStrokeStyleToContext(GraphicsContext*, const RenderStyle*, const RenderObject*); 85 static void applyStrokeStyleToContext(GraphicsContext*, const RenderStyle*, const RenderObject*);
84 static void applyStrokeStyleToStrokeData(StrokeData*, const RenderStyle*, co nst RenderObject*); 86 static void applyStrokeStyleToStrokeData(StrokeData*, const RenderStyle*, co nst RenderObject*);
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after
226 ASSERT(start->isSVGRoot() || start->isSVGViewportContainer()); 228 ASSERT(start->isSVGRoot() || start->isSVGViewportContainer());
227 if (start->isSVGViewportContainer()) 229 if (start->isSVGViewportContainer())
228 return toRenderSVGViewportContainer(start)->isLayoutSizeChanged(); 230 return toRenderSVGViewportContainer(start)->isLayoutSizeChanged();
229 231
230 return toRenderSVGRoot(start)->isLayoutSizeChanged(); 232 return toRenderSVGRoot(start)->isLayoutSizeChanged();
231 } 233 }
232 234
233 } // namespace WebCore 235 } // namespace WebCore
234 236
235 #endif // SVGRenderSupport_h 237 #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