 Chromium Code Reviews
 Chromium Code Reviews Issue 620243002:
  Move painting code from InlineTextBox to InlineTextBoxPainter.  (Closed) 
  Base URL: https://chromium.googlesource.com/chromium/blink.git@master
    
  
    Issue 620243002:
  Move painting code from InlineTextBox to InlineTextBoxPainter.  (Closed) 
  Base URL: https://chromium.googlesource.com/chromium/blink.git@master| Index: Source/core/rendering/InlineTextBox.h | 
| diff --git a/Source/core/rendering/InlineTextBox.h b/Source/core/rendering/InlineTextBox.h | 
| index f82a860ba6e93db65c589735b64990f43a9a1cdf..b5c00ad112efcf512a7e3bb89104d003b337f0f2 100644 | 
| --- a/Source/core/rendering/InlineTextBox.h | 
| +++ b/Source/core/rendering/InlineTextBox.h | 
| @@ -90,6 +90,10 @@ public: | 
| LayoutUnit logicalTopVisualOverflow() const { return logicalOverflowRect().y(); } | 
| LayoutUnit logicalBottomVisualOverflow() const { return logicalOverflowRect().maxY(); } | 
| + // charactersWithHyphen, if provided, must not be destroyed before the TextRun. | 
| + TextRun constructTextRun(RenderStyle*, const Font&, StringBuilder* charactersWithHyphen = 0) const; | 
| + TextRun constructTextRun(RenderStyle*, const Font&, StringView, int maximumLength, StringBuilder* charactersWithHyphen = 0) const; | 
| + | 
| #ifndef NDEBUG | 
| virtual void showBox(int = 0) const OVERRIDE; | 
| virtual const char* boxName() const OVERRIDE; | 
| @@ -99,12 +103,6 @@ public: | 
| static AffineTransform rotation(const FloatRect& boxRect, RotationDirection); | 
| private: | 
| LayoutUnit selectionTop(); | 
| 
jbroman
2014/10/03 17:46:17
This is missing an implementation.
Did you mean t
 
chrishtr
2014/10/03 18:10:37
Fixed.
 | 
| - LayoutUnit selectionBottom(); | 
| - LayoutUnit selectionHeight(); | 
| - | 
| - // charactersWithHyphen, if provided, must not be destroyed before the TextRun. | 
| - TextRun constructTextRun(RenderStyle*, const Font&, StringBuilder* charactersWithHyphen = 0) const; | 
| - TextRun constructTextRun(RenderStyle*, const Font&, StringView, int maximumLength, StringBuilder* charactersWithHyphen = 0) const; | 
| public: | 
| TextRun constructTextRunForInspector(RenderStyle*, const Font&) const; | 
| @@ -114,6 +112,10 @@ public: | 
| bool isSelected(int startPos, int endPos) const; | 
| void selectionStartEnd(int& sPos, int& ePos) const; | 
| + // These functions both paint markers and update the DocumentMarker's renderedRect. | 
| + virtual void paintDocumentMarker(GraphicsContext*, const FloatPoint& boxOrigin, DocumentMarker*, RenderStyle*, const Font&, bool grammar); | 
| + virtual void paintTextMatchMarker(GraphicsContext*, const FloatPoint& boxOrigin, DocumentMarker*, RenderStyle*, const Font&); | 
| + | 
| protected: | 
| virtual void paint(PaintInfo&, const LayoutPoint&, LayoutUnit lineTop, LayoutUnit lineBottom) OVERRIDE; | 
| virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTestLocation& locationInContainer, const LayoutPoint& accumulatedOffset, LayoutUnit lineTop, LayoutUnit lineBottom) OVERRIDE; | 
| @@ -147,7 +149,6 @@ public: | 
| virtual int caretMinOffset() const OVERRIDE FINAL; | 
| virtual int caretMaxOffset() const OVERRIDE FINAL; | 
| -private: | 
| float textPos() const; // returns the x position relative to the left start of the text line. | 
| public: | 
| @@ -169,23 +170,7 @@ private: | 
| unsigned short m_truncation; // Where to truncate when text overflow is applied. We use special constants to | 
| // denote no truncation (the whole run paints) and full truncation (nothing paints at all). | 
| - unsigned underlinePaintStart(const CompositionUnderline&); | 
| - unsigned underlinePaintEnd(const CompositionUnderline&); | 
| - | 
| -protected: | 
| - void paintSingleCompositionBackgroundRun(GraphicsContext*, const FloatPoint& boxOrigin, RenderStyle*, const Font&, Color backgroundColor, int startPos, int endPos); | 
| - void paintCompositionBackgrounds(GraphicsContext*, const FloatPoint& boxOrigin, RenderStyle*, const Font&, bool useCustomUnderlines); | 
| - void paintDocumentMarkers(GraphicsContext*, const FloatPoint& boxOrigin, RenderStyle*, const Font&, bool background); | 
| - void paintCompositionUnderline(GraphicsContext*, const FloatPoint& boxOrigin, const CompositionUnderline&); | 
| - | 
| - // These functions both paint markers and update the DocumentMarker's renderedRect. | 
| - virtual void paintDocumentMarker(GraphicsContext*, const FloatPoint& boxOrigin, DocumentMarker*, RenderStyle*, const Font&, bool grammar); | 
| - virtual void paintTextMatchMarker(GraphicsContext*, const FloatPoint& boxOrigin, DocumentMarker*, RenderStyle*, const Font&); | 
| - | 
| private: | 
| - void paintDecoration(GraphicsContext*, const FloatPoint& boxOrigin, TextDecoration); | 
| - void paintSelection(GraphicsContext*, const FloatPoint& boxOrigin, RenderStyle*, const Font&, Color textColor); | 
| - | 
| TextRun::ExpansionBehavior expansionBehavior() const | 
| { | 
| return (canHaveLeadingExpansion() ? TextRun::AllowLeadingExpansion : TextRun::ForbidLeadingExpansion) |