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

List:       kfm-devel
Subject:    'Jazilla' interested in konqueror, evaluating porting
From:       David Faure <david () mandrakesoft ! com>
Date:       2000-05-05 9:27:02
[Download RAW message or body]

Found on comp.windows.x.kde:

Subject: 
             Jazilla table rendering and Konquerer
        Date: 
             Thu, 04 May 2000 13:33:34 -0400
       From: 
             Andy Tripp <atripp@home.com>
 Newsgroups: 
             netscape.public.mozilla.java, comp.windows.x.kde




Fellow Jazillians,

I've been really busy lately, so I haven't been able to do much on the renderer.
I did spend a few nights getting some basic table rendering going, but the algorithm
to layout HTML tables is very complex.

I'm only going to get busier and I just won't have much, if any, time for Jazilla.
I'll submit what code I have for table rendering, but it's really half-baked.

On a brighter note, you may have noticed that the new browser called Konquerer, which is
part of KDE, is out.  KDE is an C++ open-source product with the Konquerer browser,
an office package, etc.  I've heard that Konquerer is pretty good (see 
It's written in C++ using the Qt cross-platform GUI toolkit (www.trolltech.com).

I spent some time checking the renderer source code, and it's actually quite readable
and understandable.  I've spent lots of time in the past looking at Mozilla, Amaya,
and HotJava rendering code, and Konquerer's code seems FAR easier to understand,
and thus port to Java.  I've never found any significant C++ code yet that I thought
made sense to port to Java for Jazilla.  It's always been so complex that I always felt a 
total rewrite was better.  But not with Konquerer.  It's been written recently, 
is well written, and is open source...the only problem is it's not Java.

So, if anyone's interested, I'd suggest downloading the rendering part of KDE.
See http://developer.kde.org.
See http://www.kde.org or for a quick peek, go to ftp://ftp.kde.org/kde/snapshots/current/
and download the "kdelibs" package.  The rendering stuff is in kdelibs/khtml/rendering.
Attached to this post are two sample files: render_hr.cpp and render_table.cpp.  Take a quick look
and I think you'll agree that the code's fairly readable.  Compare it to the
equivalent Mozilla, Amaya, or HotJava code, and you'll *really* appreciate it.

KDE, like Linux, has reached a "critical mass" of open-source developers...they're
really cranking on it.  Jazilla has always struggled with perhaps 4-6 developers
working on it at one time...I read somewhere ("The Cathedral..." maybe) that any open-source
project needs about 12 developers to reach "critical mass".  KDE has hundreds
(see http://www.kde.org/whatiskde/proj.html)  See also http://www.kde.org/whatiskde/devmodel.html
for some interesting info about how KDE is being developed.

KDE is UNIX-only (X windows) and C++, but if we are to have our own renderer, 
we *must* find a way to leverage other code. The first rule in open-source is don't 
re-invent anything, and Jazilla just doesn't have the manpower to build its own
renderer from scratch.

Some possible paths to take:
 * Translate Konquerer from C++/Qt to Java.  Problem: how to keep up to date?
 * Add a Java "wrapper" to Konquerer, probably using JNI (as suggested    here:
http://developer.kde.org/language-bindings/java/)
 * Have a version of Konquerer that uses Swing instead of Qt (also suggested at that url).

At a minimum, someone should try to port the Konquerer table rendering to Java for Jazilla.
Without table rendering, Jazilla doesn't have much of a renderer, and without a renderer,
Jazilla isn't much good.  I'd love to work on this, but I just don't have the time now.

Andy

-- 
David FAURE
david@mandrakesoft.com, faure@kde.org
http://home.clara.net/faure/
KDE, Making The Future of Computing Available Today

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

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