Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1577)

Unified Diff: Source/core/rendering/InlineTextBox.h

Issue 203273003: Underline Thickness is not uniform (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 6 years, 9 months 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 side-by-side diff with in-line comments
Download patch
Index: Source/core/rendering/InlineTextBox.h
diff --git a/Source/core/rendering/InlineTextBox.h b/Source/core/rendering/InlineTextBox.h
index a16bae318381c9d3cc5724cb8491dd050823fc2a..d12e5d509404ecfa27a5d1184d89994c04fbb1f9 100644
--- a/Source/core/rendering/InlineTextBox.h
+++ b/Source/core/rendering/InlineTextBox.h
@@ -119,6 +119,8 @@ public:
protected:
virtual void paint(PaintInfo&, const LayoutPoint&, LayoutUnit lineTop, LayoutUnit lineBottom) OVERRIDE;
+ virtual void paintDecorationStyle(PaintInfo&, const LayoutPoint&, LayoutUnit lineTop, LayoutUnit lineBottom, float underlineThickness) OVERRIDE;
+ virtual void getPaintDecorationSyle(PaintInfo&, const LayoutPoint&, float *, TextDecorationStyle *) OVERRIDE;
virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTestLocation& locationInContainer, const LayoutPoint& accumulatedOffset, LayoutUnit lineTop, LayoutUnit lineBottom) OVERRIDE;
public:
@@ -175,6 +177,9 @@ 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).
+ float m_textDecorationThickness;
+ TextDecorationStyle m_textDecorations;
+
protected:
void paintCompositionBackground(GraphicsContext*, const FloatPoint& boxOrigin, RenderStyle*, const Font&, int startPos, int endPos);
void paintDocumentMarkers(GraphicsContext*, const FloatPoint& boxOrigin, RenderStyle*, const Font&, bool background);
@@ -185,7 +190,7 @@ protected:
virtual void paintTextMatchMarker(GraphicsContext*, const FloatPoint& boxOrigin, DocumentMarker*, RenderStyle*, const Font&);
private:
- void paintDecoration(GraphicsContext*, const FloatPoint& boxOrigin, TextDecoration, TextDecorationStyle, const ShadowList*);
+ void paintDecoration(GraphicsContext*, const FloatPoint& boxOrigin, TextDecoration, TextDecorationStyle, const ShadowList*, float underlineThickness = 0);
void paintSelection(GraphicsContext*, const FloatPoint& boxOrigin, RenderStyle*, const Font&, Color textColor);
TextRun::ExpansionBehavior expansionBehavior() const
@@ -193,6 +198,12 @@ private:
return (canHaveLeadingExpansion() ? TextRun::AllowLeadingExpansion : TextRun::ForbidLeadingExpansion)
| (expansion() && nextLeafChild() ? TextRun::AllowTrailingExpansion : TextRun::ForbidTrailingExpansion);
}
+
+ float getUnderlineThickness() { return m_textDecorationThickness; }
+ void setUnderlineThickness(float textDecorationThickness) { m_textDecorationThickness = textDecorationThickness; }
andersr 2014/03/19 13:18:12 Again, it should be [get,set]DecorationThickness i
h.joshi 2014/03/19 13:59:54 Will make required changes. On 2014/03/19 13:18:1
+
+ TextDecorationStyle getTextDecorations() { return m_textDecorations; }
+ void setTextDecoration(TextDecorationStyle textDecorations) { m_textDecorations = textDecorations; }
andersr 2014/03/19 13:18:12 Looks like you ended up not really using these for
h.joshi 2014/03/19 13:59:54 Will remove "s" from method name, get/set are used
};
DEFINE_INLINE_BOX_TYPE_CASTS(InlineTextBox);

Powered by Google App Engine
This is Rietveld 408576698