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/RenderSVGModelObject.h

Issue 731243002: Move m_paintInvalidationBoundingBox into RenderSVGModelObject (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Drop bitfield. Created 6 years, 1 month 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/svg/RenderSVGImage.h ('k') | Source/core/rendering/svg/RenderSVGShape.h » ('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, Google Inc. All rights reserved. 2 * Copyright (c) 2009, Google 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 are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
44 class RenderSVGModelObject : public RenderObject { 44 class RenderSVGModelObject : public RenderObject {
45 public: 45 public:
46 explicit RenderSVGModelObject(SVGElement*); 46 explicit RenderSVGModelObject(SVGElement*);
47 47
48 virtual bool isChildAllowed(RenderObject*, RenderStyle*) const override; 48 virtual bool isChildAllowed(RenderObject*, RenderStyle*) const override;
49 virtual bool canHaveWhitespaceChildren() const override { return false; } 49 virtual bool canHaveWhitespaceChildren() const override { return false; }
50 50
51 virtual LayoutRect clippedOverflowRectForPaintInvalidation(const RenderLayer ModelObject* paintInvalidationContainer, const PaintInvalidationState* = 0) cons t override; 51 virtual LayoutRect clippedOverflowRectForPaintInvalidation(const RenderLayer ModelObject* paintInvalidationContainer, const PaintInvalidationState* = 0) cons t override;
52 virtual void computeFloatRectForPaintInvalidation(const RenderLayerModelObje ct* paintInvalidationContainer, FloatRect&, const PaintInvalidationState*) const override final; 52 virtual void computeFloatRectForPaintInvalidation(const RenderLayerModelObje ct* paintInvalidationContainer, FloatRect&, const PaintInvalidationState*) const override final;
53 53
54 virtual FloatRect paintInvalidationRectInLocalCoordinates() const override f inal { return m_paintInvalidationBoundingBox; }
55
54 virtual void absoluteRects(Vector<IntRect>&, const LayoutPoint& accumulatedO ffset) const override final; 56 virtual void absoluteRects(Vector<IntRect>&, const LayoutPoint& accumulatedO ffset) const override final;
55 virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed) const overrid e; 57 virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed) const overrid e;
56 58
57 virtual void mapLocalToContainer(const RenderLayerModelObject* paintInvalida tionContainer, TransformState&, MapCoordinatesFlags = ApplyContainerFlip, bool* wasFixed = 0, const PaintInvalidationState* = 0) const override final; 59 virtual void mapLocalToContainer(const RenderLayerModelObject* paintInvalida tionContainer, TransformState&, MapCoordinatesFlags = ApplyContainerFlip, bool* wasFixed = 0, const PaintInvalidationState* = 0) const override final;
58 virtual const RenderObject* pushMappingToContainer(const RenderLayerModelObj ect* ancestorToStopAt, RenderGeometryMap&) const override final; 60 virtual const RenderObject* pushMappingToContainer(const RenderLayerModelObj ect* ancestorToStopAt, RenderGeometryMap&) const override final;
59 virtual void styleDidChange(StyleDifference, const RenderStyle* oldStyle) ov erride; 61 virtual void styleDidChange(StyleDifference, const RenderStyle* oldStyle) ov erride;
60 62
61 virtual void computeLayerHitTestRects(LayerHitTestRects&) const override fin al; 63 virtual void computeLayerHitTestRects(LayerHitTestRects&) const override fin al;
62 64
63 SVGElement* element() const { return toSVGElement(RenderObject::node()); } 65 SVGElement* element() const { return toSVGElement(RenderObject::node()); }
64 66
65 virtual bool isOfType(RenderObjectType type) const override { return type == RenderObjectSVG || RenderObject::isOfType(type); } 67 virtual bool isOfType(RenderObjectType type) const override { return type == RenderObjectSVG || RenderObject::isOfType(type); }
66 68
67 protected: 69 protected:
68 virtual void addLayerHitTestRects(LayerHitTestRects&, const RenderLayer* cur rentCompositedLayer, const LayoutPoint& layerOffset, const LayoutRect& container Rect) const override final; 70 virtual void addLayerHitTestRects(LayerHitTestRects&, const RenderLayer* cur rentCompositedLayer, const LayoutPoint& layerOffset, const LayoutRect& container Rect) const override final;
69 virtual void willBeDestroyed() override; 71 virtual void willBeDestroyed() override;
70 72
71 private: 73 private:
72 // RenderSVGModelObject subclasses should use element() instead. 74 // RenderSVGModelObject subclasses should use element() instead.
73 void node() const WTF_DELETED_FUNCTION; 75 void node() const WTF_DELETED_FUNCTION;
74 76
75 // This method should never be called, SVG uses a different nodeAtPoint meth od 77 // This method should never be called, SVG uses a different nodeAtPoint meth od
76 virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTes tLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAct ion) override final; 78 virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTes tLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAct ion) override final;
77 virtual IntRect absoluteFocusRingBoundingBoxRect() const override final; 79 virtual IntRect absoluteFocusRingBoundingBoxRect() const override final;
78 80
79 virtual void invalidateTreeIfNeeded(const PaintInvalidationState&) override final; 81 virtual void invalidateTreeIfNeeded(const PaintInvalidationState&) override final;
82
83 protected:
84 FloatRect m_paintInvalidationBoundingBox;
80 }; 85 };
81 86
82 } 87 }
83 88
84 #endif 89 #endif
OLDNEW
« no previous file with comments | « Source/core/rendering/svg/RenderSVGImage.h ('k') | Source/core/rendering/svg/RenderSVGShape.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698