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[]); |