From d0abc1a165ce7130e802d892e1417617a99a3ba0 Mon Sep 17 00:00:00 2001 From: tpearson Date: Fri, 3 Sep 2010 17:11:27 +0000 Subject: Merge commit 1170303 from the Enterprise branch git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdelibs@1171389 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- khtml/rendering/render_block.cpp | 68 ---------------------------------------- 1 file changed, 68 deletions(-) (limited to 'khtml/rendering/render_block.cpp') diff --git a/khtml/rendering/render_block.cpp b/khtml/rendering/render_block.cpp index d036b9d09..ccbb6fad0 100644 --- a/khtml/rendering/render_block.cpp +++ b/khtml/rendering/render_block.cpp @@ -2623,74 +2623,6 @@ void RenderBlock::calcMinMaxWidth() // ### compare with min/max width set in style sheet... } -struct InlineMinMaxIterator -{ -/* InlineMinMaxIterator is a class that will iterate over all render objects that contribute to - inline min/max width calculations. Note the following about the way it walks: - (1) Positioned content is skipped (since it does not contribute to min/max width of a block) - (2) We do not drill into the children of floats or replaced elements, since you can't break - in the middle of such an element. - (3) Inline flows (e.g., , , ) are walked twice, since each side can have - distinct borders/margin/padding that contribute to the min/max width. -*/ - RenderObject* parent; - RenderObject* current; - bool endOfInline; - - InlineMinMaxIterator(RenderObject* p, RenderObject* o, bool end = false) - :parent(p), current(o), endOfInline(end) {} - - RenderObject* next(); -}; - -RenderObject* InlineMinMaxIterator::next() -{ - RenderObject* result = 0; - bool oldEndOfInline = endOfInline; - endOfInline = false; - while (current != 0 || (current == parent)) - { - //kdDebug( 6040 ) << "current = " << current << endl; - if (!oldEndOfInline && - (current == parent || - (!current->isFloating() && !current->isReplaced() && !current->isPositioned()))) - result = current->firstChild(); - if (!result) { - // We hit the end of our inline. (It was empty, e.g., .) - if (!oldEndOfInline && current->isInlineFlow()) { - result = current; - endOfInline = true; - break; - } - - while (current && current != parent) { - result = current->nextSibling(); - if (result) break; - current = current->parent(); - if (current && current != parent && current->isInlineFlow()) { - result = current; - endOfInline = true; - break; - } - } - } - - if (!result) break; - - if (!result->isPositioned() && (result->isText() || result->isBR() || - result->isFloating() || result->isReplaced() || - result->isInlineFlow())) - break; - - current = result; - result = 0; - } - - // Update our position. - current = result; - return current; -} - // bidi.cpp defines the following functions too. // Maybe these should not be static, after all... -- cgit v1.2.1