Hi Jorge, On Wed, Sep 17, 2008 at 06:14:58PM -0400, Jorge Arellano Cid wrote:
Hi there,
The tabs patch has grown to a quite usable state, so it was committed for you to test. I know we're close to the release so we can still rollback. It's just that I'd much like to have it in the main tree before dillo2 goes out.
The patch comes with several assorted cleanups and normalizations. For instance: derived widgets now use the "Cust" prefix instead of "New", the window->user_data() holds a pointer to the current UI, and child widgets get it from there, etc.
OK, so to the tabs...
This implementation uses one UI per tab, and it's quite fast. You can switch tabs with the mouse, Shift+{Left, Right} or {Ctrl,Ctrl+Shift}+TAB. Use Ctrl+N, or middle click over a link to open a new tab (just as it was with new windows). Ctrl+Q closes the tab.
The idea is that in the future the user can dillo2rc-choose whether to use windows or tabs, and windows with tabs.
Very nice!
Some issues:
1.- Tab Tooltips are commented out because FLTK has problems with them. 2.- Shift+{Left, Right} work even when the location is focused. In the latter case you may need to click the right key twice for it to focus and work (don't know why, the Left key works OK). 3.- Currently there's no hidden tabs widget, when there's only one tab (haven't even tried, it may be as simple as hiding the group).
Attached patch implements that. I don't like the global DilloTabs variable in uicmd.cc, but the static one a_UIcmd_browser_window_new() was not better. Perhaps DilloTabs should become member of some new class?
4.- There's no close tab icon in the tab label. 5.- No warning popup for close window with multiple open tabs.
OK, please take it for a ride and test.
Sometimes Shift-Arrow does not seem to work depending on where the focus is. Ctrl-Tab seems to work always. The window title is not updated when switching between tabs. Is this intended? Cheers, Johannes