diff options
Diffstat (limited to 'WebCore/rendering/RenderObject.h')
| -rw-r--r-- | WebCore/rendering/RenderObject.h | 28 | 
1 files changed, 17 insertions, 11 deletions
| diff --git a/WebCore/rendering/RenderObject.h b/WebCore/rendering/RenderObject.h index 791d4d0..ae12758 100644 --- a/WebCore/rendering/RenderObject.h +++ b/WebCore/rendering/RenderObject.h @@ -277,8 +277,12 @@ public:      virtual bool isListMarker() const { return false; }      virtual bool isMedia() const { return false; }      virtual bool isMenuList() const { return false; } +#if ENABLE(PROGRESS_TAG) +    virtual bool isProgress() const { return false; } +#endif      virtual bool isRenderBlock() const { return false; }      virtual bool isRenderButton() const { return false; } +    virtual bool isRenderIFrame() const { return false; }      virtual bool isRenderImage() const { return false; }      virtual bool isRenderInline() const { return false; }      virtual bool isRenderPart() const { return false; } @@ -334,10 +338,17 @@ public:      virtual bool isSVGImage() const { return false; }      virtual bool isSVGForeignObject() const { return false; }      virtual bool isSVGResource() const { return false; } +    virtual bool isSVGShadowTreeRootContainer() const { return false; }      virtual const SVGRenderBase* toSVGRenderBase() const;      virtual RenderSVGResource* toRenderSVGResource(); +    // FIXME: Those belong into a SVG specific base-class for all renderers (see above) +    // Unfortunately we don't have such a class yet, because it's not possible for all renderers +    // to inherit from RenderSVGObject -> RenderObject (some need RenderBlock inheritance for instance) +    virtual void setNeedsTransformUpdate() { } +    virtual void setNeedsBoundariesUpdate() { } +      // Per SVG 1.1 objectBoundingBox ignores clipping, masking, filter effects, opacity and stroke-width.      // This is used for all computation of objectBoundingBox relative units and by SVGLocateable::getBBox().      // NOTE: Markers are not specifically ignored here by SVG 1.1 spec, but we ignore them @@ -350,7 +361,6 @@ public:      // respecting clipping, masking, filters, opacity, stroke-width and markers      virtual FloatRect repaintRectInLocalCoordinates() const; -    // FIXME: This accessor is deprecated and mostly around for SVGRenderTreeAsText.      // This only returns the transform="" value from the element      // most callsites want localToParentTransform() instead.      virtual AffineTransform localTransform() const; @@ -405,9 +415,9 @@ public:      bool hasMask() const { return style() && style()->hasMask(); }      void drawLineForBoxSide(GraphicsContext*, int x1, int y1, int x2, int y2, BoxSide, -                            Color, const Color& textcolor, EBorderStyle, int adjbw1, int adjbw2); +                            Color, EBorderStyle, int adjbw1, int adjbw2);      void drawArcForBoxSide(GraphicsContext*, int x, int y, float thickness, IntSize radius, int angleStart, -                           int angleSpan, BoxSide, Color, const Color& textcolor, EBorderStyle, bool firstCorner); +                           int angleSpan, BoxSide, Color, EBorderStyle, bool firstCorner);  public:      // The pseudo element style can be cached or uncached.  Use the cached method if the pseudo element doesn't respect @@ -512,10 +522,6 @@ public:      /* This function performs a layout only if one is needed. */      void layoutIfNeeded() { if (needsLayout()) layout(); } - -    // Called when a positioned object moves but doesn't necessarily change size.  A simplified layout is attempted -    // that just updates the object's position. If the size does change, the object remains dirty. -    virtual void tryLayoutDoingPositionedMovementOnly() { }      // used for element state updates that cannot be fixed with a      // repaint and do not need a relayout @@ -616,8 +622,8 @@ public:      // Repaint a specific subrectangle within a given object.  The rect |r| is in the object's coordinate space.      void repaintRectangle(const IntRect&, bool immediate = false); -    // Repaint only if our old bounds and new bounds are different. -    bool repaintAfterLayoutIfNeeded(RenderBoxModelObject* repaintContainer, const IntRect& oldBounds, const IntRect& oldOutlineBox); +    // Repaint only if our old bounds and new bounds are different. The caller may pass in newBounds and newOutlineBox if they are known. +    bool repaintAfterLayoutIfNeeded(RenderBoxModelObject* repaintContainer, const IntRect& oldBounds, const IntRect& oldOutlineBox, const IntRect* newBoundsPtr = 0, const IntRect* newOutlineBoxPtr = 0);      // Repaint only if the object moved.      virtual void repaintDuringLayoutIfMoved(const IntRect& rect); @@ -782,7 +788,7 @@ protected:      // Overrides should call the superclass at the start      virtual void styleDidChange(StyleDifference, const RenderStyle* oldStyle); -    void paintOutline(GraphicsContext*, int tx, int ty, int w, int h, const RenderStyle*); +    void paintOutline(GraphicsContext*, int tx, int ty, int w, int h);      void addPDFURLRect(GraphicsContext*, const IntRect&);      virtual IntRect viewRect() const; @@ -791,7 +797,7 @@ protected:      void arenaDelete(RenderArena*, void* objectBase); -    virtual IntRect outlineBoundsForRepaint(RenderBoxModelObject* /*repaintContainer*/) const { return IntRect(); } +    virtual IntRect outlineBoundsForRepaint(RenderBoxModelObject* /*repaintContainer*/, IntPoint* /*cachedOffsetToRepaintContainer*/ = 0) const { return IntRect(); }      class LayoutRepainter {      public: | 
