Hi'all,

The next version (10) of my tab patch is ready (see bottom of this
message for download instructions). Control over margins in (i)frames
has been improved (no more extraneous margin space in iframe). Dillo
(when configured for frameset support) now always renders frameset -
even when body content is placed outside the frameset. Frame resize
support has been improved a bit. Worked around a bug in GtkContainer
which messed up the 'tab' order (focus got stuck in GtkToolbar
widgets). Improved/corrected focus handling in dw_gtk_scrolled_frame.

New features:
 - interactive search ('find as you type') on "/" key
 - new preference: popup_dialogs=([YES]/NO)
   when set to NO the status bar and location bar are used for search
   and open URL. Open file and save file still use popup dialogs,
   though.

Changed preferences from previous versions of patch:
 - frame_blank_in_tab and tab_on_middle_click are now merged into a
   new preference: tab_instead_of_window=(YES/[NO])
 - document_title_use_url is gone, this functionality is now default
 - (for those who downloaded the interim-patch with find_as_you_type)
   find_as_you_type is gone, this functionality is bound by default to
   the "/" key. Use Ctrl-F for normal (non-interactive) search

Some behavioural changes with regard to stock (CVS) Dillo:
 - Shift-Ctrl-L (instead of Ctrl-L) for "open URL" dialog
 - Ctrl-L for "focus location bar"
 - Ctrl-S for "Save page As..."
 - Ctrl-U for "view source" while in a document, "clear entry"
   everywhere  else (in stock Dillo this key is bound to "focus
   location bar" while in a document)
 - Ctrl-B for "Bookmark this page"
 - Alt-H for "Home"
 - "/" starts incremental search instead of normal search. For normal
   (non-incremental) search use Ctrl-F

The popup menu over images and hand cursor over input image features
wihch used to be part of this patch have meanwhile been committed to
CVS. The same goes for the bug fixes to dw_image and dw_widget.

Support for the 0.7.3 branch will be dropped for the next version of
this patch. Some of the new features (interactive search, popup
dialog=NO, tab order bug fix) are not availabe in the 0.7.3 version of
the patch. if you want the new features you'll have to switch to
0.8.0-pre. Sorry, folks, but that is the price you pay for progress...

Currently, both tab and frame support can be turned off completely,
producing a smaller binary. I might (on request of other Dillo
developers) remove the conditional compilation, thereby making tab and
frame support a permanent feature of Dillo. If you want to keep the
conditional compilation feature, speak out on the mailing list!

Frameset (and iframe) support is enabled by default, it can be
disabled using the configure option --enable-xhtml-dtd=strict. You can
also use --enable-xhtml-dtd=transitional, which will give you iframe but no
frameset support. The default option, --enable-xhtml-dtd=frameset,
gives both iframe and frameset support.

As usual, tab support can be disabled using --disable-tabs.

What does not work yet:

 - the full_screen_off_button is not shown in frame documents. Use double-click
   instead to toggle the full screen setting...
 - the frameborder attribute works, but dw_gtk_scrolled_frame always
   draws a (focus) shadow around itself - even with the border size is
   set to 0. This can be solved in several ways - adding a 'borderless'
   attribute to dw_gtk_scrolled_frame, using a special borderless GTK theme
   for the widget, etc. In GTK2 this is all much easier (just set the widget's
   style's xthickness/ythickness to 0), but we're not there yet...
 - borderless frames can not be resized, even though Dillo always
   shows a thin border (see above). Who cares about resizing borderless frames?
   Mozilla does it, but I don't think this is an issue. Agree?
 - iframes always have a border (see above)

Tabs, Frames and browser bloat
==============================

version: 0.8.0-pre
patch: dillo-20030926-tabs.patch.gz
unpatched:                       292372 bytes
patched, no tabs, no frames:     298624 bytes
patched, with tabs, no frames:   306176 bytes
patched, no tabs, with frames:   315200 bytes
patched, with tabs, with frames: 322784 bytes
 
version: 0.7.3
patch: dillo-0.7.3-20030926-tabs.patch.gz
unpatched:                       285248 bytes
patched, no tabs, no frames:     291852 bytes 
patched, with tabs, no frames:   298700 bytes
patched, no tabs, with frames:   308268 bytes
patched, with tabs, with frames: 316556 bytes
 
(gcc 3.2.2, binutils 2.13.90.0.18, CFLAGS "-Os")
 
Download instructions
=====================

There are two versions of the patch, one for Dillo 0.7.3 (release)
and one for Dillo 0.8.0-pre (CVS). Make sure to download the correct
version for the Dillo source you want to patch! If you patch the CVS
source, do not forget to run ./autogen.sh after applying the patch.

The CVS patch is made against 20030926 CVS, while the 0.7.3 patch is
made against Dillo-0.7.3.tar.bz2 (the source tarball on the main Dillo
website). Both versions of the patch can be downloaded from the usual
(ad-happy, but...) Geocities site:

http://www.geocities.com/ikbenfrank/

More specifically for both versions:

Dillo 0.8.0-pre (CVS)
=====================
http://www.geocities.com/ikbenfrank/dillo-20030926-tabs.patch.gz
size:    73796 bytes (gzipped, as downloaded)
         315210 bytes (uncompressed)
md5sum:  e8e1bf9d20ff26991c9d3b7cc1202ee2 (gzipped, as downloaded)
         127d224ff29ce263d685718c7ca511f1 (uncompressed)

Dillo 0.7.3 (release)
=====================
http://www.geocities.com/ikbenfrank/dillo-0.7.3-20030926-tabs.patch.gz
size:    88264 bytes (gzipped, as downloaded)
         369994 bytes (uncompressed)
md5sum:  51df11b26723283124ada4368a9958ea (gzipped, as downloaded)
         64769d5f996cec2ac248578a234b32a7 (uncompressed)
As always, check the site for the most recent version

Cheers//Frank
-- 
  WWWWW      ________________________
 ## o o\    /     Frank de Lange     \
 }#   \|   /      +46-734352015       \
  \ `--| _/           \
   `---'  \       +31-640037120        /
           \    frank@unternet.org    /
            `------------------------'
 [ "Omnis enim res, quae dando non deficit, dum habetur
    et non datur, nondum habetur, quomodo habenda est."  ]

    Source: geocities.com/ikbenfrank