Modified: branches/subpixellayout/Source/WebCore/rendering/RenderListMarker.cpp (112060 => 112061)
--- branches/subpixellayout/Source/WebCore/rendering/RenderListMarker.cpp 2012-03-26 08:27:02 UTC (rev 112060)
+++ branches/subpixellayout/Source/WebCore/rendering/RenderListMarker.cpp 2012-03-26 08:35:42 UTC (rev 112061)
@@ -1110,18 +1110,18 @@
if (style()->visibility() != VISIBLE)
return;
- IntPoint boxOrigin(roundedIntPoint(paintOffset + location()));
- IntRect overflowRect(pixelSnappedIntRect(visualOverflowRect()));
+ LayoutPoint boxOrigin(paintOffset + location());
+ LayoutRect overflowRect(visualOverflowRect());
overflowRect.moveBy(boxOrigin);
overflowRect.inflate(maximalOutlineSize(paintInfo.phase));
- if (!paintInfo.rect.intersects(overflowRect))
+ if (!paintInfo.rect.intersects(pixelSnappedIntRect(overflowRect)))
return;
- IntRect box(boxOrigin, frameRect().pixelSnappedSize());
+ LayoutRect box(boxOrigin, size());
IntRect marker = getRelativeMarkerRect();
- marker.moveBy(boxOrigin);
+ marker.moveBy(roundedIntPoint(boxOrigin));
GraphicsContext* context = paintInfo.context;
@@ -1258,16 +1258,16 @@
GraphicsContextStateSaver stateSaver(*context, false);
if (!style()->isHorizontalWritingMode()) {
- marker.moveBy(-boxOrigin);
+ marker.moveBy(roundedIntPoint(-boxOrigin));
marker = marker.transposedRect();
- marker.move(box.x(), box.y() - logicalHeight());
+ marker.moveBy(IntPoint(roundToInt(box.x()), roundToInt(box.y() - logicalHeight())));
stateSaver.save();
context->translate(marker.x(), marker.maxY());
context->rotate(static_cast<float>(deg2rad(90.)));
context->translate(-marker.x(), -marker.maxY());
}
- LayoutPoint textOrigin = LayoutPoint(marker.x(), marker.y() + style()->fontMetrics().ascent());
+ IntPoint textOrigin = IntPoint(marker.x(), marker.y() + style()->fontMetrics().ascent());
if (type == Asterisks || type == Footnotes)
context->drawText(font, textRun, textOrigin);
@@ -1286,14 +1286,14 @@
const UChar suffix = listMarkerSuffix(type, m_listItem->value());
if (style()->isLeftToRightDirection()) {
- LayoutUnit width = font.width(textRun);
+ int width = font.width(textRun);
context->drawText(font, textRun, textOrigin);
UChar suffixSpace[2] = { suffix, ' ' };
context->drawText(font, RenderBlock::constructTextRun(this, font, suffixSpace, 2, style()), textOrigin + IntSize(width, 0));
} else {
UChar spaceSuffix[2] = { ' ', suffix };
TextRun spaceSuffixRun = RenderBlock::constructTextRun(this, font, spaceSuffix, 2, style());
- LayoutUnit width = font.width(spaceSuffixRun);
+ int width = font.width(spaceSuffixRun);
context->drawText(font, spaceSuffixRun, textOrigin);
context->drawText(font, textRun, textOrigin + IntSize(width, 0));
}