Jorge Arellano Cid wrote:
Hi there!
Hi!
At this point, having an FLTK-based dillo starts to be a very interesting option (especially after considering Owen's remarks, the pango issues, and the new expose model in GTK2 which adds a redesign stage for our progressive rendering).
Maybe someone that has gtkhtml2 installed can tell us how it compares with respect to the current gtk2 patched Dillo ? I can only experiment with Firebird-gtk2-xft, and I must say that the difference with the gtk1.2 version exist but it way smaller than the difference between dillo-gtk2 and dillo-gtk1. I experimented lately with mlterm, a multilanguage terminal with bidi-support and xft. It is currently slower than xterm+xft and has annonying flickers when scrolling. This makes me feel that the bottleneck will be mainly pango, the drawing path being more easily optimized with proper drawing algorithm. In my app, I had to create a special gtktreeview to have good performance and low memory usage on +1000 items. The optimization was done on the algorithm level and a bit also on the expose path.
Why did we want to go to GTK2? Mainly because of UTF-8 support.
To my eyes, there are two things that are important to allow most people access to Internet: Unicode support and Accessibility functionality. One advantage of GTK2 is proper Unicode support plus a Bidirectional algorithms and text layout and character shaping for many languages. Do you know if fltk2 has bidi support? I could not find any link about this. Another advantage is that when used with Gnome, GTK2 gains accessibility functionality for handicapped persons. I like to think that the kbnav is already one big step toward offering such functionality (perhaps it lacks a way to open context menus), thanks to Frank. But I must say I do not have any experience with Gnome and its accessibility functions.
Finally, from what I've seen, images can also be "handed" over to FLTK. Avoiding having to decode them into RGB, and manage them inside dillo (png.c, gif.c, jpeg.c, dicache.c, image.c, dw_image.c, ...).
Gtk2 comes with gdk-pixbuf. So you only need to pass it a file name or a pointer to a data.
This native FLTK images also provide an alpha channel so background images should be easy to implement too.
Do we really need alpha channel for background images? I mean, background images can drawn before foreground widgets, without the need for alpha channel.
I've been playing with fltk-1.1.4 for a while. It comes with a manual and lots of examples.
I played with version 2 from cvs, and it is amazingly fast. It is a shame that Gtk2 follows the inflation in resource needs like commercial products. -- Melvin Hadasht