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 manipulatingcontextualIdentities
, 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 exampleTemporary Containers
creates another tab (so it can control it) to switch it'scookieStoreId
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.