summaryrefslogtreecommitdiffstats
path: root/WebCore/rendering/RenderFrame.cpp
diff options
context:
space:
mode:
authorBen Murdoch <benm@google.com>2011-03-15 12:47:30 +0000
committerBen Murdoch <benm@google.com>2011-03-15 12:49:04 +0000
commit115fa20e56568607490319cf8075fca19ae9112c (patch)
treebb5fb4eb48ab57fb1ae8918073531a80377132f6 /WebCore/rendering/RenderFrame.cpp
parent833c9ceaa300f52cf2d1b12a9b3482ad417a3c21 (diff)
downloadexternal_webkit-115fa20e56568607490319cf8075fca19ae9112c.zip
external_webkit-115fa20e56568607490319cf8075fca19ae9112c.tar.gz
external_webkit-115fa20e56568607490319cf8075fca19ae9112c.tar.bz2
Fix scrolling on sites hosting content inside a single <frame>
Force a layout of the frameview when we detect that a frames content post flattening is wider than the original frame. Also force a relayout of the frame as necessary to sync the correct dimensions (i.e. when navigation occurs inside the frame) Bug:4051085 Change-Id: Ib2543601a71b6931bb3ec4bfda75a2cac26bb2a1
Diffstat (limited to 'WebCore/rendering/RenderFrame.cpp')
-rw-r--r--WebCore/rendering/RenderFrame.cpp5
1 files changed, 2 insertions, 3 deletions
diff --git a/WebCore/rendering/RenderFrame.cpp b/WebCore/rendering/RenderFrame.cpp
index bc40976..a773fbc 100644
--- a/WebCore/rendering/RenderFrame.cpp
+++ b/WebCore/rendering/RenderFrame.cpp
@@ -80,10 +80,9 @@ void RenderFrame::layout()
setWidth(max(view->contentsWidth() + borderAndPaddingWidth(), width()));
setHeight(max(view->contentsHeight() + borderAndPaddingHeight(), height()));
- // This should trigger a layout of the FrameView which will schedule a
- // relayout of this RenderFrame.
+ // Trigger a layout of the FrameView which will schedule a relayout of this RenderFrame.
if (layoutWidth < width())
- setHeight(0);
+ view->layout();
setNeedsLayout(false);
}