[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-19 5:54:53
[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
> 
Hi again!
  Please, could somebody look at this ? Yes, I'm really dull, but I can't
isolate a simple test case from the page. When I remove its parts, the
rendering improves and finally it's ok, although the page is still too complex
to be the test case. I really gave many hours of work to this problem but
there has been no creative feedback from you anytime.
  Again, I've found a place in the source which makes this misrendering.
I hope that when I point You to the exact place, You can deduce, which feature
in the page is causing problems, and eventually fix the source ? Or am I wrong ?
  Simply, the following patch makes the following to the page:
  - Both side columns are rendered OK.
  - The main middle column has a big space on top, before the first perex
starts. Yes, it's another kind of misrendering, but it's not fatal as the 
previous one.
  I also tried to display the page in Netscape 4.72 (Linux), Mozilla 0.9.6 (Linux)
and IE 6.0 (Linux :-) i.e. NT4.0 with vmware). No browser failed in basic
layouting (although there were other problems, namely in font sizes - the
worst results gave Mozilla).
  Mobilmania.cz is one of the most popular sites dedicated to mobile phones
in Czech republic (and mobiles are VERY popular there) so misrendering such a site
makes really big impact for konqueror users there.
  The patch fixing the problem:

Index: render_flow.cpp
===================================================================
RCS file: /home/kde/kdelibs/khtml/rendering/render_flow.cpp,v
retrieving revision 1.271
diff -u -3 -p -r1.271 render_flow.cpp
--- render_flow.cpp	2002/03/14 08:50:49	1.271
+++ render_flow.cpp	2002/03/19 06:36:03
@@ -372,12 +372,13 @@ void RenderFlow::layoutBlockChildren( bo
         if ( relayoutChildren || floatBottom() > m_y ||
              (child->isReplaced() && (child->style()->width().isPercent() || \
child->style()->height().isPercent())))  child->setLayouted(false);
+#if 0
 	if ( child->style()->flowAroundFloats() && !child->isFloating() &&
 	     style()->width().isFixed() && child->minWidth() > lineWidth( m_height ) ) {
 	    m_height = floatBottom();
 	    prevMargin = 0;
 	}
-
+#endif
 //         kdDebug( 6040 ) << "   " << child->renderName() << " loop " << child << \
", " << child->isInline() << ", " << child->layouted() << endl;  //         kdDebug( \
6040 ) << t.elapsed() << endl;  // ### might be some layouts are done two times... \
FIX that.


	 				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