[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kfm-devel
Subject:    Re: Current konqueror misrendering
From:       Pavel Troller <patrol () sinus ! cz>
Date:       2002-03-15 9:29:28
[Download RAW message or body]

Hi!
  I was waiting if somebody will react on this, but nobody did...
  Today I noticed khtml update which made my version of render_flow.cpp
colliding. I updated it from cvs, built and http://www.mobilmania.cz
is misrendered again. _P_L_E_A_S_E_ could somebody find where is the
problem ? Now I'm in a big stress in my work, I don't have hours of
free time to make a test case...
                                      With regards, Pavel Troller

> > On Thursday 07 March 2002 19:44, Pavel Troller wrote:
> > 
> > > Did anybody noticed this ? I mailed it 5.3. early morning and still
> > > nobody answered nor fixed the problem.
> > 
> > Then you should build a test case...
> > 
> Hi!
> I tried it, I spent about 2 hours on it but I gave up.
> However, I did IMHO a better thing: I found a particular patch which
> causes this. It's the following:
> 
> 
> Index: rendering/render_flow.cpp
> ===================================================================
> RCS file: /home/kde/kdelibs/khtml/rendering/render_flow.cpp,v
> retrieving revision 1.265
> retrieving revision 1.266
> diff -u -3 -p -r1.265 -r1.266
> --- rendering/render_flow.cpp	2002/02/28 18:41:10	1.265
> +++ rendering/render_flow.cpp	2002/03/01 23:49:16	1.266
> @@ -371,6 +371,11 @@ void RenderFlow::layoutBlockChildren( bo
> if ( relayoutChildren || floatBottom() > m_y ||
> (child->isReplaced() && (child->style()->width().isPercent() || \
> child->style()->height().isPercent()))) child->setLayouted(false);
> +	if ( child->style()->flowAroundFloats() && !child->isFloating() &&
> +	     style()->width().isFixed() && child->minWidth() > lineWidth( m_height ) ) {
> +	    m_height = floatBottom();
> +	    prevMargin = 0;
> +	}
> 
> //         kdDebug( 6040 ) << "   " << child->renderName() << " loop " << child << \
> ", " << child->isInline() << ", " << child->layouted() << endl; //         kdDebug( \
> 6040 ) << t.elapsed() << endl; @@ -402,6 +407,7 @@ void \
> RenderFlow::layoutBlockChildren( bo 
> if(checkClear(child)) prevMargin = 0; // ### should only be 0
> // if oldHeight+prevMargin < newHeight
> +		
> int margin = child->marginTop();
> //kdDebug(0) << "margin = " << margin << " prevMargin = " << prevMargin << endl;
> margin = collapseMargins(margin, prevMargin);
> 
> 
> Now I have the latest khtml with this patch reversed and the page renders
> OK.
> I hope this will help You to fix the problem.
> With regards, Pavel Troller


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic