Open Bug 1381922 Opened 7 years ago Updated 2 months ago

Allow modifying/restoring back-forward history for each tab

Categories

(WebExtensions :: General, enhancement, P5)

enhancement

Tracking

(Not tracked)

People

(Reporter: ntim, Unassigned)

References

(Blocks 3 open bugs)

Details

(Whiteboard: [design-decision-needed] [needs-follow-up])

Spin off bug 1378651
Can we get a real description on this bug?
Flags: needinfo?(ntim.bugs)
There needs to be a way to either setting/modifying/restoring each tab's back-forward history, in the context of session managers.
Flags: needinfo?(ntim.bugs)
Priority: -- → P5
Whiteboard: [design-decision-neeed]
Whiteboard: [design-decision-neeed] → [design-decision-needed]
@comment 4: while I *strongly* agree with the sentiment (I consider TMP and Session Manager absolutely crucial), let's bring this back to rational level.

Whenever sufficient API gets implemented, could we expect an early uplift (on near security vulnerability level of priority) if not straight to stable, then at least to beta ?
Just to confirm the value of an API to allow access to this information. Consider this use case:

Using portions of the API that were not completed in the latest version, a user could use firefox as a tool, similar to word or excel.  We could:
 - open a series of tabs and work on them over time
 - if we closed a tab accidentally, we could reopen the tab
 - if we closed a window and needed something in that window, we could reopen that window
 - if we had an important session, we could save it to our history for recovery later

In general, this functionality makes firefox so useful, it is hard to imagine not having this functionality.
Severity: normal → enhancement
To provide more examples of the value of this feature, here are two other addons that are unrelated to session management, that I do not think can be updated without this feature. Admittedly, they do the same thing, and did not have many users, but they're a good example of the utility of a tab history API. https://addons.mozilla.org/en-US/firefox/addon/backtrack-tab-history/ and https://addons.mozilla.org/en-US/firefox/addon/tab-history/.
Hi Tim, this has been added to the agenda for the January 30, 2018 WebExtensions APIs triage meeting. Would you be able to join? 

Here’s a quick overview of what to expect at the triage: 

* We normally spend 5 minutes per bug
* The more information in the bug, the better
* The goal of the triage is to give a general thumbs up or thumbs down on a proposal; we won't be going deep into implementation details

Relevant Links: 

* Wiki for the meeting: https://wiki.mozilla.org/WebExtensions/Triage#Next_Meeting
* Meeting agenda: https://docs.google.com/document/d/1x80jYXicAotNjlitY5RZDcSRpRM3lmaSHp_q4co4OEg/edit#
* Vision doc for WebExtensions: https://wiki.mozilla.org/WebExtensions/Vision
A design decision for this bug has been deferred pending a more holistic overview of session manager. Mike Conca to create a PRD.
Flags: needinfo?(mconca)
Whiteboard: [design-decision-needed] → [design-decision-needed] [needs-follow-up]
This feature may or may not be needed, depending on how other parts of the sessionStore are exposed via the WebExtensions API. One idea is to create a simple save/load mechanism that extensions could use, rather than expose each session control point (like history) individually.
Flags: needinfo?(mconca)
(In reply to Mike Conca [:mconca] (Denver, CO, USA UTC-6) from comment #17)
> This feature may or may not be needed, depending on how other parts of the
> sessionStore are exposed via the WebExtensions API. One idea is to create a
> simple save/load mechanism that extensions could use, rather than expose
> each session control point (like history) individually.


Does the same applies to Bug 1378647 and Bug 1378651?
Flags: needinfo?(mconca)
Yeah, it does. The general mechanism Mike is describing is probably something similar to bug 1413525.
Flags: needinfo?(mconca)
Product: Toolkit → WebExtensions
See Also: → 1378651
See Also: → 833791

I have another use-case here.

When uMatrix blocks a page in toto, it swaps in a 'blocked by uMatrix' page instead with a different URL. If you then tell uMatrix to allow the load and refresh, that 'blocked by uMatrix' page helpfully auto-redirects to the original destination... but it stays in the history and breaks the back button. See https://github.com/uBlockOrigin/uMatrix-issues/issues/100

There are a couple of options here, but possibly the best one (IMO) is for the extension to be able to delete its 'blocked by uMatrix' page from the back/forwards history at the same time as it navigates to the destination, which this bug's feature would allow (well, if content scripts would be allowed to use it, which I think it would make sense to do).

(An alternative solution, which I don't think there's a bug for, would be something like a new privileged API to navigate to a URL and replace the current page's entry in history with the destination. But I don't know how many extensions would benefit from that, wheras being able to manipulate history could be quite generally useful.)

Type: enhancement → defect
Type: defect → enhancement
Blocks: cuts-control
Blocks: cuts-addons

(In reply to Mike Conca [:mconca] from comment #17)

This feature may or may not be needed, depending on how other parts of the
sessionStore are exposed via the WebExtensions API. One idea is to create a
simple save/load mechanism that extensions could use, rather than expose
each session control point (like history) individually.

Has there been any more movement toward this enhancement? (clearly not here, but maybe elsewhere?) Since there are no blockers listed for this bug/enhancement, it's difficult to tell. This was the last comment of any substance from over 3 years ago. Perusing meta bug 1330633, bug 1330635, and bug 1330638 I get some indication that there may be some hope in eventually getting some sort of sessionStore WebExtensions API, but not sure. A year ago in bug 1427928, :mixedpuppy indicated there isn't much hope, but maybe he was just referring to the super-meta-bug that it is, not necessarily its component parts. If so, where do we go from here? ...if not, the same question applies: Where do we go from here? Sit and wait for...?

Flags: needinfo?(mixedpuppy)
See Also: → 1725294

FYI A good write-up (clear, detailed) of the value of having session manager add-ons that can save (1378651) and restore tab history is here:

https://old.reddit.com/r/firefox/comments/grs6a8/are_there_really_no_session_manager_addons_that/
Including this comment.

Also, for reference, the fairly popular "Tab Session Manager" addon has an issue entry for this problem here: https://github.com/sienori/Tab-Session-Manager/issues/27 (FYI: as of 07/26/2022 "Tab Session Manager" has 111,245 Users, 790 Reviews, and 4.4 out of 5 Stars on Firefox's addon site, and is "Recommended" by Firefox.)

(FYI you can vote for this bug by opening up "Details" at the top and clicking 'Vote', if you didnt know--I didn't ;)

Severity: normal → S3

I'm declaring need-info bankruptcy and resetting old ni? on me. If input is still needed on this issue and it is engineering specific for the webextensions team, ni? lgreco, or ni? me again.

Flags: needinfo?(mixedpuppy)
You need to log in before you can comment on or make changes to this bug.