| Index: Source/core/rendering/RenderFrameSet.cpp
|
| diff --git a/Source/core/rendering/RenderFrameSet.cpp b/Source/core/rendering/RenderFrameSet.cpp
|
| index c10093f50eacb5bf90bc303d08a884f81bc6b1df..18d726089d7043f27f6b7c9de22d97a1fad6706b 100644
|
| --- a/Source/core/rendering/RenderFrameSet.cpp
|
| +++ b/Source/core/rendering/RenderFrameSet.cpp
|
| @@ -471,10 +471,7 @@ void RenderFrameSet::layout()
|
| layOutAxis(m_rows, frameSet()->rowLengths(), height() - (rows - 1) * borderThickness);
|
| layOutAxis(m_cols, frameSet()->colLengths(), width() - (cols - 1) * borderThickness);
|
|
|
| - if (flattenFrameSet())
|
| - positionFramesWithFlattening();
|
| - else
|
| - positionFrames();
|
| + positionFrames();
|
|
|
| RenderBox::layout();
|
|
|
| @@ -535,119 +532,6 @@ void RenderFrameSet::positionFrames()
|
| }
|
| }
|
|
|
| -void RenderFrameSet::positionFramesWithFlattening()
|
| -{
|
| - RenderBox* child = firstChildBox();
|
| - if (!child)
|
| - return;
|
| -
|
| - int rows = frameSet()->totalRows();
|
| - int cols = frameSet()->totalCols();
|
| -
|
| - int borderThickness = frameSet()->border();
|
| - bool repaintNeeded = false;
|
| -
|
| - // calculate frameset height based on actual content height to eliminate scrolling
|
| - bool out = false;
|
| - for (int r = 0; r < rows && !out; r++) {
|
| - int extra = 0;
|
| - int height = m_rows.m_sizes[r];
|
| -
|
| - for (int c = 0; c < cols; c++) {
|
| - IntRect oldFrameRect = pixelSnappedIntRect(child->frameRect());
|
| -
|
| - int width = m_cols.m_sizes[c];
|
| -
|
| - bool fixedWidth = frameSet()->colLengths() && frameSet()->colLengths()[c].isFixed();
|
| - bool fixedHeight = frameSet()->rowLengths() && frameSet()->rowLengths()[r].isFixed();
|
| -
|
| - // has to be resized and itself resize its contents
|
| - if (!fixedWidth)
|
| - child->setWidth(width ? width + extra / (cols - c) : 0);
|
| - else
|
| - child->setWidth(width);
|
| - child->setHeight(height);
|
| -
|
| - child->setNeedsLayout(true);
|
| -
|
| - if (child->isFrameSet())
|
| - toRenderFrameSet(child)->layout();
|
| - else
|
| - toRenderFrame(child)->layoutWithFlattening(fixedWidth, fixedHeight);
|
| -
|
| - if (child->height() > m_rows.m_sizes[r])
|
| - m_rows.m_sizes[r] = child->height();
|
| - if (child->width() > m_cols.m_sizes[c])
|
| - m_cols.m_sizes[c] = child->width();
|
| -
|
| - if (child->frameRect() != oldFrameRect)
|
| - repaintNeeded = true;
|
| -
|
| - // difference between calculated frame width and the width it actually decides to have
|
| - extra += width - m_cols.m_sizes[c];
|
| -
|
| - child = child->nextSiblingBox();
|
| - if (!child) {
|
| - out = true;
|
| - break;
|
| - }
|
| - }
|
| - }
|
| -
|
| - int xPos = 0;
|
| - int yPos = 0;
|
| - out = false;
|
| - child = firstChildBox();
|
| - for (int r = 0; r < rows && !out; r++) {
|
| - xPos = 0;
|
| - for (int c = 0; c < cols; c++) {
|
| - // ensure the rows and columns are filled
|
| - IntRect oldRect = pixelSnappedIntRect(child->frameRect());
|
| -
|
| - child->setLocation(IntPoint(xPos, yPos));
|
| - child->setHeight(m_rows.m_sizes[r]);
|
| - child->setWidth(m_cols.m_sizes[c]);
|
| -
|
| - if (child->frameRect() != oldRect) {
|
| - repaintNeeded = true;
|
| -
|
| - // update to final size
|
| - child->setNeedsLayout(true);
|
| - if (child->isFrameSet())
|
| - toRenderFrameSet(child)->layout();
|
| - else
|
| - toRenderFrame(child)->layoutWithFlattening(true, true);
|
| - }
|
| -
|
| - xPos += m_cols.m_sizes[c] + borderThickness;
|
| - child = child->nextSiblingBox();
|
| - if (!child) {
|
| - out = true;
|
| - break;
|
| - }
|
| - }
|
| - yPos += m_rows.m_sizes[r] + borderThickness;
|
| - }
|
| -
|
| - setWidth(xPos - borderThickness);
|
| - setHeight(yPos - borderThickness);
|
| -
|
| - if (repaintNeeded)
|
| - repaint();
|
| -
|
| - // all the remaining frames are hidden to avoid ugly spurious unflowed frames
|
| - for (; child; child = child->nextSiblingBox()) {
|
| - child->setWidth(0);
|
| - child->setHeight(0);
|
| - child->setNeedsLayout(false);
|
| - }
|
| -}
|
| -
|
| -bool RenderFrameSet::flattenFrameSet() const
|
| -{
|
| - return frame() && frame()->settings() && frame()->settings()->frameFlatteningEnabled();
|
| -}
|
| -
|
| void RenderFrameSet::startResizing(GridAxis& axis, int position)
|
| {
|
| int split = hitTestSplit(axis, position);
|
| @@ -676,9 +560,6 @@ void RenderFrameSet::continueResizing(GridAxis& axis, int position)
|
|
|
| bool RenderFrameSet::userResize(MouseEvent* evt)
|
| {
|
| - if (flattenFrameSet())
|
| - return false;
|
| -
|
| if (!m_isResizing) {
|
| if (needsLayout())
|
| return false;
|
|
|