diff options
author | Ben Murdoch <benm@google.com> | 2011-03-15 12:47:30 +0000 |
---|---|---|
committer | Ben Murdoch <benm@google.com> | 2011-03-15 12:49:04 +0000 |
commit | 115fa20e56568607490319cf8075fca19ae9112c (patch) | |
tree | bb5fb4eb48ab57fb1ae8918073531a80377132f6 /WebCore/rendering/RenderFrame.cpp | |
parent | 833c9ceaa300f52cf2d1b12a9b3482ad417a3c21 (diff) | |
download | external_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.cpp | 5 |
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); } |