tim-we / tabs-aside

A session/tab manager web extension for Firefox based on the Microsoft Edge feature.

Home Page:https://addons.mozilla.org/firefox/addon/tabs-aside/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Support for temporary containers

devkabiir opened this issue · comments

Setting a tab aside that was using a temporary container fails to restore it later.
The extension causing this issue is this https://github.com/stoically/temporary-containers.

The reason for this is that when restoring the tab, you're trying to restore it in it's original container, but by that time it might not exist. So perhaps a setting can be added to skip restoring tabs with a specific container id/name for instance if the container name starts with tmp and restore them to the default container i.e. firefox-default.

Another issue caused by this is that, when the tab fails to restore, there is a "open in default container" option, upon clicking which the tab does restore in default container but Tabs Aside looses it somehow and now my session doesn't have that tab. So clicking on "Set aside" will leave out that tab and I will have to manually add that tab to the session again. This is very annoying when most tabs use temporary containers.

I believe you're tracking restored tabs by their tab.url + cookieStoreId + tabId or some combination of these.

  • Using cookieStoreId is problematic for cases when the user has other extensions manipulating contextualIdentities, but it's essential for properly tracking and restoring the session at later point.
  • Using tabId is problematic when other extensions also make changes to the tab, for example Temporary Containers creates another tab (so it can control it) to switch it's cookieStoreId and removes the original tab (Tabs Aside looses it here). This could be the root cause of the above mentioned problem.
  • Using tab.url is problematic in cases extensions make changes to tab's url, like removing tracking parameters, performing redirects (old.reddit.com instead of reddit.com), also for cases when user has multiple tabs with same URL.

Thanks for that detailed bug report :)

Tabs Aside tracks tabs using their tabId. But using default settings it should also automatically add new tabs in a window of a restored session to that session. I'll look into it.