| Index: Source/core/rendering/RenderBoxModelObject.h
|
| diff --git a/Source/core/rendering/RenderBoxModelObject.h b/Source/core/rendering/RenderBoxModelObject.h
|
| index 2118083262f6ab150978e6b5c66c63a8a0f5e425..a57d2255728638a5c1848f68669cb73f10e3c983 100644
|
| --- a/Source/core/rendering/RenderBoxModelObject.h
|
| +++ b/Source/core/rendering/RenderBoxModelObject.h
|
| @@ -50,6 +50,7 @@ enum ContentChangeType {
|
|
|
| struct BorderEdge;
|
| class RenderTextFragment;
|
| +class BackgroundImageGeometry;
|
|
|
| // This class is the base for all objects that adhere to the CSS box model as described
|
| // at http://www.w3.org/TR/CSS21/box.html
|
| @@ -158,7 +159,6 @@ public:
|
| void paintBorder(const PaintInfo&, const LayoutRect&, const RenderStyle*, BackgroundBleedAvoidance = BackgroundBleedNone, bool includeLogicalLeftEdge = true, bool includeLogicalRightEdge = true);
|
| bool paintNinePieceImage(GraphicsContext*, const LayoutRect&, const RenderStyle*, const NinePieceImage&, CompositeOperator = CompositeSourceOver);
|
| void paintBoxShadow(const PaintInfo&, const LayoutRect&, const RenderStyle*, ShadowStyle, bool includeLogicalLeftEdge = true, bool includeLogicalRightEdge = true);
|
| - void paintFillLayerExtended(const PaintInfo&, const Color&, const FillLayer&, const LayoutRect&, BackgroundBleedAvoidance, InlineFlowBox* = 0, const LayoutSize& = LayoutSize(), CompositeOperator = CompositeSourceOver, RenderObject* backgroundObject = 0, bool skipBaseColor = false);
|
|
|
| virtual bool boxShadowShouldBeAppliedToBackground(BackgroundBleedAvoidance, InlineFlowBox* = 0) const;
|
|
|
| @@ -176,92 +176,19 @@ public:
|
|
|
| virtual void computeLayerHitTestRects(LayerHitTestRects&) const OVERRIDE;
|
|
|
| - // FIXME: Slimming Paint: make these two methods private again after moving paint code in this class to paint/
|
| - void paintRootBackgroundColor(const PaintInfo&, const LayoutRect&, const Color&);
|
| - bool isDocumentElementWithOpaqueBackground() const;
|
| -
|
| protected:
|
| virtual void willBeDestroyed() OVERRIDE;
|
|
|
| - class BackgroundImageGeometry {
|
| - public:
|
| - BackgroundImageGeometry()
|
| - : m_hasNonLocalGeometry(false)
|
| - { }
|
| -
|
| - IntPoint destOrigin() const { return m_destOrigin; }
|
| - void setDestOrigin(const IntPoint& destOrigin)
|
| - {
|
| - m_destOrigin = destOrigin;
|
| - }
|
| -
|
| - IntRect destRect() const { return m_destRect; }
|
| - void setDestRect(const IntRect& destRect)
|
| - {
|
| - m_destRect = destRect;
|
| - }
|
| -
|
| - // Returns the phase relative to the destination rectangle.
|
| - IntPoint relativePhase() const;
|
| -
|
| - IntPoint phase() const { return m_phase; }
|
| - void setPhase(const IntPoint& phase)
|
| - {
|
| - m_phase = phase;
|
| - }
|
| -
|
| - IntSize tileSize() const { return m_tileSize; }
|
| - void setTileSize(const IntSize& tileSize)
|
| - {
|
| - m_tileSize = tileSize;
|
| - }
|
| -
|
| - // Space-size represents extra width and height that may be added to
|
| - // the image if used as a pattern with repeat: space
|
| - IntSize spaceSize() const { return m_repeatSpacing; }
|
| - void setSpaceSize(const IntSize& repeatSpacing)
|
| - {
|
| - m_repeatSpacing = repeatSpacing;
|
| - }
|
| -
|
| - void setPhaseX(int x) { m_phase.setX(x); }
|
| - void setPhaseY(int y) { m_phase.setY(y); }
|
| -
|
| - void setNoRepeatX(int xOffset);
|
| - void setNoRepeatY(int yOffset);
|
| -
|
| - void useFixedAttachment(const IntPoint& attachmentPoint);
|
| -
|
| - void clip(const IntRect&);
|
| -
|
| - void setHasNonLocalGeometry(bool hasNonLocalGeometry = true) { m_hasNonLocalGeometry = hasNonLocalGeometry; }
|
| - bool hasNonLocalGeometry() const { return m_hasNonLocalGeometry; }
|
| -
|
| - private:
|
| - IntRect m_destRect;
|
| - IntPoint m_destOrigin;
|
| - IntPoint m_phase;
|
| - IntSize m_tileSize;
|
| - IntSize m_repeatSpacing;
|
| - bool m_hasNonLocalGeometry; // Has background-attachment: fixed. Implies that we can't always cheaply compute destRect.
|
| - };
|
| -
|
| LayoutPoint adjustedPositionRelativeToOffsetParent(const LayoutPoint&) const;
|
|
|
| bool calculateHasBoxDecorations() const;
|
| - void calculateBackgroundImageGeometry(const RenderLayerModelObject* paintContainer, const FillLayer&, const LayoutRect& paintRect, BackgroundImageGeometry&, RenderObject* = 0) const;
|
| - RoundedRect backgroundRoundedRectAdjustedForBleedAvoidance(GraphicsContext*, const LayoutRect&, BackgroundBleedAvoidance, InlineFlowBox*, const LayoutSize&, bool includeLogicalLeftEdge, bool includeLogicalRightEdge) const;
|
| LayoutRect borderInnerRectAdjustedForBleedAvoidance(GraphicsContext*, const LayoutRect&, BackgroundBleedAvoidance) const;
|
|
|
| - InterpolationQuality chooseInterpolationQuality(GraphicsContext*, Image*, const void*, const LayoutSize&);
|
| -
|
| RenderBoxModelObject* continuation() const;
|
| void setContinuation(RenderBoxModelObject*);
|
|
|
| LayoutRect localCaretRectForEmptyElement(LayoutUnit width, LayoutUnit textIndentOffset);
|
|
|
| - static void clipRoundedInnerRect(GraphicsContext*, const LayoutRect&, const RoundedRect& clipRect);
|
| -
|
| bool hasAutoHeightOrContainingBlockWithAutoHeight() const;
|
|
|
| public:
|
| @@ -302,13 +229,6 @@ private:
|
| LayoutUnit computedCSSPadding(const Length&) const;
|
| virtual bool isBoxModelObject() const OVERRIDE FINAL { return true; }
|
|
|
| - IntSize calculateFillTileSize(const FillLayer&, const IntSize& scaledPositioningAreaSize) const;
|
| -
|
| - RoundedRect getBackgroundRoundedRect(const LayoutRect&, InlineFlowBox*, LayoutUnit inlineBoxWidth, LayoutUnit inlineBoxHeight,
|
| - bool includeLogicalLeftEdge, bool includeLogicalRightEdge) const;
|
| -
|
| - bool fixedBackgroundPaintsInLocalCoordinates() const;
|
| -
|
| void clipBorderSidePolygon(GraphicsContext*, const RoundedRect& outerBorder, const RoundedRect& innerBorder,
|
| BoxSide, bool firstEdgeMatches, bool secondEdgeMatches);
|
| void clipBorderSideForComplexInnerPath(GraphicsContext*, const RoundedRect&, const RoundedRect&, BoxSide, const BorderEdge[]);
|
|
|