Closed Bug 15437 Opened 21 years ago Closed 21 years ago
ISession History needs to be scriptable
...for use in creating smarter session history UI. is there any reason it is not? (see email from brendan) http://lxr.mozilla.org/seamonkey/source/xpfe/appshell/src/nsSessionHistory.*
Status: NEW → ASSIGNED
Target Milestone: M11
[suggestion by sfraser] if you are at page A, and you surf to B you go back to A, then surf to C. then go back to A, and want to go forward to B. But the forward button will take you to C, not B, B is gone. Trying to think of a way to maintain *all* pages visited recently in the popup menus associated with back and forward.
How about two dimensions, or "railroad normal form": write each history list from left to right ("Back" to "Forward"), then look at the vertical dimension. A A -> B A A -> C Squish out the subsumed lines (all the "A" lines): A -> B A -> C B is "Up" from C, C is "Down" from B. A can be related to itself the same way; don't stress that this is really a tree (grandma doesn't grok computer science). Unfortunately, the Go menu uses "Up/Down" for "Forward/Back" -- no matter, there would not be "Up" and "Down" buttons on the toolbar in any case, so let's use the other dimension: imagine each XPMenu item in the Go menu having an optional pull-left widget and pull-right widget, so you could see alternatives (such as B when you're at C). Hmm, maybe just pull-right -- who cares what was older in time order of navigation, we merely want to get to alternatives. Thoughts? How hard would this kind of menu be, given XPMenus? /be
some adjustments to my last diagram to make it easier to understand: It is a combination of "vertical" and "flat" ideas: On Page A Chose "Page C", on Page C: [ FORWARD v ] [ FORWARD v ] | Def A Subpage 1 | | Def C Subpage 1 | | Def A Subpage 2 | | Def C Subpage 2 | | Def A Subpage 3 | | Def C Subpage 3 | | ------------------ | | ------------------ | | Page D | | Page F | | Page C | ---------------------- ---------------------- (where Def = default, as in 4.x)
Just to clarify a bit further: All branches are managed by the menu described above. This is the forward button menu. The back button menu is simply a linear history of pages previously visited. This is because you never invalidate pages in your back menu by going to new sites (these only invalidate new pages). One invalidates pages in forward session history more often. The placement shown here is inconspicuous and unlikely to encroach in a negative capacity on the default behaviour.
Status: ASSIGNED → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
Session History has been XPIDLised. The basic implementation is in. I will be looking in to removing webshell dependencies later this week. Handle to session history can be obtained in JS thro' browserInstance. nsIBrowserInstance.idl has an attribute "SessionHistory" which can be used to access methods that don't use a webshell as an argument.
Component: XP Apps → History
QA Contact: sairuh → claudius
Much thrashing for something that was done 14 months ago: http://lxr.mozilla.org/seamonkey/source/xpfe/components/shistory/public/ verified.
Status: RESOLVED → VERIFIED
Component: History: Session → Document Navigation
QA Contact: claudius → docshell
You need to log in before you can comment on or make changes to this bug.