Firefox/Feature Brainstorming:History

From MozillaWiki
Jump to: navigation, search

« Firefox/Feature Brainstorming

Permanently Caching Some Pages in History

Consider this usage scenario: Bob frequently goes on trips where he has no Internet access. A lot of his work depends on reading wikis and other reference websites, (e.g. wikipedia, company sun java documentation, etc). So, it would be helpful to guarantee certain websites' availability in the cache for offline browsing.

  • Basic Idea
    • Be able to manually "check" pages so that they get placed into a special section of cache that doesn't get evicted (see Slogger extension below)
    • Be able to automatically use regular expressions to filter URIs accessed through the browser so as to decide whether it merits the special no-eviction status
  • No-Evict Cache Management
    • Give an option for keeping track of different versions of the page based on access date
    • Implement a backrub (e.g. google) searching algorithm through the local cache and history, based on how the linked pages in the cache relates to each other; also see more ideas here

'Diff' cached and current version

  • While visiting some "permanently cached" page (either while in 'offline' or 'online' mode), give options such as 'emphasize changes'
  • Possible scenario and UI: Bob is browsing in "soft-offline" mode. He returns to a page that he visited (and "hard-cached") yesterday. In statusbar appears info that he is viewing yesterdays version of the page, and available options "refresh to current version" (optionally "show older cached versions", "number of visits" aso.). After refreshing, give possibility to highlight changes.
  • Watch for changes automatically

Shared cache

  • Give browser ability to "seed" back cached data in a (let's say) "p2p" way.

References

History management

  • Maintain document state in history
    • You fill out a long form, click Submit, and an error occurs. You click Back and sometimes all of your form data is gone. I think it has to do with the page having a short TTL so it is re-requested from the server and re-rendered with a blank form.
    • Allow users to go back through history and see exactly what was entered in the forms on pages.
    • Never save password fields except through existing functionality
    • Allow user to enable/disable feature
    • Keep javascript engine state in memory for Ajax-heavy pages. Back button used in Ajax applications should take you back to the page as you last saw it, not as it was first requested from the server.
    • After going back scroll document to the link/position, where user left the page
  • Maintain seperate document and image cache check frequency

History manager

  • Ability to automatically or manually tag history
  • Ability not to add broken links (404) to the history (only for new pages, that is pages not already in the history)
  • Ability not to add server/proxy errors (5XX) to the history (only for new pages, that is pages not already in the history)
  • Ability to set the TAB key so it behaves like the UNIX shell autocomplete
  • Ability to choose the number of pages in the history
  • Ability to access the chosen number of pages in the history even if there is no page currently open (as opposed to only being able to access the Home page)
  • Integrated Bookmarking
  • Integrated use of social bookmarking rankings to show page popularity
  • Sort history by time the page was closed, rather than opened. As such, if the browser crashes, everything that was open will automatically be at the top of the history. Likewise, if I close a page I opened last week, it will still be near the top of my history.
  • Full screen utilization for history browsing
  • History accessible via calendar views (day, week, month, year) and navigation-tree view
  • Let the user choose which details of a history entry shall be shown for browsing (e.g. show time and date or only date)
  • Global history navigation & presentation
  • Session history navigation & presentation (handling iframes & modern DOM tricks)
  • Spatial history navigation. http://www.halfbakery.com/idea/Browser_20History_20Diagram (links down left hand side)
  • History could show a list of pages visited that can be sorted according to the fields seen in Page Info.
  • History could show a tree of pages visited with the nodes being where people have hit the back button and then clicked on a new link.
  • History could also show the web pages visited along with all the media they link to in a hierarchy of directory locations similar to what would be seen in a mirror of the websites visited.
  • Page or scroll through thumbnails of pages visited (somewhat similar to how a user can scroll through CD covers in iTunes).
  • Possible combination of aforementioned features : A timeline, a horizontal (or vertical) display that shows which tabs are open and what is in them, one row per tab. That way you can see immediately where you opened a page and where it was closed. You can also see that you were browsing in one tab from page to page because one tab occupies one line. Subsequent navigations are shown as a line followed by the new URL. This view should be "fullscreen", possibly displayed in a tab or seperate window. The vertical version could be shown in the sidebar.
  • A different style timeline that should be relatively easy to create assuming the date/time of opening and closing is stored with sufficient accuracy : list all pages, in chronological order, from a certain timeframe that can be selected. This is basically what Google Desktop Search 3 offers, fairly basic but far more usefull than the current history which only has large time brackets that are a mess beyond one week.
  • This could also be represented as a single line, which could be shown on the status bar. This would give users realtime access to the history at all times just be looking at the bottom of the window, where an autofitting stretch of vertical lines would move slowly, showing a sort of ruler with the timelabels. Each vertical line would represent 1 navigation step, and hovering over it would show it's information.
  • Speed up history browsing for big history caches (> 300 days)
  • Or: Implement an archive feature (export/import)
  • Save page in the history each time it is accessed ("I know on 19 Dec. 2006 I was there ...")
  • Order by time for periods > 1 week, too. (Like in Netscape 4.7)
  • Back/forward buttons history drop-down menu thumbnails - similar to aol explorer
  • Adding a site's <h1> information to url in history browser for easier user reference
  • Allow to exclude certain domains from being tracked in History. For instance, if every day I work on brokerage website, or play MPOG game, my history will be saturated by those pages when there's no need for them. This is especially frustrating when viewing history by last visited date/time.
  • Show All History in new tab not in separate window.



'Minor' Edit made; _(-)(Ø)_ 00:04, 30 December 2007 (PST)▼
Woah, Kudos. Looks like you touched on everything in that category, now here's the bag of chips:

A "Show URLs of Web Pages" check box option, to go with that. Sometimes, one can only remember the URL of a page cause Most of them share, or have many of, the same titles and one doesn't know which Page they are looking at, exactly. With this sub option in place, Titles and URLs of pages will show together to eliminate further confusion.
Other then that, I can't think if anything in particular to add to that hasn't already been stated here; at least for the moment being.

Please remove my input herein, if need be so. ▲

Interface consolidation via History Manager

  • Add tab bar to "History Manager"/"Library" window to enable merging in/unifying other list interfaces such as "Downloads," "Cookies" and "Error Console," and supporting the "Library" window's extended functionality for those categories as well: searching, viewing by date, column sorting, exporting, etc.

General History UI improvements

  • Remove Alt+S shortcut opening History-Menu.
    • Many widely used webapps (like vBulletin) and webforms use the known shortcut Alt+S to save/submit data.
    • Rather: educate users about using Alt+Shift+S to submit forum posts.
    • Or: Allow user to set:
      • Alt+character - Alt+s will send form, not open menu.
      • Alt+character - Alt+s will open menu, not send form.
      • Alt+shift+character - Alt+shift+s will send form, like now.
      • Both - Alt+character works for every form, but not those used by the menu, use alt+shift+character for those.
  • Right clicking on Back/Forward buttons (or the menu items that appear when you click the down arrow buttons next to them) brings up the same context menu that appears when you right click on a link on a page (open link in new tab/window, bookmark/save/send/copy link, properties).
  • Right click context menu for new tab on list of previous sites from back button icon. Right click for new tab on home button icon.
  • Properties menu item in right click context menu (as in HistProp extension)
  • History submenu to reopen recently closed windows (like now with tabs) : it could be merged with the actual feature and be called something like "reopen recently closed pages".
  • History submenu to reopen recently terminated sessions.
  • "Clean private data of this page" in a page context menu.
  • Provide an option - a list of partially matching text - to exclude certain data from being remembered in form data. For example, to NOT remember credit cards, you could add the first 4 characters of the credit card in the exclude list. This is necessary because remembered form data is not protected in any way.

History search

  • Full-text indexing of history
  • Search using metadata / full page text from cache
  • Make it possible to search in the contents of all the pages you visited last x hours/days/months/years.
  • ability to search with sections of website
  • X button to clear search
  • Ability to enter a search term, select a result, and if you exit the search, scroll the History list to the selected item. (Today I could not remember the name of a guy I searched for last week, Edward Tufte. But I did remember another guy I searched right around the same time, Stephen Few. History does not offer a way to help you find things associatively.)

Comment:Hmmm.. I think I came across the full text indexing deal on Google Desktop once, and I hated it. I used it one or twice every month. It was one of those things that was a Godsend when it was available, but so rarely used. I advise against full text indexing as a standard default feature of Firefox due to resource hogging and rarity of use. Relegate to a add-on at best, and direct users to Google Desktop otherwise. Execution of text search of history in Firefox 3 is buggy but the concept is superb. The searching of Website titles and url is sufficient. It is also slightly slow on my Core Duo. So, anything beyond that should be an optional add-on or 3rd party responsibility, NOT default.--Guest30923 14:31, 17 March 2008 (PDT)

History view metaphors with Page Info

Ability to select links in this hierarchy and tell the browser to get all the links it points to. This could be used to generate a list of files that can be downloaded to provide a mirror of desired sites with a great deal of control. One would then like to select a group of files by individual selection or by hierarchical groups to archive or explore for new links. This is essentially a webspider interface for the browser.

History and tabs

Preserve history when ctrl-clicking to create a new tab. Essentially, let me ctrl-click to create a new tab, switch to that new tab, and then hit the 'back' button.

Clickstream recording/browsing/mining

  • There is a lot of interesting stuff that could be done if we recorded clickstreams as part of history, particularly if that data could be used to generate usage patterns and so forth.
References

Sort history by time instead of name within a day

  • If you are visiting a lot of pages especially on the same server and then look into the history it is very hard to find a certain page based on the title. It would be nice to have the option to sort by time the page was opened, so that you have a time order within the date sorted history.
    • Sort history by time of closing tabs for the same reason.

'Minor' Edit Made, I spelled the word "based" correctly for you; _(-)(Ø)_ 00:26, 30 December 2007 (PST)▼
I hear ya, got the same type of problem. What's worse is that many pages(if not all) within the same site share the same title. It makes the current setting very counter-productive to work with.
I agree with your proposal, and I would like to add that they also Implement a feature that allows you to see the URL along with the Title so that you can have a better picture of what the page actually is; it has to be displayed with the title otherwise we'd have to go through every singe page with the same title to find the correct URL in the Properties thereof and that's very time consuming/Inconvenient.
I Sincerely hope that they don't plan on keeping the currently flawed history display settings the way the are now.

Tree-shaped history

  • If you are at a site (site A), and push back a bunch of times to get to (site B), are then follow a different site to get to another site (site C) it is no longer possible to use the forward button to get to site A again. This should be fixed by storing a tree of the forward and backward locations, and use an interface that allow you to branch when going forward.
    • This proposal seems to me to be conceptually similar to proposals in the research literature for rewinding of UNDO stacks along N branches. What I recall from the literature is that this proved, in trial usage, to be complex to very problematic, particularly with respect to usability. If this proposal is implemented, then it might be wise to consider whether the Back/Forward behavior should default to the 'traditional' linear implementation and only turn on the 'branching' support on explicit user request (e.g., as a 'power user' feature). Jabbott 10:09, 16 October 2006 (PDT)
    • This may be a difficult feature to develop, as Jabbott has suggested, but it is something I have wanted for more than ten years. I agree that there should be an option for linear vs branchy history. But that option should be announced at the top of the dropdown history list, so that users know of this novel feature. ehume 2006-10-17 2313 EDT
    • It might be possible to use a single History-Stack for doing this. So when navigating from A to B, back to A, and then to C the History-stack might look like:
      Site C
      Site A
      Site B
      Site A
      Note: the redundant Site A at the end might get removed when presenting to the user, but is needed internally.
      I also would like to have it possible to let the user decide which solution (the current ot this) she prefers. MovGP0 10:11, 19 October 2006 (PDT)
    • See the TrailBlazer UI. That one could be intuitive AND useful from a user perspective and shouldn't be hard to build (at UI level): it's just a "table" with tabs shown on different rows and timeline on the columns. This solution I think that will make the history REALLY usable (in conjunction with other features like search, tag, export, print (!),etc.). Note: this interface will be on a separate window: Back/Next will work as usual.
  • For what it's worth, Emacs does this with its undo history and it's great. It should definitely not be the default! I'm sure that anyone who cares about their browser's history that much is sufficiently nerdy enough to find the preference, perhaps in about:config. Anyway the way Emacs handles this is that undo will fold the history. In the context of the browser, you're at Site A and you go back to Site B. Then you go forward to Site C and want to see something at A again. Currently you're fscked. With a folded history you would go back to Site B, and then go back over the back actions until you got back to Site A. Essentially going back from A to B is treated as browsing forward! It makes sense really, I rarely use provided "Back to foo" links as I prefer Alt-Left. I digress. I'd love to see this feature... with Firemacs. I hope that was fairly clear. --Sjs 19:42, 10 July 2007 (PDT)

References

Copying history to new tab

  • When you surf one the web, you might Google something, and from there move further ahead until you find what you are looking for. Then you wish to return to Google for more results in order to find more material. The problem is that you either have to return from the current window, and thereby removing the newly found result, or open a new window and Google the same keywords again. In the headline "Tree-shaped history" by Sjs, a similar problem was solved by using a three-shaped history as described by the user.
  • I, however believe the same problem could be solved by having the option to make a new window (or tab), with the exact same history as another one. In the previous example, when I had found my first result, I could then make a new window (or tab) and go back to Google with that, while still having the first result open. This is similar to a function in IE6.
    • Basically, to create a new window (or tab) with the history copied from another window (or tab). --Keba 19:40, 8 December 2007 (PST)

Saving a session

  • I use the current session-function very much. Mostly I use it to have one window with all the news sites I use. Thereby I can open my browser and quickly check all the news on various sites in an instance, without opening each bookmark separately. I have quickly made myself a long list of news-sites, which I hold very dearly, and fear to lose if my computer should crash or Firefox should forget my session. I suggest a way to save this entire session as a file, which I can open on another computer and access all my sites. This is similar to a sort of 'group bookmarking'. Basically:
    • A way to save a session as a file, to open later on another computer. --Keba 19:40, 8 December 2007 (PST)

'Minor' Edit made, please remove if Irrelevant; _(-)(Ø)_ 00:39, 30 December 2007 (PST)▼
I see a crossover here with # 16 on my list:
Implement Firefox Sessions Option. (Just like Crash recovery, only this time, you can choose to save the current session as a file or in a file and when you open up Firefox again, have it prompt you to select a session to start from or start new session if you want; creating, naming, and organizing sessions just like you would bookmarks.)

I believe we share a similar Desire for Firefox Sessions. Why does it just have to be limited to crash recovery? Why does it just have to be limited to your profile? It doesn't, and quite frankly, it shouldn't.

I indeed Support this proposal and others should back us up.
I feel that if Firefox Doesn't implement it, then another(possibly less deserving) Browser Will.
And, If that happens, 4Shame -_-.

Please remove my input herein, if need be so. ▲

Another thing about sessions -- Often when there's many pages/tabs that start opening simultaneously it really slows down not-all-too-powerfull machine. Sometimes I don't even want to open all or some pages from my last session. My SUGGESTION would be _session managing window_ showing before any pages are opened. This window would simply offer you a list view of all the pages of your last session and possibility to select some or all of the pages of your last session. Also it could offer possibility to open all the pages from your last session in TABS in single window in case your last session was a mess of many open windows.

History view and web page view merged

History is merged in web page view thanks to zoom in and zoom out. A view of a web page is supposed to be a zoom on one item of the history.

  • You first navigate ordinary on the web :

History 2d 1 (normal navigation) thumb.jpg

(large image)

  • Then you decide to view the history :

History 2d 2 (history appear) thumb.jpg

(large image)

Web page view is zoomed out. What trigger the zoom out could be a button on the interface or a particular move of the mouse.

  • You see all the history where all the pages are represented with a preview :

History 2d 3 (history view) thumb.jpg

(large image)

The current web page is at the center. A stickman indicates that it is the current page. You can then scroll the history. The web page represented below is a newer page (it supposes that you have come back to the current page). The pages above are older pages. Arrows indicate the order of page visit. Arrow above the current page doesn't start on the page just above because you have visited two pages and then you have decided to go back.

  • You can scroll the history and pass your pointer over the web page preview :

History 2d 4 (history mouse over) thumb.jpg

(large image)

When your pointer is over a preview, the web page becomes blue. A note indicates the elapsed time since the first web page visit.

  • Clicking on a web page preview zoom in the web page :

History 2d 5 (history select) thumb.jpg

(large image)

You can go to a page by clicking on the preview and then the history view is zooming in.

  • You have returned to an older page :

History 2d 6 (final page) thumb.jpg

(large image)

With this feature, the old history panel would be no longer needed.


'Minor' Edit Made, Please Remove if Irrelevant; _(-)(Ø)_ 01:06, 30 December 2007 (PST)▼
That seems like a Nice Idea, I like the Elapsed time tooltip part.
I See a conflict though, the Zooming part may present problems. I'm already woozy as it is browsing through all the flashyness of the Internet, Having something like that come at me would really be pushing it. But I suppose it was made for, dramatic effect. But I won't say that it Will replace the History Sidebar Completely, as most people find comfort in convention. A better implementation exists however. That Window Preview thing that Windows Vista has going on shall do Nicely for the History previews and it's easy on the eyes :). I've seen other applications adapting it as well. So it would only be natural that Firefox use it too; its a new convention that is widely appreciated and awed upon.
Don't get me wrong, I like most of the parts of your Idea. It's just that I don't want to have the constant feeling of being warped every time I want to view the history, know what I mean?

I hope you don't take offense and hope that you understand and don't misinterpret what I have said.

Please remove my input herein, if need be so. ▲

History Pages Preview

When a user visits a site for the first time they usually don't remember the address or even the name of the site. Usually, a web page is most memorable based on its content. The current organization of history is lacking, in that it only shows the name of each page visted. A small preview of each page could give the user more than enough information to find the page they're looking for.

  • Standard history organization is kept.
  • On a single-click (or function key + click) the page is shown as a thumbnail in a smaller window.
  • Pages are rendered (into thumbnails) while viewing history or when each page is visted and being stored into history.


References

Back and Forward

Flipping through a namber of frames (pictures for example) frequently adds a lot of entries in the list under the back-button. Would be nice to skip all that and go back to the previous server instead. Maybe this requires a two-level tree instead of a list (pages, servers).

Back after new window opens

Honestly I am amazed such a feature doesn’t already exist. When web designing there is always a debate, open the link in a new window/tab or the current window. The biggest downside of have a link open a new window/tab is the user can not use the beloved back button – but what if they could! The back button when a new window or tab is open from a link should do 2 things as long as the parent widow is still open:

  • 1. close the current tab/window
  • 2. refocus on the parent window

The button is grayed out now, why take away people’s precious back button when you don’t have to.