From 5c9b9436a58504f9e48283bfd450c688df9f3d45 Mon Sep 17 00:00:00 2001 From: Patrick Scott Date: Thu, 17 Feb 2011 10:58:02 -0500 Subject: Fix frameset expansion. Do not expand frames that cannot scroll. Use contentsWidth and contentsHeight instead of exposing docWidth. Trigger a layout of the parent if the FrameView's layout reveals a larger content dimension. Remove iframe flattening code. Bug: 3370518 Bug: 3323913 Change-Id: I60e89caf335bfaf271f90ffd538c65f3735572da --- WebCore/rendering/RenderBlockLineLayout.cpp | 16 ---------------- 1 file changed, 16 deletions(-) (limited to 'WebCore/rendering/RenderBlockLineLayout.cpp') diff --git a/WebCore/rendering/RenderBlockLineLayout.cpp b/WebCore/rendering/RenderBlockLineLayout.cpp index 6b9fc68..c722136 100644 --- a/WebCore/rendering/RenderBlockLineLayout.cpp +++ b/WebCore/rendering/RenderBlockLineLayout.cpp @@ -609,23 +609,7 @@ void RenderBlock::layoutInlineChildren(bool relayoutChildren, int& repaintLogica else if (fullLayout || o->needsLayout()) { // Replaced elements toRenderBox(o)->dirtyLineBoxes(fullLayout); -#if defined(ANDROID_FLATTEN_IFRAME) || defined(ANDROID_FLATTEN_FRAMESET) - // Android frame flattening during layout() may cause the - // renderer to be destroyed, if for example a frames onresize handler - // deletes the frame - see http://trac.webkit.org/changeset/61070 for example. - // We may be able to remove this protector when we switch to the upstream - // frame flattening code. In the case of an anonymous render object like RenderListMarker - // the document is the DOM node associated with this RenderObject. - RefPtr protector(o->isAnonymous() ? o->document() : o->node()); -#endif o->layoutIfNeeded(); -#if defined(ANDROID_FLATTEN_IFRAME) || defined(ANDROID_FLATTEN_FRAMESET) - // Ensure that the renderer still exists. If it's gone away we will crash pretty - // fast by continuing to use the now invalid o pointer. If the renderer has gone, - // then there's no point in continuing to try to layout it's children so we break. - if (!protector->renderer()) - break; -#endif } } #else -- cgit v1.1