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

Unified Diff: Source/core/rendering/RenderWidget.cpp

Issue 21430003: Implement interfaces in PaintInfo and make it a class. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@getterPaintInfo01
Patch Set: Fixed Linux compilation (hopefuly Windows too), addressing some reviewer's suggestions. Created 7 years, 5 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/RenderWidget.cpp
diff --git a/Source/core/rendering/RenderWidget.cpp b/Source/core/rendering/RenderWidget.cpp
index 2c8d271b4e749219b30bb46dfab067198fdf675d..4c70fff042b02c2dd1241d8247ee7afe8a0f9968 100644
--- a/Source/core/rendering/RenderWidget.cpp
+++ b/Source/core/rendering/RenderWidget.cpp
@@ -230,26 +230,26 @@ void RenderWidget::paintContents(PaintInfo& paintInfo, const LayoutPoint& paintO
IntPoint widgetLocation = m_widget->frameRect().location();
IntPoint paintLocation(roundToInt(adjustedPaintOffset.x() + borderLeft() + paddingLeft()),
roundToInt(adjustedPaintOffset.y() + borderTop() + paddingTop()));
- IntRect paintRect = paintInfo.rect;
+ IntRect paintRect = paintInfo.getRect();
IntSize widgetPaintOffset = paintLocation - widgetLocation;
// When painting widgets into compositing layers, tx and ty are relative to the enclosing compositing layer,
// not the root. In this case, shift the CTM and adjust the paintRect to be root-relative to fix plug-in drawing.
if (!widgetPaintOffset.isZero()) {
- paintInfo.context->translate(widgetPaintOffset);
+ paintInfo.getContext()->translate(widgetPaintOffset);
paintRect.move(-widgetPaintOffset);
}
- m_widget->paint(paintInfo.context, paintRect);
+ m_widget->paint(paintInfo.getContext(), paintRect);
if (!widgetPaintOffset.isZero())
- paintInfo.context->translate(-widgetPaintOffset);
+ paintInfo.getContext()->translate(-widgetPaintOffset);
if (m_widget->isFrameView()) {
FrameView* frameView = toFrameView(m_widget.get());
bool runOverlapTests = !frameView->useSlowRepaintsIfNotOverlapped() || frameView->hasCompositedContent();
- if (paintInfo.overlapTestRequests && runOverlapTests) {
- ASSERT(!paintInfo.overlapTestRequests->contains(this));
- paintInfo.overlapTestRequests->set(this, m_widget->frameRect());
+ if (paintInfo.getOverlapTestRequests() && runOverlapTests) {
+ ASSERT(!paintInfo.getOverlapTestRequests()->contains(this));
+ paintInfo.getOverlapTestRequests()->set(this, m_widget->frameRect());
}
}
}
@@ -263,18 +263,18 @@ void RenderWidget::paint(PaintInfo& paintInfo, const LayoutPoint& paintOffset)
LayoutPoint adjustedPaintOffset = paintOffset + location();
- if (hasBoxDecorations() && (paintInfo.phase == PaintPhaseForeground || paintInfo.phase == PaintPhaseSelection))
+ if (hasBoxDecorations() && (paintInfo.getPhase() == PaintPhaseForeground || paintInfo.getPhase() == PaintPhaseSelection))
paintBoxDecorations(paintInfo, adjustedPaintOffset);
- if (paintInfo.phase == PaintPhaseMask) {
+ if (paintInfo.getPhase() == PaintPhaseMask) {
paintMask(paintInfo, adjustedPaintOffset);
return;
}
- if ((paintInfo.phase == PaintPhaseOutline || paintInfo.phase == PaintPhaseSelfOutline) && hasOutline())
+ if ((paintInfo.getPhase() == PaintPhaseOutline || paintInfo.getPhase() == PaintPhaseSelfOutline) && hasOutline())
paintOutline(paintInfo, LayoutRect(adjustedPaintOffset, size()));
- if (!m_frameView || paintInfo.phase != PaintPhaseForeground)
+ if (!m_frameView || paintInfo.getPhase() != PaintPhaseForeground)
return;
if (style()->hasBorderRadius()) {
@@ -284,26 +284,26 @@ void RenderWidget::paint(PaintInfo& paintInfo, const LayoutPoint& paintOffset)
return;
// Push a clip if we have a border radius, since we want to round the foreground content that gets painted.
- paintInfo.context->save();
+ paintInfo.getContext()->save();
RoundedRect roundedInnerRect = style()->getRoundedInnerBorderFor(borderRect,
paddingTop() + borderTop(), paddingBottom() + borderBottom(), paddingLeft() + borderLeft(), paddingRight() + borderRight(), true, true);
- clipRoundedInnerRect(paintInfo.context, borderRect, roundedInnerRect);
+ clipRoundedInnerRect(paintInfo.getContext(), borderRect, roundedInnerRect);
}
if (m_widget)
paintContents(paintInfo, paintOffset);
if (style()->hasBorderRadius())
- paintInfo.context->restore();
+ paintInfo.getContext()->restore();
// Paint a partially transparent wash over selected widgets.
if (isSelected() && !document()->printing()) {
// FIXME: selectionRect() is in absolute, not painting coordinates.
- paintInfo.context->fillRect(pixelSnappedIntRect(selectionRect()), selectionBackgroundColor());
+ paintInfo.getContext()->fillRect(pixelSnappedIntRect(selectionRect()), selectionBackgroundColor());
}
if (hasLayer() && layer()->canResize())
- layer()->paintResizer(paintInfo.context, roundedIntPoint(adjustedPaintOffset), paintInfo.rect);
+ layer()->paintResizer(paintInfo.getContext(), roundedIntPoint(adjustedPaintOffset), paintInfo.getRect());
}
void RenderWidget::setOverlapTestResult(bool isOverlapped)

Powered by Google App Engine
This is Rietveld 408576698