Index: Source/core/frame/FrameView.cpp |
diff --git a/Source/core/frame/FrameView.cpp b/Source/core/frame/FrameView.cpp |
index 5fced74a6cef13722d53860fc67b4800d8797fdd..330539b9069115fdfa18d254f314829cfc1c64eb 100644 |
--- a/Source/core/frame/FrameView.cpp |
+++ b/Source/core/frame/FrameView.cpp |
@@ -595,11 +595,7 @@ void FrameView::calculateScrollbarModesForLayout(ScrollbarMode& hMode, Scrollbar |
if (m_canHaveScrollbars || strategy == RulesFromWebContentOnly) { |
hMode = ScrollbarAuto; |
- // Seamless documents begin with heights of 0; we special case that here |
- // to correctly render documents that don't need scrollbars. |
- IntSize fullVisibleSize = visibleContentRect(IncludeScrollbars).size(); |
- bool isSeamlessDocument = frame().document() && frame().document()->shouldDisplaySeamlesslyWithParent(); |
- vMode = (isSeamlessDocument && !fullVisibleSize.height()) ? ScrollbarAlwaysOff : ScrollbarAuto; |
+ vMode = ScrollbarAuto; |
} else { |
hMode = ScrollbarAlwaysOff; |
vMode = ScrollbarAlwaysOff; |
@@ -785,7 +781,7 @@ void FrameView::performPreLayoutTasks() |
// Don't schedule more layouts, we're in one. |
TemporaryChange<bool> changeSchedulingEnabled(m_layoutSchedulingEnabled, false); |
- if (!m_nestedLayoutCount && !m_inSynchronousPostLayout && m_postLayoutTasksTimer.isActive() && !frame().document()->shouldDisplaySeamlesslyWithParent()) { |
+ if (!m_nestedLayoutCount && !m_inSynchronousPostLayout && m_postLayoutTasksTimer.isActive()) { |
// This is a new top-level layout. If there are any remaining tasks from the previous layout, finish them now. |
m_inSynchronousPostLayout = true; |
performPostLayoutTasks(); |
@@ -871,17 +867,13 @@ void FrameView::scheduleOrPerformPostLayoutTasks() |
ASSERT(!(m_inSynchronousPostLayout && partialLayout().isStopping())); |
if (!m_inSynchronousPostLayout) { |
- if (frame().document()->shouldDisplaySeamlesslyWithParent()) { |
- updateWidgetPositions(); |
- } else { |
- m_inSynchronousPostLayout = true; |
- // Calls resumeScheduledEvents() |
- performPostLayoutTasks(); |
- m_inSynchronousPostLayout = false; |
- } |
+ m_inSynchronousPostLayout = true; |
+ // Calls resumeScheduledEvents() |
+ performPostLayoutTasks(); |
+ m_inSynchronousPostLayout = false; |
} |
- if (!m_postLayoutTasksTimer.isActive() && (needsLayout() || m_inSynchronousPostLayout || frame().document()->shouldDisplaySeamlesslyWithParent())) { |
+ if (!m_postLayoutTasksTimer.isActive() && (needsLayout() || m_inSynchronousPostLayout)) { |
// If we need layout or are already in a synchronous call to postLayoutTasks(), |
// defer widget updates and event dispatch until after we return. postLayoutTasks() |
// can make us need to update again, and we can get stuck in a nasty cycle unless |
@@ -1789,11 +1781,6 @@ void FrameView::scheduleRelayout() |
return; |
InspectorInstrumentation::didInvalidateLayout(m_frame.get()); |
- // When frame seamless is enabled, the contents of the frame could affect the layout of the parent frames. |
- // Also invalidate parent frame starting from the owner element of this frame. |
- if (m_frame->ownerRenderer() && m_frame->document()->shouldDisplaySeamlesslyWithParent()) |
- m_frame->ownerRenderer()->setNeedsLayout(); |
- |
int delay = m_frame->document()->minimumLayoutDelay(); |
if (m_layoutTimer.isActive() && m_delayedLayout && !delay) |
unscheduleRelayout(); |
@@ -2809,8 +2796,6 @@ void FrameView::updateLayoutAndStyleIfNeededRecursive() |
for (Vector<RefPtr<FrameView> >::iterator it = frameViews.begin(); it != end; ++it) |
(*it)->updateLayoutAndStyleIfNeededRecursive(); |
- // When seamless is on, child frame can mark parent frame dirty. In such case, child frame |
- // needs to call layout on parent frame recursively. |
// This assert ensures that parent frames are clean, when child frames finished updating layout and style. |
ASSERT(!needsLayout()); |
} |