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

Unified Diff: Source/core/paint/InlineTextBoxPainter.cpp

Issue 950623002: Store resolved color in AppliedTextDecoration (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Updated patch with underline optimization handling Created 5 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/paint/InlineTextBoxPainter.cpp
diff --git a/Source/core/paint/InlineTextBoxPainter.cpp b/Source/core/paint/InlineTextBoxPainter.cpp
index ad57dd1843088bdcde14d72ab8238fdcfadcc432..8479b34f090bee475b7a14e39bffeb999f414d2a 100644
--- a/Source/core/paint/InlineTextBoxPainter.cpp
+++ b/Source/core/paint/InlineTextBoxPainter.cpp
@@ -681,12 +681,12 @@ static void strokeWavyTextDecoration(GraphicsContext* context, FloatPoint p1, Fl
}
static void paintAppliedDecoration(GraphicsContext* context, FloatPoint start, float width, float doubleOffset, int wavyOffsetFactor,
- LayoutObject::AppliedTextDecoration decoration, float thickness, bool antialiasDecoration, bool isPrinting)
+ AppliedTextDecoration decoration, float thickness, bool antialiasDecoration, bool isPrinting)
{
- context->setStrokeStyle(textDecorationStyleToStrokeStyle(decoration.style));
- context->setStrokeColor(decoration.color);
+ context->setStrokeStyle(textDecorationStyleToStrokeStyle(decoration.style()));
+ context->setStrokeColor(decoration.color());
- switch (decoration.style) {
+ switch (decoration.style()) {
case TextDecorationStyleWavy:
strokeWavyTextDecoration(context, start + FloatPoint(0, doubleOffset * wavyOffsetFactor), start + FloatPoint(width, doubleOffset * wavyOffsetFactor), thickness);
break;
@@ -697,7 +697,7 @@ static void paintAppliedDecoration(GraphicsContext* context, FloatPoint start, f
default:
context->drawLineForText(start, width, isPrinting);
- if (decoration.style == TextDecorationStyleDouble)
+ if (decoration.style() == TextDecorationStyleDouble)
context->drawLineForText(start + FloatPoint(0, doubleOffset), width, isPrinting);
}
}
@@ -719,7 +719,7 @@ void InlineTextBoxPainter::paintDecoration(GraphicsContext* context, const Float
}
// Get the text decoration colors.
- LayoutObject::AppliedTextDecoration underline, overline, linethrough;
+ AppliedTextDecoration underline, overline, linethrough;
m_inlineTextBox.layoutObject().getTextDecorations(deco, underline, overline, linethrough, true);
if (m_inlineTextBox.isFirstLineStyle())
m_inlineTextBox.layoutObject().getTextDecorations(deco, underline, overline, linethrough, true, true);
@@ -741,7 +741,7 @@ void InlineTextBoxPainter::paintDecoration(GraphicsContext* context, const Float
context->setStrokeThickness(textDecorationThickness);
- bool antialiasDecoration = shouldSetDecorationAntialias(overline.style, underline.style, linethrough.style)
+ bool antialiasDecoration = shouldSetDecorationAntialias(overline.style(), underline.style(), linethrough.style())
&& BoxPainter::shouldAntialiasLines(context);
// Offset between lines - always non-zero, so lines never cross each other.
« Source/core/layout/style/LayoutStyle.cpp ('K') | « Source/core/layout/style/LayoutStyle.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698