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

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

Issue 138443013: Remove iframe@seamless (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Include remove tests Created 6 years, 11 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/RenderIFrame.cpp
diff --git a/Source/core/rendering/RenderIFrame.cpp b/Source/core/rendering/RenderIFrame.cpp
index a6ce0faa54b9ca783551084252f8be348800943f..8dfd261080eb54842efda2d3d277a6bf77f17403 100644
--- a/Source/core/rendering/RenderIFrame.cpp
+++ b/Source/core/rendering/RenderIFrame.cpp
@@ -44,42 +44,12 @@ RenderIFrame::RenderIFrame(Element* element)
bool RenderIFrame::shouldComputeSizeAsReplaced() const
{
- // When we're seamless, we use normal block/box sizing code except when inline.
- return !isSeamless();
+ return true;
}
bool RenderIFrame::isInlineBlockOrInlineTable() const
{
- return isSeamless() && isInline();
-}
-
-LayoutUnit RenderIFrame::minPreferredLogicalWidth() const
-{
- if (!isSeamless())
- return RenderPart::minPreferredLogicalWidth();
-
- RenderView* childRoot = contentRootRenderer();
- if (!childRoot)
- return 0;
-
- return childRoot->minPreferredLogicalWidth() + borderAndPaddingLogicalWidth();
-}
-
-LayoutUnit RenderIFrame::maxPreferredLogicalWidth() const
-{
- if (!isSeamless())
- return RenderPart::maxPreferredLogicalWidth();
-
- RenderView* childRoot = contentRootRenderer();
- if (!childRoot)
- return 0;
-
- return childRoot->maxPreferredLogicalWidth() + borderAndPaddingLogicalWidth();
-}
-
-bool RenderIFrame::isSeamless() const
-{
- return node() && node()->hasTagName(iframeTag) && toHTMLIFrameElement(node())->shouldDisplaySeamlessly();
+ return isInline();
}
LayerType RenderIFrame::layerTypeRequired() const
@@ -102,44 +72,14 @@ RenderView* RenderIFrame::contentRootRenderer() const
return childFrameView ? childFrameView->frame().contentRenderer() : 0;
}
-void RenderIFrame::layoutSeamlessly()
-{
- updateLogicalWidth();
- // FIXME: Containers set their height to 0 before laying out their kids (as we're doing here)
- // however, this causes FrameView::layout() to add vertical scrollbars, incorrectly inflating
- // the resulting contentHeight(). We'll need to make FrameView::layout() smarter.
- setLogicalHeight(0);
- updateWidgetPosition(); // Tell the Widget about our new width/height (it will also layout the child document).
-
- // Laying out our kids is normally responsible for adjusting our height, so we set it here.
- // Replaced elements normally do not respect padding, but seamless elements should: we'll add
- // both padding and border to the child's logical height here.
- FrameView* childFrameView = toFrameView(widget());
- if (childFrameView) // Widget should never be null during layout(), but just in case.
- setLogicalHeight(childFrameView->contentsHeight() + borderTop() + borderBottom() + paddingTop() + paddingBottom());
- updateLogicalHeight();
-
- updateWidgetPosition(); // Notify the Widget of our final height.
-
- // Assert that the child document did a complete layout.
- RenderView* childRoot = childFrameView ? childFrameView->frame().contentRenderer() : 0;
- ASSERT(!childFrameView || !childFrameView->layoutPending());
- ASSERT_UNUSED(childRoot, !childRoot || !childRoot->needsLayout());
-}
-
void RenderIFrame::layout()
{
ASSERT(needsLayout());
LayoutRectRecorder recorder(*this);
- if (isSeamless()) {
- layoutSeamlessly();
- // Do not return so as to share the layer and overflow updates below.
- } else {
- updateLogicalWidth();
- // No kids to layout as a replaced element.
- updateLogicalHeight();
- }
+ updateLogicalWidth();
+ // No kids to layout as a replaced element.
+ updateLogicalHeight();
m_overflow.clear();
addVisualEffectOverflow();

Powered by Google App Engine
This is Rietveld 408576698