| Index: Source/core/rendering/InlineTextBox.cpp
|
| diff --git a/Source/core/rendering/InlineTextBox.cpp b/Source/core/rendering/InlineTextBox.cpp
|
| index 9345311ee77afb87aa1025fd41a7d5741fb69b2a..cdf21169f1c27061f2f5a94de7ec74771bcb9941 100644
|
| --- a/Source/core/rendering/InlineTextBox.cpp
|
| +++ b/Source/core/rendering/InlineTextBox.cpp
|
| @@ -922,7 +922,6 @@ static StrokeStyle textDecorationStyleToStrokeStyle(TextDecorationStyle decorati
|
| case TextDecorationStyleSolid:
|
| strokeStyle = SolidStroke;
|
| break;
|
| -#if ENABLE(CSS3_TEXT)
|
| case TextDecorationStyleDouble:
|
| strokeStyle = DoubleStroke;
|
| break;
|
| @@ -935,13 +934,11 @@ static StrokeStyle textDecorationStyleToStrokeStyle(TextDecorationStyle decorati
|
| case TextDecorationStyleWavy:
|
| strokeStyle = WavyStroke;
|
| break;
|
| -#endif // CSS3_TEXT
|
| }
|
|
|
| return strokeStyle;
|
| }
|
|
|
| -#if ENABLE(CSS3_TEXT)
|
| static int computeUnderlineOffset(const TextUnderlinePosition underlinePosition, const FontMetrics& fontMetrics, const InlineTextBox* inlineTextBox, const int textDecorationThickness)
|
| {
|
| // Compute the gap between the font and the underline. Use at least one
|
| @@ -966,9 +963,7 @@ static int computeUnderlineOffset(const TextUnderlinePosition underlinePosition,
|
| ASSERT_NOT_REACHED();
|
| return fontMetrics.ascent() + gap;
|
| }
|
| -#endif // CSS3_TEXT
|
|
|
| -#if ENABLE(CSS3_TEXT)
|
| static void adjustStepToDecorationLength(float& step, float& controlPointDistance, float length)
|
| {
|
| ASSERT(step > 0);
|
| @@ -1090,7 +1085,6 @@ static void strokeWavyTextDecoration(GraphicsContext* context, FloatPoint& p1, F
|
| context->setShouldAntialias(true);
|
| context->strokePath(path);
|
| }
|
| -#endif // CSS3_TEXT
|
|
|
| void InlineTextBox::paintDecoration(GraphicsContext* context, const FloatPoint& boxOrigin, ETextDecoration deco, TextDecorationStyle decorationStyle, const ShadowData* shadow)
|
| {
|
| @@ -1161,14 +1155,11 @@ void InlineTextBox::paintDecoration(GraphicsContext* context, const FloatPoint&
|
| shadow = shadow->next();
|
| }
|
|
|
| -#if ENABLE(CSS3_TEXT)
|
| // Offset between lines - always non-zero, so lines never cross each other.
|
| float doubleOffset = textDecorationThickness + 1.f;
|
| -#endif // CSS3_TEXT
|
| context->setStrokeStyle(textDecorationStyleToStrokeStyle(decorationStyle));
|
| if (deco & UNDERLINE) {
|
| context->setStrokeColor(underline, colorSpace);
|
| -#if ENABLE(CSS3_TEXT)
|
| TextUnderlinePosition underlinePosition = styleToUse->textUnderlinePosition();
|
| const int underlineOffset = computeUnderlineOffset(underlinePosition, styleToUse->fontMetrics(), this, textDecorationThickness);
|
|
|
| @@ -1185,14 +1176,9 @@ void InlineTextBox::paintDecoration(GraphicsContext* context, const FloatPoint&
|
| if (decorationStyle == TextDecorationStyleDouble)
|
| context->drawLineForText(FloatPoint(localOrigin.x(), localOrigin.y() + underlineOffset + doubleOffset), width, isPrinting);
|
| }
|
| -#else
|
| - // Leave one pixel of white between the baseline and the underline.
|
| - context->drawLineForText(FloatPoint(localOrigin.x(), localOrigin.y() + baseline + 1), width, isPrinting);
|
| -#endif // CSS3_TEXT
|
| }
|
| if (deco & OVERLINE) {
|
| context->setStrokeColor(overline, colorSpace);
|
| -#if ENABLE(CSS3_TEXT)
|
| switch (decorationStyle) {
|
| case TextDecorationStyleWavy: {
|
| FloatPoint start(localOrigin.x(), localOrigin.y() - doubleOffset);
|
| @@ -1201,17 +1187,13 @@ void InlineTextBox::paintDecoration(GraphicsContext* context, const FloatPoint&
|
| break;
|
| }
|
| default:
|
| -#endif // CSS3_TEXT
|
| context->drawLineForText(localOrigin, width, isPrinting);
|
| -#if ENABLE(CSS3_TEXT)
|
| if (decorationStyle == TextDecorationStyleDouble)
|
| context->drawLineForText(FloatPoint(localOrigin.x(), localOrigin.y() - doubleOffset), width, isPrinting);
|
| }
|
| -#endif // CSS3_TEXT
|
| }
|
| if (deco & LINE_THROUGH) {
|
| context->setStrokeColor(linethrough, colorSpace);
|
| -#if ENABLE(CSS3_TEXT)
|
| switch (decorationStyle) {
|
| case TextDecorationStyleWavy: {
|
| FloatPoint start(localOrigin.x(), localOrigin.y() + 2 * baseline / 3);
|
| @@ -1220,13 +1202,10 @@ void InlineTextBox::paintDecoration(GraphicsContext* context, const FloatPoint&
|
| break;
|
| }
|
| default:
|
| -#endif // CSS3_TEXT
|
| context->drawLineForText(FloatPoint(localOrigin.x(), localOrigin.y() + 2 * baseline / 3), width, isPrinting);
|
| -#if ENABLE(CSS3_TEXT)
|
| if (decorationStyle == TextDecorationStyleDouble)
|
| context->drawLineForText(FloatPoint(localOrigin.x(), localOrigin.y() + doubleOffset + 2 * baseline / 3), width, isPrinting);
|
| }
|
| -#endif // CSS3_TEXT
|
| }
|
| } while (shadow);
|
|
|
|
|