Version: 3.5.4 (using KDE KDE 3.5.4) Installed from: SuSE RPMs OS: Linux If page defines width for html like this: html { width: 80%; } Konqueror displays horizontal scrollbar that is not needed. Minimal test-case: http://zajec.net/bug/konq.scrollbar
Please upload the test-case as an attachment to this bug. This way it doesn't get lost if it takes a long time before the bug is fixed.
Created attachment 17764 [details] Minimal test-case for bug 134051
SVN commit 588278 by carewolf: Don't mix canvas width and root margins. BUG: 134304 BUG: 134051 M +1 -1 render_box.cpp M +2 -4 render_canvas.cpp --- branches/KDE/3.5/kdelibs/khtml/rendering/render_box.cpp #588277:588278 @@ -696,7 +696,7 @@ short RenderBox::containingBlockWidth() const { - if ((isCanvas()||isRoot()) && canvas()->view()) + if (isCanvas() && canvas()->view()) { if (canvas()->pagedMode()) return canvas()->width(); --- branches/KDE/3.5/kdelibs/khtml/rendering/render_canvas.cpp #588277:588278 @@ -109,9 +109,7 @@ return; } - m_width = m_view ? - m_view->frameWidth() + paddingLeft() + paddingRight() + borderLeft() + borderRight() - : m_minWidth; + m_width = m_view ? m_view->frameWidth() : m_minWidth; if (style()->marginLeft().isFixed()) m_marginLeft = style()->marginLeft().value(); @@ -720,7 +718,7 @@ RenderObject *fc = firstChild(); if(fc) { // ow: like effectiveWidth() but without the negative - const int ow = hasOverflowClip() ? width() : overflowWidth(); + const int ow = fc->hasOverflowClip() ? fc->width() : fc->overflowWidth(); int dw = ow + fc->marginLeft() + fc->marginRight(); int rightmostPos = fc->rightmostPosition(false); // kdDebug(6040) << "w " << w << " rightmostPos " << rightmostPos << " dw " << dw << " fc->rw " << fc->effectiveWidth() << " fc->width() " << fc->width() << endl;