Here is a task breakdown with estimates for adding a tabbed interface, similar
to what NetCaptor adds to IE, to Navigator. This feature adds technology
that can also be considered a performance improvement, and may lead to new
features or improvements to existing features.
(1) Implement a <tabbrowser> XBL widget that is a tab control that
can hold multiple <browser> widgets. 1 day.
(2) Support the dynamic shifting of the primary content area in a window.
1 day.
(3) Add a notification for primary content shifting, so that observers of
the primary content area can be shifted to the new content area. This is
required for the lock icon, session history, progress notifications, etc.
2 days.
(4) Support progress and load icons on the tabs themselves. 1 day.
(5) favicon support on the tabs on Win32. 1 day.
(6) Ensure that only the primary content area can set status. Ensure
that the tabs contain the correct titles and that updates to the title update
the tab titles as well as the window title. 1 day.
(7) Add menu items for open link in new tab and for new navigator tab along
with appropriate accelerator support. Add support for the ability to
close individual tabs using a close box in the window. Support closing
one tab vs. closing the whole window. 1 day.
(8) Add support for Bookmark Groups to Navigator. This includes additional
options in the Add Bookmark dialog for bookmarking all current tabs.
There should also be a modeless dialog for constructing groups that supports
drag and drop construction of the pages in the group. Skins will need
a new icon for groups (e.g., a cluster of ribbons instead of a single bookmark
ribbon) 2 days.
(9) Set as home page should support the ability to have a group designated
as a home page rather than a single page. Prefs UI would need updating.
1 day.
(10) Support arrow scrolling of the open tabs using a pair of arrow buttons.
Ensure that these arrows appear at the right times and show/hide.
Ensure that all tabs vanish when the user has only one tab remaining.
2 days.