made by me, kocienda and harrison to just remove it.
Reviewed by mjs
* khtml/rendering/bidi.cpp:
(khtml::RenderBlock::layoutInlineChildren):
* khtml/rendering/render_block.cpp:
(khtml:::RenderFlow):
* khtml/rendering/render_block.h:
* khtml/rendering/render_flow.cpp:
(RenderFlow::dirtyLinesFromChangedChild):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@8141
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
+2004-12-06 David Hyatt <hyatt@apple.com>
+
+ Fix for 3615411, the linesAppended optimization was old and broken, and it's easier with the new code fixes
+ made by me, kocienda and harrison to just remove it.
+
+ Reviewed by mjs
+
+ * khtml/rendering/bidi.cpp:
+ (khtml::RenderBlock::layoutInlineChildren):
+ * khtml/rendering/render_block.cpp:
+ (khtml:::RenderFlow):
+ * khtml/rendering/render_block.h:
+ * khtml/rendering/render_flow.cpp:
+ (RenderFlow::dirtyLinesFromChangedChild):
+
2004-12-06 David Hyatt <hyatt@apple.com>
Fix for 3787133, some web pages print with many blank pages. Make sure to use the real page print rect and
if (repaintRect.height() == 0)
repaintRect.setHeight(kMax(oldLineBottom, m_overflowHeight) - repaintRect.y());
}
-
- setLinesAppended(false);
-
+
if (!firstLineBox() && element() && element()->isContentEditable() && element()->rootEditableElement() == element())
m_height += lineHeight(true);
int& yPos)
{
RootInlineBox* last = 0;
- if (m_linesAppended || !startLine)
+ if (!startLine)
last = 0;
else {
for (RootInlineBox* curr = startLine->nextRootBox(); curr; curr = curr->nextRootBox()) {
m_positionedObjects = 0;
m_pre = false;
m_firstLine = false;
- m_linesAppended = false;
m_hasMarkupTruncation = false;
m_selectionState = SelectionNone;
m_clearStatus = CNONE;
virtual void updateFirstLetter();
bool inRootBlockContext() const;
-
- void setLinesAppended(bool b=true) { m_linesAppended = b; }
- bool linesAppended() const { return m_linesAppended; }
void setHasMarkupTruncation(bool b=true) { m_hasMarkupTruncation = b; }
bool hasMarkupTruncation() const { return m_hasMarkupTruncation; }
EClear m_clearStatus : 2;
bool m_topMarginQuirk : 1;
bool m_bottomMarginQuirk : 1;
- bool m_linesAppended : 1; // Whether or not a block with inline children has had lines appended.
bool m_hasMarkupTruncation : 1;
SelectionState m_selectionState : 3;
{
if (!parent() || selfNeedsLayout() || isTable())
return;
-
- if (adding && !isInline() && (!child->nextSibling() || !firstLineBox())) {
- // An append onto the end of a block or we don't have any lines anyway.
- // In this case we don't have to dirty any specific lines.
- static_cast<RenderBlock*>(this)->setLinesAppended();
- return;
- }
-
+
// For an empty inline, go ahead and propagate the check up to our parent.
if (isInline() && !firstLineBox())
return parent()->dirtyLinesFromChangedChild(this);