From Camino Wiki
Jump to navigation Jump to search

This document has been obsoleted by Summer of Code 2006 and the tab prefs reorg of Sep 06

Tab/Window Session Saving

I think it would be very interesting to allow the user to creat one custom session it can save manually apart from the auto saved session we will implement. Separating a manual saved session from the auto saved one could be very handy (standard working workflow?)

  • Window menu:
    • Restore Auto Saved Session
    • Restore Manual Saved Session
    • Save Current Session
  • Preferences
    • Auto save sessions (on by default and should be hidden)
    • Auto Restore Session
      • Off by default, but pref should be in the window menu.
      • Note that user will be able to restore manualy from the widnow menu.
      • We disable it in default to not cause a crash loop.
  • Research & Ideas
    • When launching the app after a crash or a quit we could show a window asking if the users want's to restore the previous session (warning for a potential crash loop) and adding a pref to remember the setting.
    • It would be very interesting to see how we could restore after a crash, and if we even want to do that because of the potential crash loop.
    • Would we want to look at our console crash log?
  • Questions
    • Wen and how do we save the session?
      • When a page is loaded (in either a tab or window)
    • When do we update a session?
      • Do we remove url frm the session when a tab or window is closed?
    • What session info do we save?
      • window size, window location, tab order, (form entries?)

Main tab browsing features

  • Tab reordering
    • Click/hold/drag a tab to reorder the order in witch tabs are displayed. The feature would behave exactly like toolbars/dock use such an "slide in place" effect.
  • Tab Expose
    • Using a predefined key combination would active a new view (in a similar way to the bm view) and would show a view that reveals all the open tabs in a certain window. The effect would be similar to the Mac OS X Expose feature.
    • Or it could be an overlay view that is layn over the tab bar and content sections. This could be a semi transparant black view?
    • I wouldn't recommend making tab expose a "system level" feature like Shiira made it. Tab expose is a browser window level feature and thus should only take place and affect the window in question. Users will be able to use the system expose to find other windows. On a 12" screen we could easily layout 20 or so thumbnails of websites without making them unreadable. The thumbnails would auto scale to ensure that all the tab views fit within the viewable area. Adding a scroll-bar would defeat the whole idea of exposing all tabs.
    • So the idea is to create contact sheet like tab view that shows thumbnails of all the open tabs and their title when hovering over them (look at the system expose).
  • Tab bar slider
    • At both ends of the tab bar there would be the >> signs.
    • Clikcing on then them would reveal the menu as we have it now.
      • Choosing an tab item in the menu would send you to that tab, also sliding the tab bar to reveal the active tab in the bar.
    • Click and hold would start sliding the tab bar either to the left or the right depending on which side you clicked.
    • I imagine that Shift scrolling in the tab bar could trigger the tab sliding feature.
  • Tab scrolling
    • Move the mouse over or on the tabs and use the scroll wheel to quickly scroll through all the tabs available.
  • Close tab hover state
    • When the mouse hovers over close tab button we should provide a hovers state of the button.
  • Tab Groups
    • Right in line with the effort to easy the enabling the use of tabbed browsing for users, the creation of tab groups should be eased aswell.
    • Currently filing a bookmark, and creating a tab group are two different things. People do not associate filing a bookmark with filing a tab group. They perceive it as to separate things. We should use this knowledge and provide our users with a new separate bookmark menu option that aims as just creating a tab group.
      • add a bookmark menu option "create group bookmark" showing a simple explanatory sheet with the option for providing name.
      • add a contextual menu option, and use the bookmark menu option, when users have multiple bookmarks selected in the bookmarks manager. (command shift g) The selected bookmarks in question would be moved inside the group bookmark.
      • we keep the "create tab group" option we have in the "add bookmark" sheet.
  • Tab/window undo
    • Allow users to easily:
      • undo closing a tab
      • undo closing a window
      • undo replacing tabs with a new tab group
  • Tab reordering across windows & tab detaching
    • Dragging a tab off the tab bar would detach the tab from it's parent window and would create a new window containing the tabs url, or if detached tab was dragged to another window the tab would be added to the target window.

Preference Scratch pad

Camino's current implementation is OK but I'd say it's to complicated for "normal" users. I much prefer the approach safari has. You either enable it or disable it. And with that you get further options. But on default users won't be surpised by it.

We have two choises:

  • we continue on the road we are on, and only extend our current feature set.
  • we do a different aproach, either enable or disable tabbed browsing.

The New Prefernce Approach

The main concern with Camino's curent tabbed browsing preference implementation is that it is over complicated. Normal users rarely even know Tabbed browsing exists, or what it does. We should make sure that they can easily disciover and use it. Allowing them to simply turn it on or off, and controll it with modifierkeys. Similar to Safari.

We should make tabbed browsing an easy experience instead of a set of options. Users want to make simple discisions. And with the new single window mode prefs we should make this happen.

So instead of providing a slew of settings, that need to be set before a user can actually really start using tabbed browisng, we should offer a single click/pref solution.

We shouldn't provide special prefs for links from other apps, instead we should let those links behave like normal link requests. It just makes things to complicated. But research by mozilla shows that people expect window from other apps to always open in windows, we should enable that on default and only offer a pref to redirect it to a tab if they wish.

On a second note we should list all Window and Tab related prefs in this panel. That includes the option that asks confirmation for window/tab closing. Other apps like FF also list this as a tab/window features. So in it;s in the line of expectancy to put it in this panel.

We should call this prefPane "Windows & Tabs" or something, so that people who still want windows know to find things there (like the Warn-when-closing) --Sardisson 23:38, 20 Feb 2006 (PST)
  • [v] Enable Tabbed browsing:
    • (o) Open links that open a new window in a new tab.
    • (o) Reuse the frontmost window or tab for links that open new windows.
    • [v] Open links from another application in a new window.
    • [v] Always show the tab bar.
    The external app prefs (reuse or new) still needs to be accessible to people not using tab browsing, so it needs to be in a different block (not dependant on tab browsing, even though for people using tabs, the pref will likely be the same as their in-app "new windows" pref.) --Sardisson 23:38, 20 Feb 2006 (PST)
  • Tabs and windows:
    • [v] Open new windows and tabs in the background.
    • [v] Warn me when closing windows or quiting with multiple pages open.

The following key combos don't depend on wheither tabbed browsing is turned on.

  • command-click always opens links in a new tab
  • command-shift-click always opens a link in a new tab in the background
  • command-option-click always opens a link in a new window
  • command-option-shift-click open a new link in a new window in the background
    Shift is always a toggle, so the above descriptions are not true. Option is going to force an immediate download, so that might not be a good one to use, and Cmd-Opt-click is already in use for scrolling. Cmd-click should really be new tab/window, depending on pref, and for the 2 tab users who want to open a link in a new window, they should use the context menu. --Sardisson 23:38, 20 Feb 2006 (PST)

And of course we keep the contextual menu's we have already. But we allow it to use the Shift key to open a tab or window in the background.

If we do this we should take great care ensuring that the preference trasition from older versions to this one is smooth.

We should allow users to tweak all the other stuff by hand if they want so.

Extending the Camino tab prefs

The current prefs are ok, but they need to be clearer. And should be setyp so that the important and most used are at the top.

  • Force links that open new windows to:
    • Open links in a new tab
    • Reuse the frontmost window or tab
  • Links from other applications:
    • Open in a new window
    • Open in a new tab in the frontmost window
    • Reuse the frontmost window or tab
  • Command click on links:
    • Opens in a new window
    • Opens in a new tab
  • New windows and tabs:
    • Open in background
  • Tab bar:
    • Always show tab bar

  • command-click opens link in a new tab/window, depending on pref
  • command-shit-click opens a link in a new or back tab, depending of pref

Also we need to start using the help buttons to link to our support docs.

Current Camino prefs

  • Tab bar:
    • Always show tab bar
  • Command click on link:
    • opens in a new window
    • opens in a new tab
  • new windows and tabs
    • open in the background
  • link from other applications
    • open in a new window
    • open in a new tab in the frontmost window
    • reuses the front most window

I think it is a very good idea to list our key combinations in this panel, tabbed browsing is a feature we should make as easy as possible. So providing the key combos directly where they can enable it is the best of all places to show them.

  • Our keycombo's
    • command-click opens link in a new tab/window, depending on pref
    • command-shit-click opens a link in a new or back tab, depending of pref

Current Firefox prefs

  • Open links from other applications in:
    • a new window
    • a new tab in the most recent window
    • the most recent tab/window
  • forec links that open new windows to open in:
    • the same tab/window as the link
    • a new tab
  • hide the tab bar whne only one site is open
    • select new tabs opened from links
    • warn when closing multiple tabs

Safari tab prefs

  • Enable tabbed browing
    • select new tabs as they are created
    • Always show tab bar
  • Seperatly apple lists all the shortcuts a user can use!
    • command-click opens link in a new tab
    • command-shit-click opens a link in a new tab and selects it
    • command-option-click open link in a new window behind the current one
    • command-option-shift-click open a new link in a new window and select it