Open Bug 587400 Opened 14 years ago Updated 2 months ago

Closing a pinned-tab less window last removes all pinned tabs

Categories

(Firefox :: Tabbed Browser, defect, P3)

defect

Tracking

()

People

(Reporter: qowieury, Unassigned)

References

(Blocks 2 open bugs)

Details

(5 keywords)

User-Agent:       Mozilla/5.0 (Windows NT 6.1; rv:2.0b4pre) Gecko/20100814 Minefield/4.0b4pre
Build Identifier: Mozilla/5.0 (Windows NT 6.1; rv:2.0b4pre) Gecko/20100814 Minefield/4.0b4pre

When opening a page in a new window, the app tabs are not included.  This is logical as it would cause too long of load times.  However, if the windows are closed, and the new window, with no app tabs is closed last, the app tabs disappear.

I have not worked on the mozilla code, so I do not know if there is a difficulty, but I would like to make the following suggestion:

Why not just keep a list of the app tabs in the bookmark database?  Like the old bookmark toolbar.   That way the bookmark manager, the saving, everything, is already set up.  One bookmark folder is the app tab folder.  Converting to app tab adds it, converting to normal tab removes it.  There are so many app tab bugs.  Would not this fix many of them?

Reproducible: Always

Steps to Reproduce:
1.open browser
2. open link in new window
3. close old window
4. close new window.
Actual Results:  
No app tabs anymore.

Expected Results:  
App tabs would persist.
BTW, I was a firefox user, switched to chrome, switched back to firefox for version 4, mostly for multitouch.  I love the app tabs.  They are a great idea.
Blocks: pinnedtabs
Status: UNCONFIRMED → NEW
Ever confirmed: true
Summary: pop up windows do not have app tabs. Closing a app-tab less pop-up window last removes all app tabs. → Closing a app-tab less window last removes all app tabs
blocking2.0: --- → ?
Keywords: dataloss
OS: Windows 7 → All
Hardware: x86 → All
Version: unspecified → Trunk
app tabs exist per-window. and you closed the window with your app tabs. why do you expect them to be there again?
(In reply to comment #2)
> app tabs exist per-window

This is the part users don't expect. They're "applications" and are supposed to be "permanent". Not sure what the best way to handle this is, but as-is it's too easy to kill all your app tabs easily.
I don't like users being surprised here, but I don't think this blocks 4.0. App tabs are intended to grow into full fledged applications, but in 4.0 they are mostly pinned tabs, and tabs leave when your window does.

That's not to say I wouldn't like it fixed, but I wouldn't hold FF4 for it.
blocking2.0: ? → -
(In reply to comment #2)
> app tabs exist per-window. and you closed the window with your app tabs. why do
> you expect them to be there again?

They are permanent they aren't supposed to close with the window.

I'd say this should be in 4.1 or something like that. Possibly using the book mark idea and having 2 tab strips 1 for app tabs and 1 for non app tabs. The 1 with the app tabs would be live in all windows and unharmed by closing (or it should in my opinion).
I'm also not a huge fan of this, but it is currently expected behavior. Bug 587873 (whenever it gets done) will change it such that app tabs will be the same in each window and will fix this bug.
Requesting the underused status2.0:wanted+ flag in lieu of blocking.

If the full route of global app tabs (bug 587873) isn't done for Firefox 4, this will produce a common source of user confusion. If you have two windows open, the order you close them will determine if you get to keep your app tabs, which isn't obvious. Some method by which app tabs can only be gotten rid of by explicitly closing them is needed here.

I'm thinking that maybe Tab Candy is the route to the solution here. If one window == one group (bug 578512) then we can leave a lingering app tab group which is opened on next start as the default if there isn't another saved to.
Flags: in-litmus?
Another source of confusion due to inconsistient behavior. With one window with app tabs and other tabs open, if you close it and choose to close all your tabs instead of "save and quit" you won't lose your app tabs. Thus, the user will expect from the one window experience that these tabs don't go away, and would expect that to also be true in the multi window exeperience.
bug #625016 may depend on this

And i really think this bug (or bug #587873, if this would fix it) is blocking.
App tabs must never just disappear, under no circumstances! 
Thats what the user expects from them. They have to persist until the user closes them himself/herself.
This needs to block final release.
not unless bug 587873 is fixed, which wont be for this release, since its punted to future.
There seems to be some debate about whether this bug is blocking or not.  I wanted to add my two cents.  

This bug is not blocking to Firefox 4.  It is blocking to app tabs.  No one should claim that Firefox 4 supports app tabs unless this is fixed.  App tabs would be merely a beta feature of a full release.

I agree that bug 587873 is the long term solution, but there must be some simple solution that would solve this problem before the 4.0 release.  As I said in the report, I have not dealt with this code and do not have time to learn it, but it seems like there are many solutions to this problem that would require only a few lines of code.  The bookmark solution might be too radical.

How about:

When closing a window, check if there are app tabs AND other windows
if so, prompt the user, explaining the bug and offering to close all windows.
or if so, save them to an array and restore them on next new window or restart.


I lost my app tabs multiple times due to pop-up or, even more deadly, pop-under windows.  I must have lost them 4 times before reporting the bug and then several times after.  Eventually I stopped using app tabs because they were not worth the time commitment to setup after each loss. 

This is the sort of bug which makes a person completely frustrated with a product.  This little bug would make 4.0 look like a shoddy product, no matter how good the engine is. Even if some of you have ways to work around the bug or are more careful when closing windows, Mozilla's reputation is at stake.  To the most common user, the whole reputation of open-source is at stake.  

This might sound like hyperbole but I mean it seriously.  If Firefox 4.0 is released touting app-tabs as a new feature, and this bug is present, every serious reviewer will mention it and no small percentage of users like me will experience it. It will be like the iPhone 4 antenna issue.  Not as big or newsworthy, but just as detrimental to the sense people have of the quality behind the product.
(In reply to comment #14)
> When closing a window, check if there are app tabs AND other windows
> if so, prompt the user, explaining the bug and offering to close all windows.
> or if so, save them to an array and restore them on next new window or restart.

How about migrating all app tabs to other windows when the window is closed. This would however not work if different windows have different app tabs.
Either fix or disable App Tabs completely. At the moment pinning an App Tab are 2 wasted clicks, nothing more.
for all people interested, maybe also as a reference for implementation, this addon makes app tabs permanent and shared across all windows.

https://addons.mozilla.org/en-US/firefox/addon/tab-utilities/
this addon really seems to fix it (its not perfect though)
it also seems to kind of fix bug #625016

i think checking this out could help fixing some bugs regarding app tabs
and this bugs have to be fixed before FF4 goes final!
please anyone, mark this as blocking final! 
like Daniel says, fix it or disable/remove app tabs! they are not usable in this state!
Yes, they are usable. I'm using them heavily. It's a great feature and it's going to be even better in future versions.
when using single-window-mode it works great, but not everyone is doing so...
i lost quite some app tabs in the past weeks and months due to this bug and #625016, they are not persistant as it is now! 
app tabs are there to STAY over sessions, not to vanish just when you happen to close the windows in the wrong order or stuff like that...
this has to be blocking since app tabs are an advertised feature of FF4! there must not be any bugs that breaks the whole functionality of app tabs (this easy)!
(In reply to comment #21)
> when using single-window-mode it works great, but not everyone is doing so...
> i lost quite some app tabs in the past weeks and months due to this bug and
> #625016, they are not persistant as it is now! 
> app tabs are there to STAY over sessions, not to vanish just when you happen to
> close the windows in the wrong order or stuff like that...
> this has to be blocking since app tabs are an advertised feature of FF4! there
> must not be any bugs that breaks the whole functionality of app tabs (this
> easy)!

I agree
This IMO is a show stopper bug! Not having app-tabs stay due to a pop-up or a background window and losing work done in the tabs sure feels like a bug to me at least. At least implement a way to restore app-tabs if they are lost.
This should be fixed in a security/stability update if you ask me...
but please ASAP, this should really have been a blocker... but its to late now...
This is a nasty bug that should have been blocking and fixed before release of FF4! I consider the released implementation to be unusable.
just btw, chrome has the same bug
dont know if there is a bug in their bugtracker, but the same bugged/unwanted behaviour with closing the windows in the wrong order and loosing all "pinned tabs" has it...

and no, i dont wanna say "if chrome has it too, there can not be anybody that cares about it"!
as said before, please fix ASAP, i consider this critical for the whole app tab functionality
Actually it's possible to restore closed window through Ctrl+Shift+N. It's even possible after restarting Firefox but it's pretty annoying bug even for those who use single-window navigation. Some sites likes to open flash-based players and other little things in separate windows. Of course when main window closed these small windows isn't closed and triggers this bug.

Mustfix, I guess.
People, please stop commenting here just to complain. This isn't a forum and it's not helpful.  https://bugzilla.mozilla.org/page.cgi?id=etiquette.html
Firefox 4.0 does not offer save opened tabs for next open as it did in 3.x.
It was great and I expected App Tabs to be a replacement.
I decided to upgrade to 4 from 3.x expecting it will allow my tabs to be permanently saved. The functionality should contain collecting all App Tabs (AT) created in any opened windows. If a window having AT is closed then another top window should contain the closed window AT added to it's AT. FF supports opening a tab into a new window. It can support migrating tab from one window to another without reloading the tab contents.
That's all.
No longer blocks: 579874
Blocks: 625016
For me the App tabs replaced iGoogle. But once or twice a week I accidentally all my app tabs, it's very annoying. I would like to see this go into a fix release but can see that it's a non-trivial change. :-(
(In reply to comment #2)
> app tabs exist per-window. and you closed the window with your app tabs. why do
> you expect them to be there again?

App Tabs are EXPECTED to remain - Otherwise I would not have pinned them.

Icons (shortcuts) PINNED to the Taskbar in Windows7 remain upon restart. Would be completely ridiculous if you had to repin ever Program Shortcut every time you restart your computer.

Pinning Tabs across ALL open windows is not a preference either - Multiple pinned tabs of GMAIL would be useless 

I would assume adding to the omni.jar a file that would store pinned tabs to allow them to Remain Pinned each time firefox is open would be effective. but the omni.jar file in firefox 4 is compressed in a way that I can not attempt to test this idea.
I don't see this bug in google chrome build 11.0.696.68 and see permanent pin tabs. I see them after closing all the open tabs and then restarting the browser. This is a good behaviour and good to have the same in firefox too :)
(In reply to comment #41)
> I don't see this bug in google chrome build 11.0.696.68 and see permanent
> pin tabs. I see them after closing all the open tabs and then restarting the
> browser. This is a good behaviour and good to have the same in firefox too :)

Not really. I have 13.0.772.0 dev-m build and here is simple way to "lose" pinned tabs:
1. Pin few tabs in Chrome's window.
2. Restart Chrome to make sure they are still pinned.
3. Open new window.
4. Close window with pinned tabs.
5. Close that empty new window.
Now on restart you will have Chrome _without_ pinned tabs. Exactly the same behavior as in Firefox. I don't want to say it's right behavior but it is the same.

I guess it should be the same in v11.
You are correct Lain, I followed the steps that you gave and could reproduce it. As per the above discussion, for firefox, this was implemented as to have pinnged tabs for the current browser window and they may change it in next release/build (not sure, the bug is still not assigned to anyone)
(In reply to comment #3)
> (In reply to comment #2)
> > app tabs exist per-window
> 
> This is the part users don't expect. They're "applications" and are supposed
> to be "permanent". Not sure what the best way to handle this is, but as-is
> it's too easy to kill all your app tabs easily.

I think the best way is to make every window instance contain the app tabs. If there pinned they should be accessible everywhere.
Bug 625016 is going to at least partially fix this. The closing multiple windows in a row to quit will reopen all of those windows.

This isn't really a dupe, so I won't mark it as such. There are still things that need to be done to improve the app tab persistence situation.
No longer blocks: 625016
Depends on: 625016
Depends on: 671486
I'm still seeing this same bug on Firefox 6.0.1 on Ubuntu. Would really appreciate a fix and/or global app tabs.
Depends on: 587873
Here's a suggestions, as this problem still persists: If Firefox, as it tries to restore the last session, notices that there weren't any app tabs opened, it could simply restore those app tabs in the first window it restores.
I don't understand how this is so hard to fix; or make a toggle for. Firefox just has to remember the app tabs somewhere persistent. Firefox already knows to only open the apptabs when firefox is opened for the first time.
Summary: Closing a app-tab less window last removes all app tabs → Closing a pinned-tab less window last removes all pinned tabs
Thought I was so clever finally figuring out why my pinned tabs keep disappearing. Nope.

I can reproduce following the steps in comment 0. Importantly, I can also reproduce by dragging an existing normal tab to an empty part of my desktop (in place of step 2).
The UX problem here is simply that if I use both pinned tabs and multiple windows in a session, it should not matter in what order I close the windows as to whether the browser "remembers" the pinned tabs.  

The current behavior, in which the order the windows are closed is unexpectedly significant, is just plain bad design and/or implementation -- exactly because of that unexpected significance to a routine action.
I would like to propose a possible solution to this problem as it has been driving my wife and I nuts for years now. It might not be the best solution or even a valid solution but it might be something that could work...

Permit the "Show Home Page When Firefox Starts" preference option to contain pinned tabs and normal tabs. This is how I envision it might work:

* Open a new Firefox window
* Pin a few Tabs and open a few tabs if desired
* Open Preferences dialog
* Click on General Tab
* Select Show my homepage in the When Firefox starts: drop down list
* Click on Use Current Pages button
* Addresses for each Pin Tab and Normal tab are placed into the Home Page: text field using the proper syntax
* From then on the first Firefox window opened will always include the specified pinned tabs

This might require extending the syntax used in the Home Page: text field. Currently each address is separated by a | symbol. A potential new syntax could require each address be preceded by either a | if the address is to be opened in a normal tab or a ^ (or some other character not used in URLs) if the address is to be opened in an pinned tab.
Fully agree with Ryan above.  Whether or not this is a bug it is just bad UX.  As of Firefox 25.0.1 this problem still persists and I am yet again frustrated that because I didn't happen to close my browser windows in the correct order,  leaving the one with my app tabs for last, I now have to go and recreate all my app tabs.
Hi Ken. I believe I was one of the individuals who first reported this bug.

The problem indeed still persists, but there is a fix I've found in the Recently Closed Windows of the History menu. This has a sub item Restore All Windows and while I'm not quite sure what its constraints are (i.e. how long its memory lasts) it has so far restored my preferred configuration of pinned tabs when I've lost them due to closing my browser windows in the wrong order.

Regards,

William
Hey William, 
thanks for this response!  that's great to know about.  just tried it and confirmed it worked.  killed my app-tab window, then closed firefox from another window so when I restarted my app-tabs were gone.

At first the History->Recently Closed Windows was greyed out but after using History->Restore Previous Session I could then restore closed windows and got the window with the app-tabs back.

Still not the most intuitive UX but good to know there's a work around.
Thanks!
Ken
Yes, I was pleased to find it because I was losing my pins almost every other session! It was diving me nuts ...
Undo Close Windows has largely mitigated this bug.

I think the remaining issue that might be worth addressing is improving the scenario when you quit Firefox by closing one window at a time (on Windows/Linux). I think that's a relatively common scenario. IIRC we have some code that tries to be smart and put all closed windows in the "last session" based on how quickly you close them, but that code could probably be improved.
blocking2.0: - → ---
status2.0: ? → ---
An explanation for why "global" pinned tabs can never work is given by Frank Yan in bug 587873, comment 59. Namely, synchronization issues (viewport size, etc). So it seems these are not on the horizon anymore.

Another solution was floated around, which is to migrate pinned tabs to the next open window, when a window is closed. This is intuitive enough and would fix the recurring issue of lost pinned tabs.

If no one else volunteers, I may take a stab at it.

Undo Close Window is a nice mitigation mechanism but mot users probably don't even realize that window closing order is the culprit.
(In reply to Jotaf from comment #62)
> Another solution was floated around, which is to migrate pinned tabs to the
> next open window, when a window is closed. This is intuitive enough and
> would fix the recurring issue of lost pinned tabs.
> 
> If no one else volunteers, I may take a stab at it.

That sounds like a great idea to me.
(In reply to Corey from comment #63)
> (In reply to Jotaf from comment #62)
> > Another solution was floated around, which is to migrate pinned tabs to the
> > next open window, when a window is closed. This is intuitive enough and
> > would fix the recurring issue of lost pinned tabs.
> 
> That sounds like a great idea to me.

That sounds like a UX nightmare to me, and not at all intuitive. Improving the code Gavin referred to in comment #61 should be enough to fix this bug.
Whiteboard: [triage]
I'm still skeptical that a time-based scheme will be 100% effective, since a single rogue window on system shutdown is enough to lose the pinned tabs. Migrating pinned tabs won't cause any UX trouble, if they don't steal focus the user is unaware of them.

Another idea. There doesn't seem to be a way to store tabs outside the window hierarchy in sessionstore; am I correct? It feels like (in sessionstore at least) they really don't belong with a window, but under a different header. The first window should look them up and load them, other windows shouldn't, to prevent duplication. When closing a window any pinned tabs should be dumped under this header in sessionstore. Next time the user fires up Firefox all is well.

I think that would cover all bases, but I'm not sure how hard it would be to implement.
Blocks: fxdesktoptriage
No longer blocks: fxdesktopbacklog
We have all learnt to be careful when closing Firefox, to make sure we don't inadvertently close a window in the wrong order and lose pinned tabs / session.

However, I routinely lose tabs on a weekly basis because I cannot always close firefox in the right order.

Steps to reproduce:
1. Close non-pinned windows
2. Close main pinned window - only it has a problem and the process does not close straight away because it is stalled for whatever reason. The icon in Windows will behave as if it is closed - it will disappear from the task bar.  The process still remains though.  
3. Open Firefox again - but this is just a new window because firefox is still running - so you don't get your pinned tabs back.  
4. The original pinned-tab Window finally closes, leaving you with an session-less and pinned-tab-less Window. 
5. Nothing - you have lost your session/pins at this point, because you can no longer close the pinned tab last.

Expected behaviour:  Nothing you do will ever lose tabs / sessions unintentionally.

Perhaps at step (3) when you aren't seeing your session, you can be quick enough to kill the window before your original process closes. 

It is always safer to close firefox by killing the process than by closing it normally (wrt tabs / sessions).  

Note:  Recently closed Windows is often greyed out in these situations, despite having "Remember History" enabled.

It does seem like sessionstore needs an additional layer - pinned tabs could be a separate persistent entity in the store, but it seems to me that something more robust is needed for sessions too.  Perhaps a simple versioning layer could be added?  I can see that .bak files are created sessionstore - would it be possible to keep a bunch of these and expose them in the history tab?
No longer blocks: fxdesktoptriage
Whiteboard: [triage]
I'm affected.
I lose my pinned tabs regularly because I close my windows in the wrong order.

The correction seems simple: save the pinned links of the first window in the user settings. And load these links as pinned tabs when opening the first window. Pinned tabs in other windows than the first one are not saved.

I don't know if it is easy to do but we are waiting a correction.
Thanks
I wonder from 2010 the issue is not resolved..!
Tagging with ux-trust. Bugzilla describes ux-trust like this:

> Bugs that have an impact on user trust of our products. For example,
> if I have to tap a text field 5 times to get it to register and
> bring up the keyboard, as a user, I will come to expect that and not
> trust that I can select the text field consistently. This could be
> due to a small touch target, and is not a performance issue.
Keywords: ux-trust
There are now a growing number of app like pages out there that deserve pinning... I have been trying to use / like this feature but it is ridiculously easy to kill your app tabs. At the very least one a fresh launch they should be restored to the first window.

Outstanding since 2010... amazing.
(In reply to Dave from comment #71)
> There are now a growing number of app like pages out there that deserve
> pinning... I have been trying to use / like this feature but it is
> ridiculously easy to kill your app tabs. At the very least one a fresh
> launch they should be restored to the first window.
> 
> Outstanding since 2010... amazing.

Obviously none of the devs have thought this high enough priority to dedicate the time/resources to fixing it. So there's a few options, either fix it, don't use it, or switch to a different browser. Personally I've gone for the second option, I never bother pinning anything anymore.
As a user, I find that the current behaviour is most intuitive. It's better to think of them a pinned tabs than 'app tabs' anyway.

In order to make sure you retain the tabs you want, try exiting Firefox using the Firefox menu and choosing Exit, which will close them all at once and restore all windows and tabs the next time you start it up.

Can we close this?
@BoffinbraiN

Given the 60 votes, and 70 comments that differ from your finding, I'd say this needs to remain open.

The current approach makes pinned tabs unusable.  Every non-power user of Firefox I have come across doesn't use them.  This is because they pin tabs and they vanish.  Explaining to a user that they must make sure they close their browser sessions in the right order does not help.

Here is the simplest use case that demonstrates that it doesn't work from a "least surprise" principle:

1. User pins tabs
2. User goes to internet banking, which pops up a new window in which they do banking
3. User closes their main firefox window not realising the banking one is still present
4. User shuts down Windows
5. Pinned tabs are gone

It is probable that step 3 is not even needed, if the user shuts down Windows with two browser session running, and Windows happens to close the main one first, then pinned tabs are lost.

The notion that we should explain that they must exit Firefox (and ONLY firefox) in a specific way in order to retain configuration is absurd.
(In reply to BoffinbraiN from comment #75)
> As a user, I find that the current behaviour is most intuitive. It's better
> to think of them a pinned tabs than 'app tabs' anyway.
> 
> In order to make sure you retain the tabs you want, try exiting Firefox
> using the Firefox menu and choosing Exit, which will close them all at once
> and restore all windows and tabs the next time you start it up.
> 
> Can we close this?

When I close a browser window, I should not have to think about whether I'm going to lose my pinned tabs. Also, I don't care whether you call them "app tabs" or "pinned tabs". They are pages I want the browser to remember for me. That's all that matters.

So, no, I don't think this issue should be closed. I don't think the browser should forget data that I asked it to remember, just because I didn't close the browser windows in a particular order or didn't think to use Exit from the hamburger menu.

*** Here's what I think the desired behavior should be: ***

- Firefox should store a list of all pinned pages.
- If I open Firefox for the first time (i.e., no Firefox windows are currently open), all pages in the list of pinned pages should appear as pinned tabs.
- If I open a new window in Firefox and one or more windows is already open that contains pinned tabs, no pinned tabs should be added to the new window. (This will prevent a slow load time if you just want a fresh window for doing some temporary browsing.) 
- If I pin a tab, and the page is not already in the list of pinned pages, it should be added to the end of the list.
- If I close or unpin a pinned tab in a window, and the same page is not pinned in another open window, it should be removed from the list of pinned tabs.

This will ensure that any tab the user pins is always saved, and any tab the user unpins or explicitly closes is not saved (unless that same page is pinned in a different window).
(In reply to Dan M from comment #77)

Just a minor clarification on my "desired behavior":

The third bullet should be simplified to just this:

- If I open a new window in Firefox and one or more windows is already open, no pinned tabs should be added to the new window. (This will prevent a slow load time if you just want a fresh window for doing some temporary browsing.)
I'm no Firefox dev, but I know Firefox has the ability to drag and drop tabs between open windows. Shouldn't it be possible to, before a window closes, check if any app tabs are open, and if they are open, move them to either the next active window, or any random window, preferring windows with >2 tabs to avoid popup windows? Then even in the case of windows shutdown the tabs should leapfrog to the last window and be saved when firefox finally closes completely.
Personally I don't care about moving the app tabs around between windows I just want the damn things restored when I launch Firefox, regardless of HOW I closed it earlier!
I can understand how this doesn't seem so bad. Firefox is consistent, after all. If there are no pinned tabs in the last window to be closed, there will be no pinned tabs when Firefox starts up again.

At the same time, I can see how average users might be confused by this. When closing Firefox, the focus of their attention is on the close button, not the tab bar. People have busy lives. We can't expect them to keep the state of their browser's tab bar in working memory.

More importantly, the creation of a pinned tab is a deliberate choice. Why should the destruction of a pinned tab be based on context? If the user can click "Pin tab", they can click "Unpin tab." Contextual ESP is unnecessary and potentially dangerous.
In my opinion, if I closed a window with pinned tabs and then exited Firefox, only to see them magically reappear in another window on my next session, I would consider that to be unintuitive too and would probably file a bug report for it. Also, as far as I'm aware, all other browsers with pinned tabs work the same way, so there's a convention I believe we should stick to here.

I will offer an alternative suggestion. If a user has at least two windows open and they close one that has pinned tabs, show them a one-time confirmation box that's similar to the 'Close all tabs?' confirmation box. It ask them if they want to close the window and lose their pinned tabs, exit Firefox, or cancel. As with the 'Close all tabs?' confirmation, there would also be a 'Don't show again' checkbox. This may help teach people how to correctly exit Firefox while retaining their whole session, rather than resorting to the big red X.
There should be no such thing as "closing the browser correctly" when referring to app tabs.

There needs to be a way to have them restore when you come back.

If you set your normal Home Page: field to have several tabs (http://www.mozilla.org|http://www.youtube.com), regardless of how you close all those tabs or window, the next time you launch Firefox cold it will open them for you.

Accept app tabs, there is NO WAY to ensure they launch with Firefox thus they are useless as APPS!

Make a new filed that operates the same way called {Pinned Tabs: Use the same URL and PIPE "|" method, done..
(In reply to BoffinbraiN from comment #82)

> In my opinion, if I closed a window with pinned tabs and then exited
> Firefox, only to see them magically reappear in another window on my next
> session, I would consider that to be unintuitive too and would probably file
> a bug report for it.

The only way it would seem like "magic" is for this one rare use case:
1. Open a "main window", which has several pinned tabs.
2. Open a "secondary window".
3. Add new pinned tabs to the secondary window.
4. Close the secondary window.
5. Close the main window.

If you do all the above, then yes, you may be surprised to see the pinned tabs from your main and secondary windows combined. But if you did expect all pinned tabs to be saved, it would be probably be a pleasant surprise.

> Also, as far as I'm aware, all other browsers with
> pinned tabs work the same way, so there's a convention I believe we should
> stick to here.

This argument implies that Firefox users (1) use other browsers, (2) pin tabs in other browsers, (3) are aware of the scenarios in which their pinned tabs are forgotten vs. remembered. My guess is that very few people fall into all three categories. Also, you seem to be suggesting Firefox should follow, not lead. Firefox should strive to provide the best possible user experience, not blindly follow a bad convention.

> If a user has at least two windows
> open and they close one that has pinned tabs, show them a one-time
> confirmation box that's similar to the 'Close all tabs?' confirmation box.

I could see some sort of deconfliction dialog being a reasonable solution for the case where you have two open windows that *both* have pinned tabs (which I think is probably pretty rare), but not for the case where you have a main window with pinned tabs and secondary window with no pinned tabs and you close the main window first. That would just be a nuisance dialog because the expected behavior in that situation is that the pinned tabs in the main window will be retained.

I still prefer that the browser simply save *all* pinned tabs, though. I think it's an easy rule for users to grasp. I pin a tab, it will be there next time I start up Firefox. You don't want something to be remembered, don't pin it. Philosophically, pinned tabs are just a special type of bookmark to me--an "always open" bookmark. If I bookmark a page in one window, it gets remembered no matter which window I add it to or which window I close first. Why should pinned tabs be any different?
> I still prefer that the browser simply save *all* pinned tabs, though. I
> think it's an easy rule for users to grasp. I pin a tab, it will be there
> next time I start up Firefox. You don't want something to be remembered,
> don't pin it. Philosophically, pinned tabs are just a special type of
> bookmark to me--an "always open" bookmark. If I bookmark a page in one
> window, it gets remembered no matter which window I add it to or which
> window I close first. Why should pinned tabs be any different?

Exactly! If pinning doesn't mean they STAY, really all they are is MINI tabs or Minimized tabs... Pinning implies they stay.
This bug has gone nowhere for quite a long time, so if someone in a position of power wishes to change things here, I would suggest they file a fresh bug for implementation, if that is to happen.

At this point, I think the simplest and most intuitive option would be to have pinned tabs in a closed window automatically be transferred to the next foreground window. This would change them to being window-pinned to application-pinned, with the only ways to remove a pinned tab being to unpin first or directly remove from the context menu. The only hic-up here would be the case of closing the last standard window with a private browsing window open, in which case those pinned tabs should be remembered and restored for the next open of a standard window.
(In reply to Dave Garrett from comment #86)
> This bug has gone nowhere for quite a long time, so if someone in a position
> of power wishes to change things here, I would suggest they file a fresh bug
> for implementation, if that is to happen.
> 
> At this point, I think the simplest and most intuitive option would be to
> have pinned tabs in a closed window automatically be transferred to the next
> foreground window. This would change them to being window-pinned to
> application-pinned, with the only ways to remove a pinned tab being to unpin
> first or directly remove from the context menu. The only hic-up here would
> be the case of closing the last standard window with a private browsing
> window open, in which case those pinned tabs should be remembered and
> restored for the next open of a standard window.

I don't see why transferring pinned tabs between already open windows is necessary or intuitive. If I open my main window, which has 10 app tabs, then I spawn a secondary window just for something temporary, why do the pinned tabs need to hop over to the secondary window when I close the main window? I would find that to be somewhat disruptive and it would likely cause a lag. It also seems like a recipe for pinned tabs getting lost of the system crashes or something.

Firefox should just save a pinned tab internally at the moment it is created and delete it at the moment the user closes or unpins it. When a new session is started, load all the pinned tabs into first open window.

(A nice addition to this might be a "restore all pinned tabs" feature, which would immediately load the entire list of saved pinned tabs into the current window, but let's get this bug fixed first, and worry about nice-to-haves later.)
(In reply to devuxer from comment #87)
> I don't see why transferring pinned tabs between already open windows is
> necessary or intuitive. If I open my main window, which has 10 app tabs,
> then I spawn a secondary window just for something temporary, why do the
> pinned tabs need to hop over to the secondary window when I close the main
> window? I would find that to be somewhat disruptive and it would likely
> cause a lag. It also seems like a recipe for pinned tabs getting lost of the
> system crashes or something.

I disagree. If I open a second window, then close the main window, it's because whatever I was doing in the second window, it's become my main window, and I no longer care about what was in the main window - except the app tabs, which I use for webmail accounts, monitoring my home server, etc. The other case is that either something I was doing opened a pop-up window, or I needed another window temporarily, and that window is sitting forgotten in the background. In that case 99% of the time after closing the main window, that window will be closed next. So if firefox moves the tabs to a window that I don't really care about, what does it matter? As long as the app tabs are saved, I'm happy. 

Yes, there could be a very small delay, especially on older hardware. On my Core i7-4790k desktop with 16gb of ram running windows 10, dragging and dropping a tab from one window to another is as close to instant as I can tell. On my AMD E-350 home server, which has 8gb of ram and runs Ubuntu MATE 15.10, accessed using NoMachine, there is a slight but noticeable delay, maybe 1/2 second for a tab to move. Whether this is from Firefox or NoMachine I can't tell, and I can't easily access the system to hook up a monitor. I also don't have the knowledge to time the move exactly, let alone time moving multiple tabs at once. The AMD E-350 scores about the same on PassMark as the 10 year old Pentium D 950 and AMD Turion 64 X2 Mobile TL-50, so we are talking about either very old and/or very slow hardware.

As for your last point, a crash should work the same as before, when Firefox gets killed "uncleanly", it shouldn't have time to try to move the app tabs, so it should be able to restore the windows the same. On the other hand, app tabs are already being lost all the time through normal use, if an OS shutdown closes the main window before any secondary windows, they're gone.
(In reply to Corey from comment #88)

> I disagree. If I open a second window, then close the main window, it's
> because whatever I was doing in the second window, it's become my main
> window, and I no longer care about what was in the main window - except the
> app tabs, which I use for webmail accounts, monitoring my home server, etc.

I suspect (but don't have any statistical proof) that this is a rare use case. When I open a new window, it is almost always because I want to do a side-by-side comparison with something in my main window or do some side research that I know is going to need several tabs, and I don't want to pollute my main window. I don't ever recall a case where I wanted a different window to suddenly become my main window.

> Yes, there could be a very small delay, especially on older hardware. On my
> Core i7-4790k desktop with 16gb of ram running windows 10, dragging and
> dropping a tab from one window to another is as close to instant as I can
> tell. On my AMD E-350 home server, which has 8gb of ram and runs Ubuntu MATE
> 15.10, accessed using NoMachine, there is a slight but noticeable delay,
> maybe 1/2 second for a tab to move.

Just for the record, I'm seeing about a 0.4 second delay on my laptop (which has an i7-2620M (2.7 GHz) and 8GB ram). This could add up to an annoying delay for users with a larger number of pinned tabs.

Even if the delays can be optimized out, though, I still have some issues with this idea. With more than two windows open, which window should the tabs jump to when the main window is closed? @DaveGarrett suggested the "next foreground window", but what if that's not the one I care about? Or should it jump to all other open windows? Dave also brought up the issue of private windows? If you close the main window and only a private window is open, what should happen? In this case, it just ends up reverting to my suggestion (just remember the pinned tabs for next session).
 
> As for your last point, a crash should work the same as before, when Firefox
> gets killed "uncleanly", it shouldn't have time to try to move the app tabs,
> so it should be able to restore the windows the same.

This is sort of an implementation subtlety, but I'm just trying to say that changes to the list of pinned tabs should be saved immediately upon pinning or unpinning, not when a window is closed. This will prevent data loss in the event of a crash (I'm honestly not sure how it works today.)

> On the other hand, app
> tabs are already being lost all the time through normal use, if an OS
> shutdown closes the main window before any secondary windows, they're gone.

On that point, we definitely agree.
I imagine this would be less desired by all, but I wouldn't mind it if my app tabs were synced among all browser Windows.  If I pin a tab, it is because I want easy access to it, permanently.  For things like webmail or trello.

I don't want to hunt around for the "right" browser window to access these, and if I pin a tab, I want it to become a globally pinned tab that is always there in whatever browser window I am using.

This approach does away with the "pinned tabs jumping" ideas above, because all pinned tabs would be in all browser windows, and it also means there is no closing sequence issues to deal with.

But we all use ff in different ways.  I don't have a mode of operation that would include pinning a tab that I only want in one browser window.  But if some do, perhaps we need permanent pins and session pins, thereby making the whole thing even more complex.

It is little wonder that no progress has been made on this in the past half-decade, as it is clear from the last few inputs that the expected/desired behaviour differs widely.
(In reply to Paul from comment #90)
> I imagine this would be less desired by all, but I wouldn't mind it if my
> app tabs were synced among all browser Windows.  If I pin a tab, it is
> because I want easy access to it, permanently.  For things like webmail or
> trello.
> 
> I don't want to hunt around for the "right" browser window to access these,
> and if I pin a tab, I want it to become a globally pinned tab that is always
> there in whatever browser window I am using.
> 
> This approach does away with the "pinned tabs jumping" ideas above, because
> all pinned tabs would be in all browser windows, and it also means there is
> no closing sequence issues to deal with.
> 
> But we all use ff in different ways.  I don't have a mode of operation that
> would include pinning a tab that I only want in one browser window.  But if
> some do, perhaps we need permanent pins and session pins, thereby making the
> whole thing even more complex.
> 
> It is little wonder that no progress has been made on this in the past
> half-decade, as it is clear from the last few inputs that the
> expected/desired behaviour differs widely.

I actually like your suggestion, but I have two concerns:

1. Could it be done without resulting in an annoying lag when opening a new window?
2. What should happen with private windows?

Your idea also brings to mind a sort of hybrid approach: Given that I think it would make a lot of sense for pinned tabs to behave like bookmarks, why not actually go ahead and make them a special category of bookmark called "Pinned Tabs"? They could show up in the Bookmarks side bar and menu, and when you pin/unpin a tab, it would be added/removed from your "Pinned Tabs" bookmark category. A nice benefit would be that this list would be visible to the user. The little bit of magic would be a feature that lets you toggle (show/hide) your Pinned Tabs from any window (by right-clicking your pinned bookmarks folder or via a menu item). So, all windows would essentially be in sync, but its up to you whether you want your pinned tabs to show up on any given page. With this system, the user could determine the default for opening new windows (either show or hide bookmarks). This would certainly be better than us trying to guess what "most users do".
2. Private windows are private, so no tabs of any kind come through from non-private, and pinned tabs last as long as the private session
1. I think this is just a question of engineering in the back end.  If I have a pinned tab in one window and it is in another, this doesn't need two separate opens and renders.  The opening is done once, and rendering happens once (aside from reflows), and then this is displayed in two windows.  If you click something in a pinned tab in one window, then a new load happens, and the results of that load are updated to both.  Most of the effort of a web page setup is getting the data, so the way I am seeing it is that there is one active session to the pinned tab destination, and each window's pinned tab is a virtual view of the content.

And I really like that idea of show/hide pinned tabs.
Correct me if I'm wrong, but I'm pretty sure the perceptible lag for dragging a tab to another window is primarily from the graphical component of moving a visible tab. Closed app-tabs could be auto-moved into another window in the background, asynchronously or even lazily loaded, and done without any noticeable delay.
:mikedeboer suggested me that you can take a look at this bug. :shortlander and :madhava, what do you think we can do?

I've read the comments and here are what users recommended:
+ Make the pinned tabs globally, exist in all windows.
+ Transfer all the pinned tabs from closed windows to any currently opened windows.
+ Don't transfer any pinned tabs. However, when we restore previous session, reopened all pinned tabs (all pinned tabs in the closed windows as well)
+ Just accept that when a window is closed, all pinned tabs in that window is forgotten. Maybe we can warn users when they're closing windows with pinned tabs.

I think every approach has its good and bad. Therefore it's hard to choose which one I should implement. So I think it's the best to leave the decision to the professionals :)).
Flags: needinfo?(shorlander)
Flags: needinfo?(madhava)
I am not sure how pinned tabs work, although I would expect a pinned tab, when the window is closed, to reopen in a new session.
I can have many windows in one session, and have several pinned tabs in my "primary" window.
Regardless on when I close the "primary" window, even if it isn't the last window I close, the pinned tabs should open with the first window in a session.

This bug has bitten me many times, some on my doing, because I did not realize that I still had a Firefox window open in the background, or because of a reboot, (I know it shouldn't happen, yet it did) and when I restarted Firefox, my pinned tabs had disappeared.

Can someone please look into this bug, as it is really annoying having to re-pin the lost tabs.

My suggestion would be to have a pinned-tab list for each profile, and ensure that a new Firefox instance opens the pinned tabs.
This 8 year old bug is still present in Firefox 60.0.1.

All this discussion could be avoided if we focused on the real problem here: Firefox deletes user data (the pinned tabs) without warning, under absolutely unexpected conditions (closing tabs in a specific order? really?).

Firefox should store the pinned tabs configuration and use this stored configuration to open these tabs upon startup. In no circunstances should Firefox modify or delete this data without direct user intervention (ie.: clicking on "Pin/Unpin tab").

All these questions and opinions about wether Firefox should show pinned tabs accross every window are completely unrelated to the bug, which is only a about _Firefox deleting user data_.
This bug still exist in version 64 and 65. 

For me as web developer this bug is very annoying, because I need sometimes a second window to compare sites. If I close the "main" window with the pinned tabs first, they are all gone. And it's not possible to get them back. And that happens a lot.

So pinned tabs survive a restart, update etc. as long as I use just one window. That's a weird behaviour. They should persist opening and closing windows too, as :fabiofb.gomes described.

Also Ctrl+Shift+W closes such window when there are only pinned tabs even If I have set:

browser.sessionstore.warnOnQuit true

browser.warnOnQuit true

We won't need more reports that this bug is still happening. It will continue to happen until a patch gets landed here.

Keywords: blocked-ux
Flags: needinfo?(madhava)

I keep hitting this myself - my scenario is that there are always GMail or GCal windows that were opened separately, left in the background that close last just because I don't notice they exist until I close the main Firefox Window - super frustrating.
Jesse recently found out that pinned tabs are low penetration altough once used really help users discover the value of the browser (one of these features that lead to an increase in retention) and stick with it. I think this should be considered a churn driver.
Do we know the level of effort involved in fixing this?

Flags: needinfo?(bwinton)

From reading the comments it sounds like it's unclear what the correct thing to do here is, so the fix could be easy or hard, depending on what we decide to do. I think the bug needs a decision from UX before we can move forward on it, but Dao is the triage owner and has been involved in it for about 10 years now, so I'll leave the final judgement to him.

(Also, is it really a churn driver if it has low penetration? 😉 Perhaps, if we start to publicize it so that people use it more…)

Flags: needinfo?(bwinton)

Here's a non-advocating rephrase of my suggestion:

Every new window the user opens should have the same pinned tabs, but these are special tabs which don't load anything until you put them in focus. This solves the issue IMO. How it's structured now, is much too sensitive. Like other users have said, it should matter the order in which windows are closed.

Imagine if you had a bookmarks toolbar, but the individual bookmarks were bound only to the window that you saved them in. Or a browser extension that was only bound to one window, and it only saves if that is the last window you close (or whatever). This doesn't make any sense, right? Pinned tabs should get the same scope as other features like this.

*should not matter the order

(In reply to differenceclouds from comment #126)

Here's a non-advocating rephrase of my suggestion:

Every new window the user opens should have the same pinned tabs, but these are special tabs which don't load anything until you put them in focus. This solves the issue IMO. How it's structured now, is much too sensitive. Like other users have said, it should matter the order in which windows are closed.

Imagine if you had a bookmarks toolbar, but the individual bookmarks were bound only to the window that you saved them in. Or a browser extension that was only bound to one window, and it only saves if that is the last window you close (or whatever). This doesn't make any sense, right? Pinned tabs should get the same scope as other features like this.

It sounds ok in principal but the example of bookmarks and pinned tabs are not very comparable. E.g. I have about 8-10 pinned tabs that take up about 15-20 percent of my horizontal space. I'm ok with it because they appear only in the "main" window - if they start appearing in every window, that'll eat up space that I don't want to lose in every window.

The idea isn't that complicated in my IMHO:

  1. Pinned tabs should not get lost no matter which window is closed last. They are called pinned for a reason.
  2. If a window is already showing pinned tabs, opening new windows shouldn't show them.

I think the issue is that there isn't a main window currently. How the feature is now, you can have a different set of pinned tabs for every window you open, and firefox doesn't know which set is more important (unless you close one of the windows). Maybe there's someone out there that absolutely needs to have multiple sets of pinned tabs across multiple windows which open every session, but.... I kind of doubt it?

  • My favored compromise would be this: The browser designates one main window at the beginning of a session. Have only one "set" of pinned tabs available. And then, for new windows which open, the pinned tabs are collapsed or hidden somehow, per a user preference. So that way, they don't take up too much room in new windows if that is an issue for some users.

  • Another compromise would be to disable the ability to pin tabs in any but the designated main window. if you close the main window, it will still come back if you restart the browser. Or perhaps, if you close the main window, the pinned tabs appear in the next window down. This feels... a bit arbitrary or half-baked, but still solves the issue.

Preserving multiple sets of tabs gets messy, and feels more like the realm of some type of specialized extension.

Apologies the quoting got mixed up (I should learn to preview before submitting). Re-formatting below.

I think the issue is that there isn't a main window currently. How the feature is now, you can have a different set of pinned tabs for every window you open, and firefox doesn't know which set is more important (unless you close one of the windows).

Interesting - I hadn't thought from this perspective of different sets of pinned tabs in each window.

Maybe there's someone out there that absolutely needs to have multiple sets of pinned tabs across multiple windows which open every session, but.... I kind of doubt it?

See last paragraph below.

My favored compromise would be this: The browser designates one main window at the beginning of a session. Have only one "set" of pinned tabs available. And then, for new windows which open, the pinned tabs are collapsed or hidden somehow, per a user preference. So that way, they don't take up too much room in new windows if that is an issue for some users.

Right now, if I have pinned tabs in my first window and I open a new window, I don't see those pinned tabs in the second window - so I don't think there is any requirement to collapse or hide as they are already not available/visible.

Another compromise would be to disable the ability to pin tabs in any but the designated main window. if you close the main window, it will still come back if you restart the browser. Or perhaps, if you close the main window, the pinned tabs appear in the next window down. This feels... a bit arbitrary or half-baked, but still solves the issue.

Suppose a user has multiple windows opened with different set of pinned tabs in each of them:

  • if the user quits via Ctrl+Q then upon next start, restore all of the windows with their respective pinned tabs
  • however, if the user is closing those windows one by one, then the pinned tabs on the last window "win" because Firefox has no way of determining which is the "main" window whose pinned tabs should be restored.

Suppose a user has multiple windows opened with different set of pinned tabs in each of them:

  • if the user quits via Ctrl+Q then upon next start, restore all of the windows with their respective pinned tabs
  • however, if the user is closing those windows one by one, then the pinned tabs on the last window "win" because Firefox has no way of determining which is the "main" window whose pinned tabs should be restored.

What you're describing here is very close to, or exactly how firefox already behaves. If you close a window with pinned tabs before one without, the one without "wins." Even if that last window with pinned tabs "wins," what if another window with its pinned tabs was the one the user actually wanted to save? It might sound like I'm describing an edge case here, but I'm just trying to show that the logic of the feature as it stands is... bad

I maintain that the ability for every window to have its own pinned tabs is the issue here, and that there should instead only be one set available. This set should be scoped with greater importance than an individual window, and whether or not this set appears in new windows should be a user preference.

Anyone feel me here? The logic of maintaining multiple sets of pinned tabs for windows which may or may not exist in the future is messy.

There must be some kind of routine that stores the pinned tabs of the last window you close, so they can be restored the next time you start Firefox.

What if we modify it to run every time a window is closed, rather than for the last window only. It should transfer the pinned tabs to another window (the one that would gain focus next) any time a window is closed. Only when there is no more window available to transfer the tabs to (because the window is the last/only one), the pinned tabs are saved to be restored on the next startup of Firefox.
This way no pinned tabs would get lost, but users are still able to have different pinned tabs in different windows. There's also no problem with duplicate tabs, as would be if every window showed the same pinned tabs.

Probably this routine already runs every time a window is closed, no matter if it is the last one or not. It simply overwrites the list of stored pinned tabs every time a window is closed with the tabs that are currently pinned to this specific window. So it would be even easier to just change this routine by adding a step that moves the pinned tabs to the next available window, if another window is available.

What if we modify it to run every time a window is closed, rather than for the last window only. It should transfer the pinned tabs to another window (the one that would gain focus next) any time a window is closed. Only when there is no more window available to transfer the tabs to (because the window is the last/only one), the pinned tabs are saved to be restored on the next startup of Firefox.
This way no pinned tabs would get lost, but users are still able to have different pinned tabs in different windows. There's also no problem with duplicate tabs, as would be if every window showed the same pinned tabs.

In this scenario, old, closed sets of pinned tabs would have to reappear, sequentially, as the user opens new windows. And when a new session is started, every old set would have to reappear. And, say a user doesn't want a particular set of pinned tabs anymore. They would have to unpin every tab, individually, in that particular window. Or an "unpin all tabs for this window" command could be added.

All of this interferes with the "restore previous session" option, creating two intersecting hierarchies of what should be restored from the previous session, how many windows are restored, etc.

All I'm saying is, if the goal is to preserve pinned tabs, it is a much cleaner solution to implement, and to actually use, if there is only one set available. And just to restate a detail of my ideal, I think that, at the beginning of a session, pinned tabs should not load their contents until the user clicks on them. This saves memory usage.

As strange as the requirement to have different sets of pinned tabs in different windows seemed to me at first, I can imagine users that use that capability. A real estate agent might, for example, need to have two windows up all the time on a wide monitor, with various maps on pinned tabs on the left one, and pinned tabs for real estate sites on the right one.

What I see as the problem is that pinned tabs are silently discarded when you close their window if any other windows are open. How about displaying a warning/confirmation box in that scenario: "This window has pinned tabs, and closing it while any other Firefox windows are open will discard them." with three buttons: "Discard this window with its pinned tabs", "Exit Firefox", and "Cancel"? That should be easy to implement, let different sets of pinned tabs continue to be possible, and prevent accidental pinned tab lossage.

The original complaint is still an issue as if me typing this.

Have pinned tabs in Main window.
Drag a tab into its own window for clarity.
Close main window before the additional window.
Next opening of Firefox will be sans pinned tabs.

I am using Firefox Developer's Edition on Windows 10 Pro x64 and I have it so no tabs are restored when I open Firefox the after closing it down fully.

What needs to happen is pinned tabs simply need to always be restored. If you have pinned tabs over multiple windows then they all come back with the single window return. some individuals may have an issue with that but I feel they may be expecting something different from pinned tabs than what they are designed to do. This is fair enough as it is their browser experience and they can use it however they want, but constraining the functionality of their advertised and intended use seems ill-advised.

"Pinned Tabs allow you to always keep your favorite web apps like Facebook, Gmail and Twitter open and just a click away. Pinned Tabs are small, can't be closed accidentally and open automatically when you start Firefox."

This just happened to me again, and it's so frustrating. It's pretty unreal that this bug has been around for 11 years and still isn't fixed. I'd say about once every month or two I make the mistake of closing my main Firefox window (The one containing my pinned tabs) to install updates or some other task that requires logging out, rebooting, etc, only to discover there was another Firefox window hiding underneath that main window that I didn't know about. Now all my pinned tabs are gone forever and there is no way to recover them.

I understand the "correct" way to exit Firefox is to click the hamburger menu then go down and select "Quit". But users shouldn't have to learn the "correct" way to exit every app they use. It's just muscle memory to click that red "X" in the corner since every other app behaves correctly when you close it that way, and even Firefox behaves correctly so long as your window with pinned tabs is the last window you close. I really shouldn't have to be that careful about the order in which I close windows.

And sometimes it's accidental. On Ubuntu the big red "X" to close the window is very close to the system tray when the window is maximized. It's so easy to be aiming for the volume or network/VPN settings, etc and accidentally close the window instead. And you better hope when you accidentally close it that there weren't any other Firefox windows open otherwise you've lost all your pinned tabs forever, again.

This issue results in a very poor user experience for some of Mozilla's most loyal user base.

Now all my pinned tabs are gone forever and there is no way to recover them.

You can restore other windows by Control+Shift+N, even after session restore. This has been a workaround for me, although I hope it be easier later.

(In reply to Kagami :saschanaz from comment #142)

Now all my pinned tabs are gone forever and there is no way to recover them.

You can restore other windows by Control+Shift+N, even after session restore. This has been a workaround for me, although I hope it be easier later.

THANK YOU! I was about to get really frustrated, but this brought my pinned tabs back.
@Mozilla: it looks REALLY bad that this 11 year old bug is still relevant, despite this hidden workaround.

Hello,
I know this is an old thread but this is the first and most applicable entry regarding my problem, so I figured I would post here before creating a new entry.

I use the "Active Pinned Tab" add-on to achieve something similar to what is described above, to have special pinned tabs that are expected to be visible on every window.

This addon will simply make current pinned tabs jump to any other firefox getting the focus.

The effect, imagine you have your emails in one tab, well now it is on every one of your windows, on the top left side all the time.

This however introduces two bugs including this one "my pinned tabs get closed when I close a window"

Here the pinned tabs should be on every window, however due to current engine limitation, the specific tab icon can only exist on one window at a time.

This issues has been raised with the developer of Active Pinned Tab

https://github.com/BlackGlory/active-pinned-tab/issues/4

His answer is " this is not achievable" because of a browser limitation

There is also another related bug that would be fixed by the solution to this issue.

That issue is that when you click on another window to give it focus, all the tab locations will shift to the right because it adds new pinned tabs.
The expectation for the user is that the tabs are always on all windows at the same time. But since "Active pinned tabs" work by shifting the pinned tabs around on focus events, well that makes the tabs shift.

https://github.com/BlackGlory/active-pinned-tab/issues/3

This is very disconcerting when you move your cursor to another monitor and click on a tab in another, not currently focused window.
When you do this, the tabs will shift before your click is registered.

This causes the click to land on the wrong place. Most often it will simply select the tab adjacent to the one you clicked on.
In other cases it will click on the X of one of the tabs and close it !

I think the special active tabs that are meant to appear on all windows should be a feature of the engine.
As the developer of active pinned tabs would not add the feature even if firefox engine would allow it.

bug 1751665 says it's a duplicate of this bug.

Redirect a needinfo that is pending on an inactive user to the triage owner.
:dao, since the bug has high severity and recent activity, could you have a look please?

For more information, please visit auto_nag documentation.

Flags: needinfo?(stephen) → needinfo?(dao+bmo)
Severity: major → S3
Flags: needinfo?(dao+bmo)
Priority: -- → P3

The severity field for this bug is relatively low, S3. However, the bug has 28 duplicates, 66 votes and 105 CCs.
:dao, could you consider increasing the bug severity?

For more information, please visit auto_nag documentation.

Flags: needinfo?(dao+bmo)
Flags: needinfo?(dao+bmo)
Blocks: 1717867

Hello,

This thread is very big but here's an easy way to know what it's about.

Imagine you have a music player tab.

You don't want more than one actively playing music player tab.

You don't want to search for this tab all the time, it should always be in the upper left hand corner.

So you pin it.

But it's only pin to one window.

You want to interact with your music player, you have to find on which window it is at every time.

And if you choose that window, music stops

Solution, you install active pinned ta a add-on.

Now the music tabs follows the focused window.

This is annoying because now, everytime you click to focus a window, all the tabs shift around.

But worse, every time you close a window, your music tab gets closed along with it.

What we need is native pinned tabs that are pinned to all windows at the same time.

And there exists an example of this Firefox View.

We just need to be able to make any tab into a permanent pinned on all window tab just like Firefox View.

Firefox View was introduced in October 2022

Hi!

We are currently evaluating an approach that has been suggested in this bug: make pinned tabs a Firefox-level variable instead of a window-level variable.

In practice, this would mean that:

  • pinned tabs are pinned to all opened windows. Incognito windows are the only exception.
  • pinned tabs are synced. If you:
    • open Window 1 and 2,
    • add a pinned tab X in Window 1,
    • switch to Window 2, the tab X is already pinned, but not loaded until it's clicked upon.

If you commented about this bug in the past, it would be super helpful if you can share your thoughts on the following questions we have:

  1. What are your thoughts about this potential change in pinned tabs behavior? Are there situations in which you would find "persistent" tabs inconvenient?
  2. In what situations do you use pinned tabs?
    Do they play the role of static bookmarks or reminders to return to a task? Or do you pin tabs from which you navigate to other pages often?
  3. How important it is for you to sync pinned tabs state perfectly? E.g., if you navigate from a pinned tab to another URL, do you expect that state to be synced to the same pinned tab in another window?

I often have over 500 to 1000 tabs open across 5-10 window
And I'm very annoyed trying to find a tab in all this.
Some tabs should always be in the upper left corner and always in the same order

As you can see in this screenshot
https://i.imgur.com/X8CkOEW.jpg

I would right away put these tabs in
Tab manager plus
music player
email
virtual machine manager
chatgpt
SMS
facebook messenger

Try add-on active pinned tabs, it's almost the right thing, except whenever you change window focus, all the tabs position shift horizontally and that's super annoying so I don't use it.

Also, to take the idea further, I would like to stack some of these, I would stack email/sms/facebook on a single icon, click it then click email, just to save tab space

By far, having Tab Manager Plus always in the same place would be nice, although I got used to having that one always immediately to the left of my address bar, it should always have been in the upper left corner.

Hi Ania,

What are your thoughts about this potential change in pinned tabs behavior?

I've been following this bug for 12 years. This sounds like exactly the behavior I've been wanting for 12 years.

Are there situations in which you would find "persistent" tabs inconvenient?

I can't imagine one.

In what situations do you use pinned tabs?

I do not currently use pinned tabs on my primary machine. I used to use pinned tabs avidly. However, when I switched to a multi-monitor setup, I'd regularly find myself breaking a tab off (typically something like YouTube for a separate full video window on one window while doing my primary browsing on another), and doing so would regularly result in me closing things "in the wrong order" and I'd lose my pinned tabs.

My primary, and only use case for pinned tabs is for "web apps" I might want to keep open in the background, e.g., webmail, my RSS reader, Reddit, etc. I still use them on my laptop (single monitor) for this exact purpose.

How important it is for you to sync pinned tabs state perfectly? E.g., if you navigate from a pinned tab to another URL, do you expect that state to be synced to the same pinned tab in another window?

I don't think this is that important, and trying to do it would likely be impossible. For certain apps, I think it would be a very hard problem (e.g. if I'm writing an email, I don't think it's reasonable to expect that that state be in sync across browser windows; if I have the windows at two different resolutions and the app maintains state differently, that could cause big problems for syncing).

Really, what I want from pinned tabs is an auto loading set of bookmarks that's present for all windows. To give an example, if I pin a table at "example.com/foo", and then navigate to "example.com/bar" in my current window, then open a new window, I want "example.com/foo" to be what shows up in the new window.

I should clarify, when I say "auto loading", I don't mean the tab actually being loaded, just that the tab button is on the tab strip (the lazy loading, "wait until you click on it before actually loading a new copy" behavior sounds perfect for my case of something like a video player in a new window).

(In reply to Ania from comment #153)
I think I would find the proposed change very disruptive. I have one window open with 8 pinned tabs, and I use this to access the webapps I work with every day (e.g. email client, GitHub, ticket handling app). Other tabs on that window get used for various short-term purposes. Sometimes I move these tabs to new windows, where I open more tabs. I don't want my pinned tabs to appear on these other windows and waste horizontal space. And if they did appear but their content was not identical on all windows I reckon I would easily get confused about which window I am in mid-activity on for each app.

(In reply to Ania from comment #153)

  • pinned tabs are pinned to all opened windows. Incognito windows are the only exception.
  • pinned tabs are synced. If you:
    • open Window 1 and 2,
    • add a pinned tab X in Window 1,
    • switch to Window 2, the tab X is already pinned, but not loaded until it's clicked upon.

I welcome the proposed change because it would bring consistency and predictability to tab pinning.

That being said, it would disrupt my current workflow which consists of me having at least two separate Firefox windows open, one for work (with pinned tabs for work-related stuff) and one for leisure (with pinned tabs for social media, nextcloud, etc.).

However, I think I’d be willing to to move to a multi-profile/multi-instance setup where I have separate Firefox profiles for work and leisure for the benefit of the greater good (less confusing behavior for most users). On a related note: it should be simpler than resorting to the command-line to open a new Firefox instance with a separate Profile…

If you commented about this bug in the past, it would be super helpful if you can share your thoughts on the following questions we have:

  1. What are your thoughts about this potential change in pinned tabs behavior? Are there situations in which you would find "persistent" tabs inconvenient?

(see above)

  1. In what situations do you use pinned tabs?
    Do they play the role of static bookmarks or reminders to return to a task? Or do you pin tabs from which you navigate to other pages often?

Almost always the second. I use pinned tabs almost exclusively for sites that are application-like (social media, groupware, intranet portal, nextcloud).

  1. How important it is for you to sync pinned tabs state perfectly? E.g., if you navigate from a pinned tab to another URL, do you expect that state to be synced to the same pinned tab in another window?

I can imagine it making sense to completely share pinned tabs across all windows, meaning those are just two separate views into the same tab instance. Same DOM tree, same JS heap. Not synced but de-duplicated, so that clicking into a pinned tab on a new window will not lead to increased memory usage that won’t go away until the window is closed. I don’t know if that’s feasible with the current architecture, though…

My pinned tabs are basically things that would have been apps in my OS taskbar had the ecosystem better supported PWA, such as email and calendar. The change as described would work and would not be detrimental for me, but...

It's not that I need pinned tabs in other windows. Not at all. The actual underlying problem is that in my workflow there is a "main" Firefox window, and most of the time closing it shuts down Firefox, but if a random window is open something entirely different happens. That is the real problem for me personally, and making pinned tabs global would only address one part of the underlying problem. Losing the pinned tabs when I accidentally close several windows in the wrong order was the main reason I voted for this issue.

If you do go this route, I feel it has to be literally the same tab in all windows. Not a separate tab open to the same URL, even if it's carefully "synced" somehow. If it's a JS-heavy app and I click something, I would expect it to be reflected no matter which window I'm viewing the pinned tab in. Otherwise the overall result would probably be more frustrating than the current situation.

Blocks: 1808684
Duplicate of this bug: 1853836

This behavior has been bothering me for as long as Firefox has had pinned tabs. In today's world, where we have "Web Applications" instead of just "Websites," using Firefox is a pain. I am working around this with addons that allow me to save my (approximately 15) pinned tabs since I know that I lose them at least once per week.

The suggestion in Comment #153 would definitely be an improvement but seems unnecessarily clumsy.

My preferred solution would be that the initial Firefox window contains all pinned tabs. Extra windows that are opened during a browsing session do not need pinned tabs, in my opinion.

An alternative, if the Firefox developers prefer tabs to be "per window": Remember the state of ALL windows with pinned tabs when those windows are closed. Restore those windows when Firefox is opened.

The main point is: If a tab is pinned, it MUST be restored after closing and restarting Firefox. The only way to permanently close it should be "Unpin Tab". Any behavior that does not satisfy this condition is a bug.

No longer blocks: 1717867
Duplicate of this bug: 1717867

There's some useful discussion in bug 1717867 about how this could be addressed. We decided to mark that bug as a duplicate of this one, but it may be worth reading through this comments regardless, in case someone wants to help move this bug forward.

The severity field for this bug is set to S3. However, the following bug duplicate has higher severity:

:dao, could you consider increasing the severity of this bug to S2?

For more information, please visit BugBot documentation.

Flags: needinfo?(dao+bmo)

Will keep this at S3 for now.

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