summaryrefslogtreecommitdiff
path: root/Source/WebCore/rendering/RenderWidget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebCore/rendering/RenderWidget.cpp')
-rw-r--r--Source/WebCore/rendering/RenderWidget.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/Source/WebCore/rendering/RenderWidget.cpp b/Source/WebCore/rendering/RenderWidget.cpp
index 21d0c3ad6..402bac4fc 100644
--- a/Source/WebCore/rendering/RenderWidget.cpp
+++ b/Source/WebCore/rendering/RenderWidget.cpp
@@ -61,9 +61,9 @@ void WidgetHierarchyUpdatesSuspensionScope::moveWidgets()
widgetNewParentMap().clear();
WidgetToParentMap::iterator end = map.end();
for (WidgetToParentMap::iterator it = map.begin(); it != end; ++it) {
- Widget* child = it->first.get();
+ Widget* child = it->key.get();
ScrollView* currentParent = child->parent();
- FrameView* newParent = it->second;
+ FrameView* newParent = it->value;
if (newParent != currentParent) {
if (currentParent)
currentParent->removeChild(child);
@@ -169,7 +169,7 @@ bool RenderWidget::updateWidgetGeometry()
if (!m_widget->transformsAffectFrameRect())
return setWidgetGeometry(absoluteContentBox());
- LayoutRect absoluteContentBox(localToAbsoluteQuad(FloatQuad(contentBox)).boundingBox());
+ LayoutRect absoluteContentBox(localToAbsoluteQuad(FloatQuad(contentBox), SnapOffsetForTransforms).boundingBox());
if (m_widget->isFrameView()) {
contentBox.setLocation(absoluteContentBox.location());
return setWidgetGeometry(contentBox);
@@ -267,7 +267,9 @@ void RenderWidget::paint(PaintInfo& paintInfo, const LayoutPoint& paintOffset)
// Push a clip if we have a border radius, since we want to round the foreground content that gets painted.
paintInfo.context->save();
- paintInfo.context->addRoundedRectClip(style()->getRoundedBorderFor(borderRect, view()));
+ RoundedRect roundedInnerRect = style()->getRoundedInnerBorderFor(borderRect,
+ paddingTop() + borderTop(), paddingBottom() + borderBottom(), paddingLeft() + borderLeft(), paddingRight() + borderRight(), true, true);
+ clipRoundedInnerRect(paintInfo.context, borderRect, roundedInnerRect);
}
if (m_widget) {