sidebery
sidebery copied to clipboard
Snapshot tab order is reversed
Steps to reproduce
When you save a tab session, then restore that session, all of the tabs are opened in reverse-order they were saved in. (If you continuously do this process, you will iterate between original order and reverse order on each snapshot restoration.)
Expected behavior
The snapshot should both save and reopen the tabs in the order for which they were originally saved as.
Debug info
Addon data
{
"settings": {
"version": "4.10.2",
"nativeScrollbars": true,
"selWinScreenshots": true,
"tabsCheck": true,
"tabsFix": "notify",
"markWindow": false,
"markWindowPreface": "[Sidebery] ",
"ctxMenuNative": true,
"autoHideCtxMenu": "none",
"ctxMenuRenderInact": true,
"ctxMenuIgnoreContainers": "",
"navBarLayout": "horizontal",
"navBarInline": true,
"hideAddBtn": true,
"hideSettingsBtn": false,
"navBtnCount": true,
"hideEmptyPanels": true,
"navActTabsPanelLeftClickAction": "none",
"navActBookmarksPanelLeftClickAction": "none",
"navMidClickAction": "none",
"navSwitchPanelsWheel": false,
"groupLayout": "grid",
"skipEmptyPanels": false,
"dndTabAct": true,
"dndTabActDelay": 750,
"dndTabActMod": "none",
"dndExp": "pointer",
"dndExpDelay": 0,
"dndExpMod": "none",
"stateStorage": "global",
"warnOnMultiTabClose": "collapsed",
"activateOnMouseUp": true,
"activateLastTabOnPanelSwitching": true,
"showTabRmBtn": true,
"showTabCtx": true,
"hideInact": false,
"activateAfterClosing": "prev_act",
"activateAfterClosingPrevRule": "visible",
"activateAfterClosingNextRule": "tree",
"activateAfterClosingGlobal": false,
"activateAfterClosingNoFolded": true,
"activateAfterClosingNoDiscarded": true,
"shiftSelAct": true,
"askNewBookmarkPlace": true,
"tabsRmUndoNote": true,
"nativeHighlight": false,
"tabsUnreadMark": false,
"tabsReloadLimit": 5,
"tabsReloadLimitNotif": true,
"tabsPanelSwitchActMove": true,
"moveNewTabPin": "start",
"moveNewTabParent": "last_child",
"moveNewTabParentActPanel": false,
"moveNewTab": "after",
"pinnedTabsPosition": "panel",
"pinnedTabsList": true,
"pinnedAutoGroup": false,
"tabsTree": true,
"groupOnOpen": true,
"tabsTreeLimit": "none",
"hideFoldedTabs": false,
"autoFoldTabs": false,
"autoFoldTabsExcept": "none",
"autoExpandTabs": false,
"rmChildTabs": "none",
"tabsChildCount": true,
"tabsLvlDots": false,
"discardFolded": false,
"discardFoldedDelay": 0,
"discardFoldedDelayUnit": "sec",
"tabsTreeBookmarks": true,
"treeRmOutdent": "first_child",
"bookmarksPanel": true,
"warnOnMultiBookmarkDelete": "collapsed",
"openBookmarkNewTab": false,
"midClickBookmark": "open_new_tab",
"actMidClickTab": false,
"autoCloseBookmarks": false,
"autoRemoveOther": false,
"highlightOpenBookmarks": false,
"activateOpenBookmarkTab": false,
"showBookmarkLen": false,
"bookmarksRmUndoNote": true,
"fontSize": "m",
"bgNoise": true,
"animations": true,
"animationSpeed": "fast",
"theme": "default",
"style": "auto",
"sidebarCSS": false,
"groupCSS": false,
"snapNotify": true,
"snapExcludePrivate": false,
"snapInterval": 15,
"snapIntervalUnit": "min",
"snapLimit": 1,
"snapLimitUnit": "day",
"hScrollThroughPanels": false,
"scrollThroughTabs": "none",
"scrollThroughVisibleTabs": false,
"scrollThroughTabsSkipDiscarded": false,
"scrollThroughTabsExceptOverflow": true,
"scrollThroughTabsCyclic": false,
"tabDoubleClick": "none",
"tabLongLeftClick": "none",
"tabLongRightClick": "none",
"tabsPanelLeftClickAction": "none",
"tabsPanelDoubleClickAction": "none",
"tabsPanelRightClickAction": "menu",
"tabsPanelMiddleClickAction": "tab",
"syncName": "",
"syncSaveSettings": true,
"syncSaveCtxMenu": true,
"syncSaveStyles": true,
"syncAutoApply": false
},
"permissions": {
"allUrls": false,
"tabHide": false,
"actualAllUrls": false,
"actualTabHide": false
},
"storage": {
"size": "156.4 kb",
"props": {
"bookmarksMenu": "226 b",
"bookmarksPanelMenu": "54 b",
"containers_v4": "2 b",
"cssVars": "1.6 kb",
"favAutoCleanTime": "10 b",
"favUrls": "906 b",
"favicons": "119.9 kb",
"lastSnapTime": "13 b",
"panelIndex": "1 b",
"panels_v4": "446 b",
"prevTabsData_v4": "59 b",
"profileID": "14 b",
"settings": "2.8 kb",
"snapshots_v4": "19.6 kb",
"tabsData_v4": "9.9 kb",
"tabsMenu": "178 b",
"tabsPanelMenu": "154 b"
}
},
"panels": [
{
"type": "bookmarks",
"id": "bookmarks",
"cookieStoreId": "bookmarks",
"name": 9,
"icon": "...",
"bookmarks": true,
"lockedPanel": false,
"skipOnSwitching": false
},
{
"type": "default",
"id": "firefox-default",
"name": 7,
"icon": "...",
"cookieStoreId": "firefox-default",
"lockedTabs": false,
"lockedPanel": false,
"skipOnSwitching": false,
"noEmpty": false,
"newTabCtx": "none",
"dropTabCtx": "none",
"moveTabCtx": "none",
"moveTabCtxNoChild": true
}
],
"containers": [],
"cssVars": {},
"windows": [
{
"state": "maximized",
"incognito": false,
"tabsCount": 33
},
{
"state": "maximized",
"incognito": false,
"tabsCount": 13
}
],
"tabsMenu": [
"mute",
"separator-1",
"moveToNewWin",
"reopenInNewWin",
"reopenInCtr",
"separator-2",
"copyUrls",
"pin",
"discard",
"separator-3",
"group",
"flatten",
"separator-4",
"clearCookies",
"close"
],
"bookmarksMenu": [
[
{
"name": "Open in"
},
"openInNewWin",
"openInNewPrivWin",
"openInCtr"
],
"separator-5",
"createBookmark",
"createFolder",
"createSeparator",
"separator-6",
"sortByName",
"sortByLink",
"sortByTime",
"separator-7",
"copyUrls",
"edit",
"delete"
],
"bookmarks": {
"bookmarksCount": 120,
"foldersCount": 7,
"separatorsCount": 0,
"maxDepth": 2
}
}
Cannot reproduce, maybe this is the result of the work of another addon?
Hmm... If it changes something, my tab data is stored in global and not session storage. The wording seems to indicate global is needed for restoring sessions, so I set it to that when setting up snapshots. Is this unneeded for snapshots to operate? Or recommend one over the other?
The storage type of the tabs data doesn't affect on the snapshots saving / restoring, so I think the root of this issue is in restoring process... and I found the root of this bug: it's browser.tabs.insertAfterCurrent (in about:config) - you can set it to false to fix current behavior.
Ah yes, nice find. I forgot that's a setting I've long ago set(and thus forgotten) and use!
Fixed from v5.0.0