Treestyletab: Tabs in tree become unclickable

Created on 26 Jan 2018  Â·  54Comments  Â·  Source: piroor/treestyletab

Short description

Tabs will sporadically become unclickable. Clicking on these tabs will not bring them into focus. Dragging them onto others to create trees will not reflect any change in the tree structure until a restart.

Steps to reproduce

I have not found a way to reliably reproduce this, but it has been happening all day yesterday and today since the most recent updates. Just now, my tabs were working fine until I left my computer for a few minutes with the browser running, and when I came back many of the tabs were unclickable.

Expected result

Clicking a tab should bring it into focus. Dragging it onto another should create a tree.

Actual result

Tabs don't work as expected.

Environment

  • Platform (OS): macOS 10.13.2
  • Version of Firefox: v58
  • Version (or revision) of Tree Style Tab: 2.4.6
help wanted

Most helpful comment

@dequis BTW I didn't know Conex https://addons.mozilla.org/en-US/firefox/addon/conex/ and I've realized that TST doesn't compatible it, so I've introduced some changes to improve compatibility with addons including tab-hiding feature. Now tabs hidden by other addons like Conex are hidden in the TST sidebar also.

All 54 comments

Closing and reopening the sidebar does not fix this issue.

I have same issue, plus clicking "+" at bottom of tree does not open a new tab.

Only new tabs become unclickable, meaning tabs opened after the Tree Stye Tab 2.4.6 update. Tabs created before that continue to be clickable as they should be.

Tabs created by clicking "+" at top bar sometimes do not appear until close and reopen Tree Style Tab side panel.

My environment:

Platform (OS): Windows 10 Home
Version of Firefox: 58.0 (64-bit 
Version (or revision) of Tree Style Tab: 2.4.6

Getting the same problem here. Tabs become unclickable after a random amount of time, forcing me to either close it or navigate through the tree manually via keyboard shortcuts.

Same symptons
All newly opened tabs are unclickable in the treestyle sidebar and the "+" at the bottom will do nothing.
Downgrading to 2.4.5 makes everything work as expected again.

Environment:

Platform (OS): Linux 4.14.15-1-ARCH x86_64
Version of Firefox: 58.0 (64-bit 
Version (or revision) of Tree Style Tab: 2.4.6

I think I'm having the same issue, plus new tabs (created by e.g. following a link using a middle click) sometimes do not visibly appear, yet do exist and can be accessed using keyboard shortcuts (control+tab).

Platform (OS): Windows 7
Version of Firefox: 58.0 (64-bit)
Version (or revision) of Tree Style Tab: 2.4.6

I am experiencing the same issue. Are there plans to fix this in the near future? For the time being, I am using Version 2.4.3, which does not have these problems.

I'm seeing this also on both Linux (57.0.4) and Windows. (58.0)
Only a couple of days experience using TST on windows, so not a lot of history there.

On Linux, it;s been happening since 2.4.3 (quite sure it's been going on for more than 3 days.) I have mainly noticed it on starting FF. When it does happen, I cannot even close the tab. What does fix it every time is disabling TST and then re-enabling it. The "stuck" tab then functions normally.

I have noticed it has repeatedly occurred on the same pages. Two of them of note are

https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-050j-information-and-entropy-spring-2008/syllabus/MIT6_050JS08_penfield.pdf

http://game-maps.com/ESO/img/Tamriel-Overview.jpg

When looking these up in my history, I noticed there were two entries for each of these pages; The ones above, and these two:

 moz-extension://14e70782-a14c-43a8-927a-f5f4b8cdfdc6/replaced/replaced.html?state=redirect&title=Course%20Notes%2C%206.050J/2.110J%20Information%20and%20Entropy%20-%20Penfield%20-%20MIT6_050JS08_penfield.pdf&url=https%3A//ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-050j-information-and-entropy-spring-2008/syllabus/MIT6_050JS08_penfield.pdf&favIconUrl=https%3A//ocw.mit.edu/favicon.ico

 moz-extension://14e70782-a14c-43a8-927a-f5f4b8cdfdc6/replaced/replaced.html?state=redirect&title=Tamriel-Overview.jpg%20(JPEG%20Image%2C%202300%C2%A0%C3%97%C2%A01685%20pixels)%20-%20Scaled%20(47%25)&url=http%3A//game-maps.com/ESO/img/Tamriel-Overview.jpg&favIconUrl=http%3A//game-maps.com/ESO/img/Tamriel-Overview.jpg

I do not see this for URLs that I know have not had this issue. i.e., I just restarted FF and none of the current restored tabs have this second form in my history. Maybe a bad interaction between TST and Tab Session Manager? Is anyone else using this combination?

And I'm sorry @CalculusWarrior, that's a kinda lame question. I am quite certain this bug will get fixed as soon as we figure out what's going on. Up 'till now, there has been absolutely no specific patterns or situations given. Even what I have presented may be a lark.

I'm experiencing some similar problems in the latest version (not sure if its the same bug or another one).

Sometimes TST gets into a state where I'm not able to expand/collapse any trees - since I don't use collapsed trees this isn't such a big problem for me. However, once in this state TST doesn't expand new subtrees, which prevents me from getting to the tab. TST knows that theres a child tab, and I can navigate to it using ctrl pageup/pagedown, but I can't expand the tree node

I have the "Optimize tree restoration with cache" option disabled due to #1735.

I have undreds of tabs open in 3 windows.

Disable and re-enable TST for a window fixes the tree layout but doesn't fix the problem with expandable tabs. Restarting FF also doesn't help.

Once in this state, even downgrading the extension to 2.4.3 doesn't fix it.

I'm also having this issue on Linux, and I also am unable to navigate tabs using keyboard shortcuts that navigate directly to a tab, like Alt+1-9 (Ctrl+1-9 for other platforms).

I tried clicking on the collapse with debug mode enabled, this is what showed up in the console:

tst: onMouseDown: found target tab: common.js:21
tst: onMouseDown Object { targetType: "tab", tab: "tab-3-305", closebox: false, button: 0, ctrlKey: false, shiftKey: false, altKey: false, metaKey: false, isMiddleClick: false, isAccelClick: false } common.js:21
tst: onMouseUp Object { targetType: "tab", tab: "tab-3-305", closebox: false, button: 0, ctrlKey: false, shiftKey: false, altKey: false, metaKey: false, isMiddleClick: false, isAccelClick: false } common.js:21
tst: onClick [object HTMLSpanElement] common.js:21
tst: clicked tab: common.js:21
tst: clicked on twisty common.js:21
ReferenceError: logOnCollapseExpand is not defined tree-operations.js:531:5

@ksulli Thanks! I missed the typo and it has been fixed by 04fa05a.

To all: Could you try to reproduce the problem with enabled "Debug mode" checkbox? In the debug mode you'll see detailed logs like https://github.com/piroor/treestyletab/issues/1742#issuecomment-361172325 in the debugger window. (How to start debugger for TST)

when clicking on the + to open a new tab i get

tst<Sidebar-3>:    onMouseDown: found target tab:  null  common.js:21:60
tst<Sidebar-3>:    onMouseDown  Object { targetType: "newtabbutton", tab: null, closebox: false, button: 0, ctrlKey: false, shiftKey: false, altKey: false, metaKey: false, isMiddleClick: false, isAccelClick: false }  common.js:21:60
tst<Sidebar-3>:    onMouseUp  Object { targetType: "newtabbutton", tab: null, closebox: false, button: 0, ctrlKey: false, shiftKey: false, altKey: false, metaKey: false, isMiddleClick: false, isAccelClick: false }  common.js:21:60
tst<Sidebar-3>:    click on the new tab button  common.js:21:60
tst<Sidebar-3>:     handleNewTabAction  common.js:21:60
tst<Sidebar-3>:    onClick [object HTMLButtonElement]  common.js:21:60
tst<BG>:    new tabs requested:  Object { parent: undefined, insertBefore: undefined, insertAfter: undefined, inBackground: false, cookieStoreId: null, inRemote: false, windowId: 3, type: "treestyletab:open-new-tabs", uris: Array[1], opener: undefined }  common.js:21:60
Error: Invalid tab ID: 13

@k-dominik Could you paste the expanded version of the part uris: Array[1] ? RIght-click on it and choose "Store as a global variable", then something like "temp0" will appear in the command line, and please hit the Enter key. You'll contents of the array in the console.

My case when I clicked the + button (works fine):

19:06:59.557 tst<Sidebar-3>:       onMouseDown: found target tab:  null  common.js:21:60
19:06:59.559 tst<Sidebar-3>:       onMouseDown  Object { targetType: "newtabbutton", tab: null, closebox: false, button: 0, ctrlKey: false, shiftKey: false, altKey: false, metaKey: false, isMiddleClick: false, isAccelClick: false }  common.js:21:60
19:06:59.650 tst<Sidebar-3>:       onMouseUp  Object { targetType: "newtabbutton", tab: null, closebox: false, button: 0, ctrlKey: false, shiftKey: false, altKey: false, metaKey: false, isMiddleClick: false, isAccelClick: false }  common.js:21:60
19:06:59.652 tst<Sidebar-3>:       click on the new tab button  common.js:21:60
19:06:59.652 tst<Sidebar-3>:        handleNewTabAction  common.js:21:60
19:06:59.654 tst<Sidebar-3>:       onClick [object HTMLButtonElement]  common.js:21:60
19:06:59.668 tst<BG>:     new tabs requested:  Object { parent: undefined, insertBefore: undefined, insertAfter: undefined, inBackground: false, cookieStoreId: null, inRemote: false, windowId: 3, type: "treestyletab:open-new-tabs", uris: Array[1], opener: undefined }  common.js:21:60
19:06:59.803 tst<BG>:    tabs.onCreated:  10  common.js:21:60
...
19:07:10.683 temp0
19:07:10.687 Array [ null ]

Hey @piroor , i do not really have a command line when I have the browser console open... store as global variable doesn't do anything for me

I think you need to use remote debugger for addon (opened from about:debugging), instead of Firefox's browser console (opened by Ctrl-Shift-J).

meh, after a few restarts I still cannot reproduce the problem anymore :/

maybe it only happens directly after the update? Once this special tab with the explanations is shown

I have not observed the problem since restarting my computer. When I was experiencing it though, it would occur even after restarting the browser.

Disregard the above, it just started happening again. This time it began happening when I had opened up a private browsing window, and when I switched back to the normal window it was bugged there too.

When I start the debugger for TST I don't get anything like what is in ksulli's comments. What I see is

TypeError: this.win is null[Learn More] auto-refresh.js:201:9
Error: Invalid tab ID: 49 ext-browser.js
TypeError: this.win is null[Learn More] auto-refresh.js:201:9
Error: An unexpected error occurred undefined
TypeError: this.win is null[Learn More] auto-refresh.js:201:9
Error: Invalid tab ID: 49 ext-browser.js
TypeError: this.win is null[Learn More] auto-refresh.js:201:9
Error: Invalid tab ID: 49 ext-browser.js
TypeError: this.win is null[Learn More] auto-refresh.js:201:9
Error: Invalid tab ID: 49 ext-browser.js
TypeError: this.win is null[Learn More] auto-refresh.js:201:9
Error: Invalid tab ID: 49 undefined
uncaught exception: undefined (unknown)

I've released 2.4.7 on addons.mozilla.org, with some fixes around initialization process. Could you try it?

As for me, the problem looks fixed, I can expand and collapse tabs again.

On 2.4.7 it seems to works fine again for me.

Earlier today it was still broken for me on 2.4.7, though I had no time to gather logs. If it happens again I'll try to provide some.

Still broken for me in 2.4.7

I also have 2.4.7, and this (new tabs not visible, clicking on some tabs not working, + button not working) happened again today. (macOS 10.13.3, FF 58.0.1)

Echoing what @tlarchukAtAtt said. All I see in the console is something that looks like that.

Error in parsing value for ‘font’. Declaration dropped. sidebar.html
Error: Invalid tab ID: 171 undefined

With a red number next to undefined that increases every time I try and click either the New Tab + button or any of the tabs that are unresponsive.

I noticed that there's an <ul id="window-3" class="tabs" ...> in both background.html and sidebar.html, and that the unclickable tabs are missing from background.html but present in sidebar.html

I'm not sure what triggers the bug, but it doesn't happen immediately after restarting firefox or reenabling the plugin. I just did disable/enable and it went away.

This is 2.4.7 on FF 60.0a1.

This is still occurring in 2.4.8. If you have any other steps for logging I'm eager to provide them, as this bug is enormously disruptive.

@piroor I've been coming across this bug on win7, 10 and linux on my desktop and laptop for about the past week. Currently on 2.4.8, Firefox 58.0.1. Hope these logs are useful. Let me know if you want anything else.

Clicking the new tab button doesn't work:

11:04:06.977 tst<Sidebar-3>:    onMouseDown: found target tab:  null  common.js:21:60
11:04:06.978 tst<Sidebar-3>:    onMouseDown  Object { targetType: "newtabbutton", tab: null, closebox: false, button: 0, ctrlKey: false, shiftKey: false, altKey: false, metaKey: false, isMiddleClick: false, isAccelClick: false }  common.js:21:60
11:04:07.063 tst<Sidebar-3>:    onMouseUp  Object { targetType: "newtabbutton", tab: null, closebox: false, button: 0, ctrlKey: false, shiftKey: false, altKey: false, metaKey: false, isMiddleClick: false, isAccelClick: false }  common.js:21:60
11:04:07.064 tst<Sidebar-3>:    click on the new tab button  common.js:21:60
11:04:07.065 tst<Sidebar-3>:     handleNewTabAction  common.js:21:60
11:04:07.066 tst<Sidebar-3>:    onClick [object HTMLButtonElement]  common.js:21:60
11:04:07.080 tst<BG>:    new tabs requested:  Object { parent: undefined, insertBefore: undefined, insertAfter: undefined, inBackground: false, cookieStoreId: null, inRemote: false, windowId: 3, type: "treestyletab:open-new-tabs", uris: Array[1], opener: undefined }  common.js:21:60
11:04:07.093 Error: Invalid tab ID: 297  undefined
11:04:32.916 temp0
11:04:32.920 Array [ null ]

Ctrl+T for a new tab works:

11:13:30.635 tst<BG>:    tabs.onCreated:  355  common.js:21:60
11:13:30.636 tst<Sidebar-3>:    tabs.onCreated:  355  common.js:21:60
11:13:30.637 tst<Sidebar-3>:    onNewTabTracked:  Object { id: 355, index: 26, windowId: 3, highlighted: true, active: true, pinned: false, status: "complete", discarded: false, incognito: true, width: 1464, 9 more… }  common.js:21:60
11:13:30.638 tst<Sidebar-3>:     build tab for  Object { id: 355, index: 26, windowId: 3, highlighted: true, active: true, pinned: false, status: "complete", discarded: false, incognito: true, width: 1464, 9 more… }  common.js:21:60
11:13:30.641 tst<Sidebar-3>:       collapseExpandTab tab-3-355  Object { collapsed: true, justNow: true } Object { stack: "collapseExpandTab@moz-extension://a…" }  common.js:21:60
11:13:30.644 tst<Sidebar-3>:        onTabCollapsedStateChanging  #tab-3-355 Object { collapsed: true, justNow: true, anchor: undefined, last: undefined }  common.js:21:60
11:13:30.699 tst<Sidebar-3>:    uniqueId:  Object { id: "tab-hoary-pangolin-1517714010685-104", originalId: null, originalTabId: null, duplicated: false }  common.js:21:60
11:13:30.701 tst<Sidebar-3>:      reserveToUpdateCachedTabbar  Object { stack: "reserveToUpdateCachedTabbar@moz-ext…" }  common.js:21:60
11:13:30.702 tst<Sidebar-3>:       clearWindowCache  Object { stack: "clearWindowCache@moz-extension://a3…" }  common.js:21:60
11:13:30.704 tst<Sidebar-3>:    tabs.onActivated:  #tab-3-355  common.js:21:60
11:13:30.705 tst<Sidebar-3>:      scrollToTab to  #tab-3-355 <NULL> Object {  } Object { stack: "scrollToTab@moz-extension://a380ce4…" }  common.js:21:60
11:13:30.707 tst<Sidebar-3>:    tabs.onUpdated  355 Object { status: "loading" } Object { id: 355, index: 26, windowId: 3, highlighted: true, active: true, pinned: false, status: "complete", discarded: false, incognito: true, width: 1464, 9 more… } Object { id: 355, index: 26, windowId: 3, highlighted: true, active: true, pinned: false, status: "complete", discarded: false, incognito: true, width: 1464, 9 more… }  common.js:21:60
11:13:30.710 tst<Sidebar-3>:    tabs.onUpdated  355 Object { isArticle: false } Object { id: 355, index: 26, windowId: 3, highlighted: true, active: true, pinned: false, status: "complete", discarded: false, incognito: true, width: 1464, 9 more… } Object { id: 355, index: 26, windowId: 3, highlighted: true, active: true, pinned: false, status: "loading", discarded: false, incognito: true, width: 1464, 9 more… }  common.js:21:60
11:13:30.714 tst<Sidebar-3>:    tabs.onUpdated  355 Object { status: "loading", url: "about:newtab" } Object { id: 355, index: 26, windowId: 3, highlighted: true, active: true, pinned: false, status: "complete", discarded: false, incognito: true, width: 1464, 9 more… } Object { id: 355, index: 26, windowId: 3, highlighted: true, active: true, pinned: false, status: "loading", discarded: false, incognito: true, width: 1464, 9 more… }  common.js:21:60
11:13:30.733 tst<Sidebar-3>:     collapseExpandTab tab-3-355  Object { collapsed: false, justNow: false, anchor: <li#tab-3-355.tab.subtree-collapsed.collapsed.opening.contextual-identity-firefox-private.private-browsing.animation-ready.active.loading.throbber-unsynchronized>, last: true } Object { stack: "collapseExpandTab@moz-extension://a…" }  common.js:21:60
11:13:30.735 tst<Sidebar-3>:      onTabCollapsedStateChanging  #tab-3-355 Object { collapsed: false, justNow: false, anchor: <li#tab-3-355.tab.subtree-collapsed.collapsed.opening.contextual-identity-firefox-private.private-browsing.animation-ready.active.loading.throbber-unsynchronized>, last: true }  common.js:21:60
11:13:30.738 tst<Sidebar-3>:        calculateScrollDeltaForTab  #tab-3-355 Object { delta: 0, offset: 0, tabTop: 580.7999877929688, tabBottom: 607.1999816894531, containerBottom: 936 }  common.js:21:60
11:13:30.747 tst<Sidebar-3>:      calculateScrollDeltaForTab  #tab-3-355 Object { delta: 0, offset: 26.399993896484375, tabTop: 580.7999877929688, tabBottom: 607.1999816894531, containerBottom: 936 }  common.js:21:60
11:13:30.749 tst<Sidebar-3>:    => already visible  common.js:21:60
11:13:30.769 tst<Sidebar-3>:     scrollToTab to  #tab-3-355 #tab-3-355 Object { anchor: <li#tab-3-355.tab.subtree-collapsed.opening.contextual-identity-firefox-private.private-browsing.animation-ready.active.loading.throbber-unsynchronized.expanding>, notifyOnOutOfView: true } Object { stack: "scrollToTab@moz-extension://a380ce4…" }  common.js:21:60
11:13:30.866 tst<Sidebar-3>:      calculateScrollDeltaForTab  #tab-3-355 Object { delta: 0, offset: 26.399993896484375, tabTop: 582.9166870117188, tabBottom: 609.3166809082031, containerBottom: 936 }  common.js:21:60
11:13:30.868 tst<Sidebar-3>:    => already visible  common.js:21:60
11:13:30.988 tst<Sidebar-3>:    tabs.onUpdated  355 Object { status: "complete" } Object { id: 355, index: 26, windowId: 3, highlighted: true, active: true, pinned: false, status: "complete", discarded: false, incognito: true, width: 1464, 9 more… } Object { id: 355, index: 26, windowId: 3, highlighted: true, active: true, pinned: false, status: "loading", discarded: false, incognito: true, width: 1464, 9 more… }  common.js:21:60
11:13:30.996 tst<Sidebar-3>:    tabs.onUpdated  355 Object { favIconUrl: "chrome://branding/content/icon32.png" } Object { id: 355, index: 26, windowId: 3, highlighted: true, active: true, pinned: false, status: "complete", discarded: false, incognito: true, width: 1464, 10 more… } Object { id: 355, index: 26, windowId: 3, highlighted: true, active: true, pinned: false, status: "complete", discarded: false, incognito: true, width: 1464, 9 more… }  common.js:21:60
11:13:31.123 tst<Sidebar-3>:    tabs.onUpdated  354 Object { favIconUrl: "chrome://branding/content/icon32.pn…" } Object { id: 354, index: 25, windowId: 3, highlighted: false, active: false, pinned: false, status: "complete", discarded: false, incognito: true, width: 1464, 10 more… } Object { id: 354, index: 25, windowId: 3, highlighted: true, active: false, pinned: false, status: "complete", discarded: false, incognito: true, width: 1464, 10 more… }  common.js:21:60
11:13:31.257 tst<Sidebar-3>:    updateCachedTabbar  Object { stack: "updateCachedTabbar@moz-extension://…" }  common.js:21:60

Clicking on the newly created tab doesn't work:

11:16:47.490 tst<Sidebar-3>:    onMouseDown: found target tab:  <li id="tab-3-355" data-tab-id="355" data-window-id="3" class="tab subtree-collapsed contextual-identity-firefox-private private-browsing animation-ready complete" draggable="true" data-persistent-id="tab-hoary-pangolin-1517714010685-104" data-current-uri="about:newtab" data-label="New Tab
#tab-3-355
(tab subtree-collapsed contextual-identity-firefox-private private-browsing animation-ready complete)
uniqueId = tab-hoary-pangolin-1517714010685-104
duplicated = false / null / null
restored = false
tabId = 355
windowId = 3" title="New Tab
#tab-3-355
(tab subtree-collapsed contextual-identity-firefox-private private-browsing animation-ready complete)
uniqueId = tab-hoary-pangolin-1517714010685-104
duplicated = false / null / null
restored = false
tabId = 355
windowId = 3" data-label-with-descendants="* New Tab
#tab-3-355
(tab subtree-collapsed opening contextual-identity-firefox-private private-browsing animation-ready active expanding complete bursting)
uniqueId = tab-hoary-pangolin-1517714010685-104
duplicated = false / null / null
restored = false
tabId = 355
windowId = 3">  common.js:21:60
11:16:47.492 tst<Sidebar-3>:    onMouseDown  Object { targetType: "tab", tab: "tab-3-355", closebox: false, button: 0, ctrlKey: false, shiftKey: false, altKey: false, metaKey: false, isMiddleClick: false, isAccelClick: false }  common.js:21:60
11:16:47.577 tst<Sidebar-3>:    onMouseUp  Object { targetType: "tab", tab: "tab-3-355", closebox: false, button: 0, ctrlKey: false, shiftKey: false, altKey: false, metaKey: false, isMiddleClick: false, isAccelClick: false }  common.js:21:60
11:16:47.578 tst<Sidebar-3>:    onClick [object HTMLSpanElement]  common.js:21:60
11:16:47.579 tst<Sidebar-3>:    clicked tab:  <li id="tab-3-355" data-tab-id="355" data-window-id="3" class="tab subtree-collapsed contextual-identity-firefox-private private-browsing animation-ready complete" draggable="true" data-persistent-id="tab-hoary-pangolin-1517714010685-104" data-current-uri="about:newtab" data-label="New Tab
#tab-3-355
(tab subtree-collapsed contextual-identity-firefox-private private-browsing animation-ready complete)
uniqueId = tab-hoary-pangolin-1517714010685-104
duplicated = false / null / null
restored = false
tabId = 355
windowId = 3" title="New Tab
#tab-3-355
(tab subtree-collapsed contextual-identity-firefox-private private-browsing animation-ready complete)
uniqueId = tab-hoary-pangolin-1517714010685-104
duplicated = false / null / null
restored = false
tabId = 355
windowId = 3" data-label-with-descendants="* New Tab
#tab-3-355
(tab subtree-collapsed opening contextual-identity-firefox-private private-browsing animation-ready active expanding complete bursting)
uniqueId = tab-hoary-pangolin-1517714010685-104
duplicated = false / null / null
restored = false
tabId = 355
windowId = 3">

Ctrl+PgDn to the new tab works:

11:21:27.841 tst<Sidebar-3>:    tabs.onActivated:  #tab-3-355  common.js:21:60
11:21:27.842 tst<Sidebar-3>:      scrollToTab to  #tab-3-355 <NULL> Object {  } Object { stack: "scrollToTab@moz-extension://a380ce4…" }  common.js:21:60
11:21:27.857 tst<Sidebar-3>:      calculateScrollDeltaForTab  #tab-3-355 Object { delta: 0, offset: 0, tabTop: 607.2000122070312, tabBottom: 633.6000213623047, containerBottom: 936 }  common.js:21:60
11:21:27.858 tst<Sidebar-3>:    => already visible  common.js:21:60

Wheel clicking to remove tab doesn't work either:

11:22:40.784 tst<Sidebar-3>:    onMouseDown: found target tab:  <li id="tab-3-355" data-tab-id="355" data-window-id="3" class="tab subtree-collapsed contextual-identity-firefox-private private-browsing animation-ready complete" draggable="true" data-persistent-id="tab-hoary-pangolin-1517714010685-104" data-current-uri="about:newtab" data-label="New Tab
#tab-3-355
(tab subtree-collapsed contextual-identity-firefox-private private-browsing animation-ready complete)
uniqueId = tab-hoary-pangolin-1517714010685-104
duplicated = false / null / null
restored = false
tabId = 355
windowId = 3" title="New Tab
#tab-3-355
(tab subtree-collapsed contextual-identity-firefox-private private-browsing animation-ready complete)
uniqueId = tab-hoary-pangolin-1517714010685-104
duplicated = false / null / null
restored = false
tabId = 355
windowId = 3" data-label-with-descendants="* New Tab
#tab-3-355
(tab subtree-collapsed opening contextual-identity-firefox-private private-browsing animation-ready active expanding complete bursting)
uniqueId = tab-hoary-pangolin-1517714010685-104
duplicated = false / null / null
restored = false
tabId = 355
windowId = 3">  common.js:21:60
11:22:40.786 tst<Sidebar-3>:    onMouseDown  Object { targetType: "tab", tab: "tab-3-355", closebox: false, button: 1, ctrlKey: false, shiftKey: false, altKey: false, metaKey: false, isMiddleClick: true, isAccelClick: true }  common.js:21:60
11:22:40.921 tst<Sidebar-3>:    onMouseUp  Object { targetType: "tab", tab: "tab-3-355", closebox: false, button: 1, ctrlKey: false, shiftKey: false, altKey: false, metaKey: false, isMiddleClick: true, isAccelClick: true }  common.js:21:60
11:22:40.922 tst<Sidebar-3>:    middle click on a tab  common.js:21:60
11:22:40.922 tst<Sidebar-3>:      removeTabsInternally:  Array [ "#tab-3-355" ]  common.js:21:60

Ctrl+w does work though:

11:24:31.245 tst<BG>:    tabs.onRemoved:  355 Object { windowId: 3, isWindowClosing: false }  common.js:21:60
11:24:31.247 tst<Sidebar-3>:    tabs.onRemoved:  355 Object { windowId: 3, isWindowClosing: false }  common.js:21:60
11:24:31.248 tst<Sidebar-3>:    tabs.onRemoved, tab is found:  #tab-3-355  common.js:21:60
11:24:31.248 tst<Sidebar-3>:      detachTab:  #tab-3-355 Object { dontUpdateIndent: true } Object { stack: "detachTab@moz-extension://a380ce4d-…" }  common.js:21:60
11:24:31.250 tst<Sidebar-3>:      parent is already removed, or orphan tab  common.js:21:60
11:24:31.261 tst<Sidebar-3>:    tabs.onActivated:  #tab-3-354  common.js:21:60
11:24:31.263 tst<Sidebar-3>:    focusRedirected:  undefined  common.js:21:60
11:24:31.264 tst<Sidebar-3>:      scrollToTab to  #tab-3-354 <NULL> Object {  } Object { stack: "scrollToTab@moz-extension://a380ce4…" }  common.js:21:60
11:24:31.281 tst<Sidebar-3>:      calculateScrollDeltaForTab  #tab-3-354 Object { delta: 0, offset: 0, tabTop: 580.7999877929688, tabBottom: 607.1999816894531, containerBottom: 936 }  common.js:21:60
11:24:31.283 tst<Sidebar-3>:    => already visible  common.js:21:60
11:24:31.284 tst<Sidebar-3>:     reserveToUpdateCachedTabbar  Object { stack: "reserveToUpdateCachedTabbar@moz-ext…" }  common.js:21:60
11:24:31.286 tst<Sidebar-3>:      clearWindowCache  Object { stack: "clearWindowCache@moz-extension://a3…" }  common.js:21:60
11:24:31.288 tst<Sidebar-3>:     reserveToUpdateCachedTabbar  Object { stack: "reserveToUpdateCachedTabbar@moz-ext…" }  common.js:21:60
11:24:31.289 tst<Sidebar-3>:      clearWindowCache  Object { stack: "clearWindowCache@moz-extension://a3…" }  common.js:21:60
11:24:31.504 tst<Sidebar-3>:     reserveToUpdateCachedTabbar  Object { stack: "reserveToUpdateCachedTabbar@moz-ext…" }  common.js:21:60
11:24:31.505 tst<Sidebar-3>:      clearWindowCache  Object { stack: "clearWindowCache@moz-extension://a3…" }  common.js:21:60
11:24:32.039 tst<Sidebar-3>:    updateCachedTabbar  Object { stack: "updateCachedTabbar@moz-extension://…" }  common.js:21:60

The information https://github.com/piroor/treestyletab/issues/1742#issuecomment-362006309 is very important. This means that the master process (background page) failed to track new tabs by some reasons. A <li> element for a new tab is generated at https://github.com/piroor/treestyletab/blob/73135f4644fb3930749ca07068ade9ebf6d62a7a/webextensions/common/tree/handlers.js#L226 but TST waits until all other new-tab requests are processed at https://github.com/piroor/treestyletab/blob/73135f4644fb3930749ca07068ade9ebf6d62a7a/webextensions/common/tree/handlers.js#L220 , so waitUntilAllTabsAreCreated() seems to be blocked unexpectedly on your environment. Hmm...

Logs at https://github.com/piroor/treestyletab/issues/1742#issuecomment-362877710 indicates same situation.

11:13:30.635 tst<BG>:    tabs.onCreated:  355  common.js:21:60
11:13:30.636 tst<Sidebar-3>:    tabs.onCreated:  355  common.js:21:60
11:13:30.637 tst<Sidebar-3>:    onNewTabTracked:  Object { id: 355, index: 26, windowId: 3, highlighted: true, active: true, pinned: false, status: "complete", discarded: false, incognito: true, width: 1464, 9 more… }  common.js:21:60

In this case a log line <BG>: onNewTabTracked should appear but it doesn't.

  log('tabs.onCreated: ', aTab.id);
  return onNewTabTracked(aTab);
}

async function onNewTabTracked(aTab) {
  if (gTargetWindow && aTab.windowId != gTargetWindow)
    return null;

  await waitUntilAllTabsAreCreated();
  log('onNewTabTracked: ', aTab);
  var container = getOrBuildTabsContainer(aTab.windowId);

The process is blocked at waitUntilAllTabsAreCreated() on this case also.

waitUntilAllTabsAreCreated() waits until all promices generated at https://github.com/piroor/treestyletab/blob/73135f4644fb3930749ca07068ade9ebf6d62a7a/webextensions/common/tree/base.js#L170 are resolved. However, if any error is thrown from its inside, the promise never been resolved. By the commit 4c513d8 now the promise is always resolved ignoring errors (and details of the error will appear in the console.) Could you try the development build?

Forgive my ignorance, but would that be located here? https://piro.sakura.ne.jp/xul/xpi/confirm.cgi?treestyletab-we.xpi

@TempSpas No, development build from latest codes are available at https://piro.sakura.ne.jp/xul/xpi/nightly/

FWIW I haven't seen the bug in a week, and haven't updated to git. I disabled the conex extension but kept using containers, although not as frequently.

Haven't seen any mentions of conex so let's do some improvised voting with github reactions:

:+1: this comment if you had this bug and use conex

:-1: this comment if you had this bug and don't use conex (or had it happen while not using it)

@dequis BTW I didn't know Conex https://addons.mozilla.org/en-US/firefox/addon/conex/ and I've realized that TST doesn't compatible it, so I've introduced some changes to improve compatibility with addons including tab-hiding feature. Now tabs hidden by other addons like Conex are hidden in the TST sidebar also.

I had a consistent way to reproduce the issue with regular Firefox and TST 2.4.8, but I can't reproduce the issue anymore with Firefox Developer Edition and the nightly build of TST (2.4.8.6516)

I've hit the issue again with TST nightly 2.4.8.6516 after dragging a parent tab with children to a separate Firefox window.

I'm not using Conex. My extensions: Ghostery, LastPass, No Coin, Reverse Image Search, Social Fixer for Facebook, Stylish, TabSubmit Basic, The Camelizer, and uBlock Origin

@leonsp Your case seems different from this. See also #1782.

Just checking in on this bug. I changed to FF Nightly to use commit 4c513d8 a couple of weeks ago. Haven't experienced it since.

I just hit this very annoying bug with version 2.4.18. Any news?
PS: thanks for this essential addon!

Same bug with 2.4.21, on Firefox 60.0 Linux (manjaro). Occasionally I cannot click the tabs. Especially when restoring a session after closing and reopening Firefox

@mhham Could you collect debug logs? See also the guidance.

@piroor Here is the debug log on a currently occurring issue. Some of the tabs are clickable (like the first one that I clicked) but some are not (like the the second tab, that i managed to drag, but not click).

Also it seems that clicking on an unclickable tab does not trigger anything in the debug log, while dragging it does.

tst<BG>:    kCOMMAND_NOTIFY_END_TAB_SWITCH  common.js:21:60
tst<BG>:     selectTabInternally:  #tab-3-6  common.js:21:60
tst<BG>:    tabs.onActivated:  #tab-3-6  common.js:21:60
tst<BG>:     onTabFocusing  tab-3-6 Object { byCurrentTabRemove: false, byTabDuplication: false, byInternalOperation: true, silently: false }  common.js:21:60
tst<Sidebar-3>:    tabs.onActivated:  #tab-3-6  common.js:21:60
tst<BG>:    kCOMMAND_NOTIFY_END_TAB_SWITCH  common.js:21:60
tst<Sidebar-3>:    set drop position to  tab-3-4:self  common.js:21:60
tst<Sidebar-3>:    there are dragged tabs  common.js:21:60
tst<Sidebar-3>:    onDragEnd, gDraggingOnSelfWindow =  false  common.js:21:60
tst<Sidebar-3>:    dragged items are processed by someone:  move  common.js:21:60
tst<BG>:    perform tabs dragdrop requested:  Object { windowId: 3, tabs: Array[1], action: 1024, attachTo: "tab-3-4", insertBefore: "tab-3-6", insertAfter: null, destinationWindowId: 3, duplicate: false, inRemote: false, type: "treestyletab:perform-tabs-drag-drop" }  common.js:21:60
tst<BG>:     performTabsDragDrop  Object { tabs: Array[1], windowId: 3, destinationWindowId: 3, action: 1024 }  common.js:21:60
tst<Sidebar-3>:    reservedProcessLongHover:  Object { dragOverTabId: "tab-3-4", draggedTabId: "tab-3-5", dropEffect: "move" }  common.js:21:60
tst<BG>:    kCOMMAND_NOTIFY_END_TAB_SWITCH  common.js:21:60
tst<BG>:    kCOMMAND_NOTIFY_END_TAB_SWITCH  common.js:21:60
tst<Sidebar-3>:    set drop position to  tab-3-6:self  common.js:21:60
tst<Sidebar-3>:    set drop position to  tab-3-6:after  common.js:21:60
tst<Sidebar-3>:    set drop position to  tab-3-7:before  common.js:21:60
tst<Sidebar-3>:    set drop position to  tab-3-6:after  common.js:21:60
tst<Sidebar-3>:    set drop position to  tab-3-6:self  common.js:21:60
tst<Sidebar-3>:    set drop position to  tab-3-6:before  common.js:21:60
tst<Sidebar-3>:    there are dragged tabs  common.js:21:60
tst<Sidebar-3>:    onDragEnd, gDraggingOnSelfWindow =  true  common.js:21:60
tst<Sidebar-3>:    dragged items are processed by someone:  move  common.js:21:60
tst<BG>:    perform tabs dragdrop requested:  Object { windowId: 3, tabs: Array[1], action: 2049, attachTo: null, insertBefore: "tab-3-6", insertAfter: "tab-3-4", destinationWindowId: 3, duplicate: false, inRemote: false, type: "treestyletab:perform-tabs-drag-drop" }  common.js:21:60
tst<BG>:     performTabsDragDrop  Object { tabs: Array[1], windowId: 3, destinationWindowId: 3, action: 2049 }  common.js:21:60
tst<BG>:     selectTabInternally:  #tab-3-7  common.js:21:60
tst<BG>:    tabs.onActivated:  #tab-3-7  common.js:21:60
tst<BG>:     onTabFocusing  tab-3-7 Object { byCurrentTabRemove: false, byTabDuplication: false, byInternalOperation: true, silently: false }  common.js:21:60
tst<Sidebar-3>:    tabs.onActivated:  #tab-3-7  common.js:21:60
tst<BG>:     selectTabInternally:  #tab-3-7  common.js:21:60
tst<BG>:    kCOMMAND_NOTIFY_END_TAB_SWITCH  common.js:21:60

Comes up every time when restoring session. Though, a little bit different.

New tabs sometimes don't appear as in this comment, but in my case only old tabs become unclickable, new work fine.

The bug persists through two last releases of firefox -- 59 and 60.

As written in the description, tabs become not-clickable, but with vimium i can jump to any tab (it allows one to jump any number of tabs to the left or right (up and down?)), which causes this tab reload __and__ the tab jumped to becomes clickable in some cases (though not always, couldn't figure out exactly when). "reload all tabs" doesn't bring them up.

(probably not related, but this happens with a flattening of tree structure)

platform: ubuntu 18.04
browser: 60.0.1
plugin: 2.4.21

@mhham Thank you for cooperation.

Also it seems that clicking on an unclickable tab does not trigger anything in the debug log, while dragging it does.

This means that id of the clicked tab in the sidebar is mismatched. Due to Firefox's bug a tab can have two different ids like 8 and 120 after it is moved between windows. TST contains a workaround to resolve this mismatching, but sometimes it fails, and some tabs can be left with such mismatched ids.

Because the bug says that it is fixed on Firefox 61 and ESR60, I hope that this problem disappear on such versions.

@liesnikov Your case seems different from the scenario of my previous comment. Firefox always reassign tab's internal id on every session restoration. On the other hand, TST tries to save built tree as a cache and reuse it on the next startup. As the result, id of tabs in the restored tree are mismatched and TST tries to reassign id of tabs in the tree based on actually restored tabs. On your environment, TST seemed to fail to complete the restoration process of the cached tree...

@piroor oh. Is this a new bug?
I'll try to reproduce it then and get a debug log

@liesnikov :

Is this a new bug?

Maybe yes. If you see this problem only on restored session, it should be filed as a separate issue.

I've the same (On 63). happens when firefox killed and restore session. any tips to rederive the IDs?
In this case the tabs aren't clickable, but + at bottom does work.

I close this because outdated.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Evotron picture Evotron  Â·  3Comments

thomasetter picture thomasetter  Â·  3Comments

ElhemEnohpi picture ElhemEnohpi  Â·  4Comments

nneonneo picture nneonneo  Â·  4Comments

mreppen picture mreppen  Â·  3Comments