Migrate to WebExtensions for Firefox 57 and later #1224

Open
theres-waldo opened this Issue Dec 7, 2016 · 93 comments

Comments

Projects
None yet
@theres-waldo

Mozilla recently announced that starting in Firefox 57, Firefox will no longer support addons that are not WebExtensions.

Is it possible to convert Tree Style Tab to be a WebExtension, so it can continue working in Firefox 57 and beyond?

@Keith94 Keith94 referenced this issue in cpriest/SnapLinksPlus Dec 7, 2016

Closed

Tree Style Tab support no longer working #123

@cpriest

This comment has been minimized.

Show comment
Hide comment
@cpriest

cpriest Dec 7, 2016

I've had a request for SnapLinks v3 (a web extension version) to re-add compatibility with TST. Do you expect the new cross-plugin API to be radically different than the exiting XUL based addon?

cpriest commented Dec 7, 2016

I've had a request for SnapLinks v3 (a web extension version) to re-add compatibility with TST. Do you expect the new cross-plugin API to be radically different than the exiting XUL based addon?

@CrashNBurn71

This comment has been minimized.

Show comment
Hide comment
@CrashNBurn71

CrashNBurn71 Dec 14, 2016

That's sad, only one of those bugs has even been actioned, and even the one that has - looks like its low priority, with no updates aside from discussion on the bug.

As for, 1280347 - wouldn't that be better accomplished if Mozilla:

  1. Allow Tabs on the Top|Bottom, and an alternate top-down listing so they can be displayed Left|Right.
  2. Allow to negate default styling on tabs.
  3. Allow any tab-related-addons to "listen" for changes: Tabs closing, opening, moving - so they can react.
  4. Allow for New-Tab to be modified by listening addons, so it can be inserted into the correct position.

As proposed 1280347 seems like it would be a significant undertaking on Mozilla's behalf compared to the 4 points above. Is there anything missing in the 4 points that you addressed in 1280347 that would still not be possible?

That's sad, only one of those bugs has even been actioned, and even the one that has - looks like its low priority, with no updates aside from discussion on the bug.

As for, 1280347 - wouldn't that be better accomplished if Mozilla:

  1. Allow Tabs on the Top|Bottom, and an alternate top-down listing so they can be displayed Left|Right.
  2. Allow to negate default styling on tabs.
  3. Allow any tab-related-addons to "listen" for changes: Tabs closing, opening, moving - so they can react.
  4. Allow for New-Tab to be modified by listening addons, so it can be inserted into the correct position.

As proposed 1280347 seems like it would be a significant undertaking on Mozilla's behalf compared to the 4 points above. Is there anything missing in the 4 points that you addressed in 1280347 that would still not be possible?

@CrashNBurn71

This comment has been minimized.

Show comment
Hide comment
@CrashNBurn71

CrashNBurn71 Feb 6, 2017

Does the feature in Nightly to put tabs in a category have anything to do with being able to store extra-data in the tab object/session ?

Does the feature in Nightly to put tabs in a category have anything to do with being able to store extra-data in the tab object/session ?

@Croydon Croydon referenced this issue in Croydon/vertical-tabs-reloaded Feb 15, 2017

Closed

[Meta] Refactor to WebExtension add-on #13

47 of 47 tasks complete
@nt1m

This comment has been minimized.

Show comment
Hide comment
@nt1m

nt1m Mar 8, 2017

@piroor You don't need bug 1280347 if bug 1332447 is fixed right ?

nt1m commented Mar 8, 2017

@piroor You don't need bug 1280347 if bug 1332447 is fixed right ?

@polyzen polyzen referenced this issue in traxium/tabtree Mar 8, 2017

Open

Convert to WebExtension? #187

@CrashNBurn71

This comment has been minimized.

Show comment
Hide comment
@CrashNBurn71

CrashNBurn71 Mar 9, 2017

Mozilla has also added "Test Pilot", along with "Tab Center"

https://testpilot.firefox.com/experiments/tab-center

This would seem to be heading towards where Tree Style Tab can move forward to Firefox 57 as a Web Extension if a way is provided to store "Tab Specific data" within the session files. No?

Mozilla has also added "Test Pilot", along with "Tab Center"

https://testpilot.firefox.com/experiments/tab-center

This would seem to be heading towards where Tree Style Tab can move forward to Firefox 57 as a Web Extension if a way is provided to store "Tab Specific data" within the session files. No?

@asamuzaK

This comment has been minimized.

Show comment
Hide comment
@mimoo

This comment has been minimized.

Show comment
Hide comment
@mimoo

mimoo May 26, 2017

How can we help?

mimoo commented May 26, 2017

How can we help?

@GuyXY

This comment has been minimized.

Show comment
Hide comment
@GuyXY

GuyXY May 26, 2017

@mimoo It is written, only Link can defeat Ganon!

GuyXY commented May 26, 2017

@mimoo It is written, only Link can defeat Ganon!

@nt1m

This comment has been minimized.

Show comment
Hide comment
@nt1m

nt1m May 26, 2017

For anyone who's looking for a WE replacement: https://addons.mozilla.org/en-US/firefox/addon/tree-tabs/

nt1m commented May 26, 2017

For anyone who's looking for a WE replacement: https://addons.mozilla.org/en-US/firefox/addon/tree-tabs/

@TheSweetLily

This comment has been minimized.

Show comment
Hide comment
@TheSweetLily

TheSweetLily May 27, 2017

Tried that one a while back, but it's not the same, and last I checked there are some things missing from it being proper replacement.

Tabs were still on top, so you'd have tabs on top and on the side last I tried, and with TST I have my pinned bookmarks on the bottom.
The first one was a WE limitation last I checked, though. The last one I am not sure of.

From developer comment on a review:
"Hiding tab bar is unavailable from Web extensions for now. Please join conversation at bugzilla to convince Web Extensions team to give us this possibility, here:
https://bugzilla.mozilla.org/show_bug.cgi?id=1332447"

Tried that one a while back, but it's not the same, and last I checked there are some things missing from it being proper replacement.

Tabs were still on top, so you'd have tabs on top and on the side last I tried, and with TST I have my pinned bookmarks on the bottom.
The first one was a WE limitation last I checked, though. The last one I am not sure of.

From developer comment on a review:
"Hiding tab bar is unavailable from Web extensions for now. Please join conversation at bugzilla to convince Web Extensions team to give us this possibility, here:
https://bugzilla.mozilla.org/show_bug.cgi?id=1332447"

@Keith94

This comment has been minimized.

Show comment
Hide comment
@Keith94

Keith94 May 27, 2017

Tabs were still on top, so you'd have tabs on top and on the side last I tried

You can add the following to userChrome.css to hide the top bar (tested in Fx 55).

#TabsToolbar {
    visibility: collapse;
}

Keith94 commented May 27, 2017

Tabs were still on top, so you'd have tabs on top and on the side last I tried

You can add the following to userChrome.css to hide the top bar (tested in Fx 55).

#TabsToolbar {
    visibility: collapse;
}
@nt1m

This comment has been minimized.

Show comment
Hide comment
@nt1m

nt1m May 27, 2017

@TheSweetLily The API has been approved, it just needs someone to work on the proposal.

nt1m commented May 27, 2017

@TheSweetLily The API has been approved, it just needs someone to work on the proposal.

@photonometric

This comment has been minimized.

Show comment
Hide comment
@photonometric

photonometric Jun 13, 2017

Sorry if this is a naive question, and we still have some time to go, but what else might be done to push this ahead? Relying on the main Mozilla devs to generously spend time fixing bugs that don't jetpack or make FF look more like chrome seems like wishful thinking to me.

I mean, how complex are the problems, and how many/which are likely to be fixed as part of the larger FF upgrade project? Can any of the knowledgeable folks here answer that in like, a sentence or two for those of us non-programmers anxiously tapping our toes?

If one of the bugs is looking unattended as the dreaded WE time approaches, what can we do? Are they (comparatively) simple enough that we could hire someone on fiverr to do some work? Or another programming equivalent of that kind of service?

Sorry to push things along here without really contributing, but TST has been the number one essential part of my FF/web browsing experience since its inception. Tree Tabs has been ported (or perhaps concurrently programmed) from Vivaldi, and has a lot of promise, but it would be a shame to abandon such a long-standing project as this.

Sorry if this is a naive question, and we still have some time to go, but what else might be done to push this ahead? Relying on the main Mozilla devs to generously spend time fixing bugs that don't jetpack or make FF look more like chrome seems like wishful thinking to me.

I mean, how complex are the problems, and how many/which are likely to be fixed as part of the larger FF upgrade project? Can any of the knowledgeable folks here answer that in like, a sentence or two for those of us non-programmers anxiously tapping our toes?

If one of the bugs is looking unattended as the dreaded WE time approaches, what can we do? Are they (comparatively) simple enough that we could hire someone on fiverr to do some work? Or another programming equivalent of that kind of service?

Sorry to push things along here without really contributing, but TST has been the number one essential part of my FF/web browsing experience since its inception. Tree Tabs has been ported (or perhaps concurrently programmed) from Vivaldi, and has a lot of promise, but it would be a shame to abandon such a long-standing project as this.

@yfdyh000

This comment has been minimized.

Show comment
Hide comment
@yfdyh000

yfdyh000 Jun 13, 2017

Contributor

@photonometric FYI: https://wiki.mozilla.org/WebExtensions#Additional_APIs & https://wiki.mozilla.org/WebExtensions/RoadMapFirefox57.

If some APIs can not come in Firefox 57, we can continue to develop in future versions, as well as got it and improve once it landed in Nightly. If some WebExtension APIs or requirements cannot be approved, we can try to find a better idea, or expect Mozilla to change their minds, or wait for a third party to make a patch / build for broader APIs.

Contributor

yfdyh000 commented Jun 13, 2017

@photonometric FYI: https://wiki.mozilla.org/WebExtensions#Additional_APIs & https://wiki.mozilla.org/WebExtensions/RoadMapFirefox57.

If some APIs can not come in Firefox 57, we can continue to develop in future versions, as well as got it and improve once it landed in Nightly. If some WebExtension APIs or requirements cannot be approved, we can try to find a better idea, or expect Mozilla to change their minds, or wait for a third party to make a patch / build for broader APIs.

@nt1m

This comment has been minimized.

Show comment
Hide comment
@nt1m

nt1m Jun 13, 2017

@photonometric All the remaining APIs have been approved, they just need to be implemented by someone. If you're an extension dev, you can help out by making a WebExtensions experiment.

The main blocker is the API to hide the native tabbar, which is likely going to be implemented soon as Tab Center needs it (there's already a pretty advanced replacement out there btw: https://github.com/eoger/tabcenter-redux).

nt1m commented Jun 13, 2017

@photonometric All the remaining APIs have been approved, they just need to be implemented by someone. If you're an extension dev, you can help out by making a WebExtensions experiment.

The main blocker is the API to hide the native tabbar, which is likely going to be implemented soon as Tab Center needs it (there's already a pretty advanced replacement out there btw: https://github.com/eoger/tabcenter-redux).

@photonometric

This comment has been minimized.

Show comment
Hide comment
@photonometric

photonometric Jun 13, 2017

@yfdyh000 (love your avatar!!!) Thanks for that, good to know there are more options than I thought for "worst case scenario," so to speak...I've been making comments to that effect in the Tree Tabs thread in the Vivaldi forum, since several people there were stating that TST was abandoned and I felt the need to stick up for him/it/us ;)

Perhaps there should be some more obvious "we're not dead yet" statements (or indeed any mention of the impending WE problem) on the 3 or 4 documentation areas for this plugin, so me linking repeatedly to this issue isn't the only indicator users of other browsers have that the project is still alive ^^;;; I mean, Tree Tab began development because the general browser community, developers included, thought WE was going to kill this plugin....that indicates some lack of communication as to intention.

@ntim: no, as I made clear, I'm no kind of dev. But I've spent hours over the lifetime of this project trying to help figure out bugs and keep it "in service." Needless to say I feel helpless not being able to do anything, which is why I asked about would could be done to "pay" someone to fix a bug (or implement the needed APIs, as you say). Hopefully it won't be necessary, or if not completed in time for WE deadline, will be fixed somehow soon after.

photonometric commented Jun 13, 2017

@yfdyh000 (love your avatar!!!) Thanks for that, good to know there are more options than I thought for "worst case scenario," so to speak...I've been making comments to that effect in the Tree Tabs thread in the Vivaldi forum, since several people there were stating that TST was abandoned and I felt the need to stick up for him/it/us ;)

Perhaps there should be some more obvious "we're not dead yet" statements (or indeed any mention of the impending WE problem) on the 3 or 4 documentation areas for this plugin, so me linking repeatedly to this issue isn't the only indicator users of other browsers have that the project is still alive ^^;;; I mean, Tree Tab began development because the general browser community, developers included, thought WE was going to kill this plugin....that indicates some lack of communication as to intention.

@ntim: no, as I made clear, I'm no kind of dev. But I've spent hours over the lifetime of this project trying to help figure out bugs and keep it "in service." Needless to say I feel helpless not being able to do anything, which is why I asked about would could be done to "pay" someone to fix a bug (or implement the needed APIs, as you say). Hopefully it won't be necessary, or if not completed in time for WE deadline, will be fixed somehow soon after.

@nt1m

This comment has been minimized.

Show comment
Hide comment
@nt1m

nt1m Jun 13, 2017

@photonometric I know you're not a dev, but I'm mentioning it in case someone comes across the comment and wishes to contribute. One way you can help is asking developers you may know if they can help.

nt1m commented Jun 13, 2017

@photonometric I know you're not a dev, but I'm mentioning it in case someone comes across the comment and wishes to contribute. One way you can help is asking developers you may know if they can help.

@ralesk

This comment has been minimized.

Show comment
Hide comment
@ralesk

ralesk Aug 4, 2017

Latest 57 nightly broke the TST sidebar, but native tab bar hiding seems to work, so I currently have no tabs whatsoever :) I really hope things work out best for TST in the end, it's my favourite addon ever in a browser (and it's such a shame no other browsers have anything similar)

ralesk commented Aug 4, 2017

Latest 57 nightly broke the TST sidebar, but native tab bar hiding seems to work, so I currently have no tabs whatsoever :) I really hope things work out best for TST in the end, it's my favourite addon ever in a browser (and it's such a shame no other browsers have anything similar)

@mimoo

This comment has been minimized.

Show comment
Hide comment
@mimoo

mimoo Aug 31, 2017

Is there a way to donate money to this project? It is an essential part of Firefox for me.

mimoo commented Aug 31, 2017

Is there a way to donate money to this project? It is an essential part of Firefox for me.

@Javaru

This comment has been minimized.

Show comment
Hide comment
@Javaru

Javaru Aug 31, 2017

@mimoo - Yes. You can either go to the version update notification page -- http://tabmixplus.org/version_update2.htm -- which has prominent donate buttons, or to the Tab Mix Plus homepage -- http://tabmixplus.org -- which has a donate button in the top center. I myself made a donation yesterday for the very same reason as you... it's too essential for me to lose it.

EDIT
sorry - As I noted below, I got my plugins intermixed as I'm watching both Tab Mix Plus and Tree Styel Tab's migration to Web Extensions. So this comment does not apply. Sorry about that :(

Javaru commented Aug 31, 2017

@mimoo - Yes. You can either go to the version update notification page -- http://tabmixplus.org/version_update2.htm -- which has prominent donate buttons, or to the Tab Mix Plus homepage -- http://tabmixplus.org -- which has a donate button in the top center. I myself made a donation yesterday for the very same reason as you... it's too essential for me to lose it.

EDIT
sorry - As I noted below, I got my plugins intermixed as I'm watching both Tab Mix Plus and Tree Styel Tab's migration to Web Extensions. So this comment does not apply. Sorry about that :(

@hhyyrylainen

This comment has been minimized.

Show comment
Hide comment
@hhyyrylainen

hhyyrylainen Aug 31, 2017

@Javaru but tab mix plus doesn't seem to support tree style tabs, which is the whole point of using this addon (at least not from anything I could find in their help docs)

@Javaru but tab mix plus doesn't seem to support tree style tabs, which is the whole point of using this addon (at least not from anything I could find in their help docs)

@jryans

This comment has been minimized.

Show comment
Hide comment
@jryans

jryans Aug 31, 2017

Contributor

Tab Mix Plus has nothing to do with this add-on as far as I know, so donating there won't help anything here.

@mimoo I agree, TST is also essential for me as well! Looking at #761 and the project README, the TST author is grateful for the idea, but doesn't want donations at this time.

Contributor

jryans commented Aug 31, 2017

Tab Mix Plus has nothing to do with this add-on as far as I know, so donating there won't help anything here.

@mimoo I agree, TST is also essential for me as well! Looking at #761 and the project README, the TST author is grateful for the idea, but doesn't want donations at this time.

@Javaru

This comment has been minimized.

Show comment
Hide comment
@Javaru

Javaru Aug 31, 2017

D'oh - Sooooo sorry - I'm watching both Tab Mix Plus and Tree Style Tab's migration to Web Extensions and misread which one this was when I saw mimoo's comment in my e-mail inbox (as Tab Mix was fresh in my mind from having just made a donation to its conversion effort). In my defense, I had not yet had my morning caffeine. Sorry for the confusion.

Javaru commented Aug 31, 2017

D'oh - Sooooo sorry - I'm watching both Tab Mix Plus and Tree Style Tab's migration to Web Extensions and misread which one this was when I saw mimoo's comment in my e-mail inbox (as Tab Mix was fresh in my mind from having just made a donation to its conversion effort). In my defense, I had not yet had my morning caffeine. Sorry for the confusion.

@piroor piroor added the WebExtensions label Sep 1, 2017

@piroor

This comment has been minimized.

Show comment
Hide comment
@piroor

piroor Sep 1, 2017

Owner

Issues I hope to fix before the initial release of the WebExtensions version:

certainly

  • #1324 Don't try to save session information for tabs/windows, after they are closed
  • #1325 Tooltip for twisty, closebox, and new tab button
  • #1327 Auto-scrolling of the tab bar while dragging on tabs
  • #1328 Show animation effect for tabs opened at outside of the viewport
  • #1329 Deactivate animations when configs.animation=false
  • #1332 Detect duplicated or restored tabs, and apply tree information fo them
  • #1336 Add more configuration UI
  • #1340 Migrate configurations from legacy addon
  • #1341 Toolbar button to show TST sidebar directly (is it possible?)
  • #1345 Restore tree structure correctly on startup, even if some tabs are lost

maybe

  • #1326 Photon-friendry icon
  • #1330 Apply better animation for newly opened tabs which are moved by TST
  • #1331 Calculate size of favicon and tab height correctly
  • #1335 Do something to support private browsing
  • #1337 Show confirmation dialog before open tabs/close tabs/restore tabs/dropped link/etc.
  • #1338 Provide API to insert something like thumbnails
  • #1339 Provide API to implement Multiple Tab Handler-like feature on Sidebar
  • #1342 Provide ability to switch appearance for leftside/rightside sidebar
  • #1343 Collapsed tree should have a tooltip including titles of invisible children as a tree
  • #1344 Provide version 0.99 for migration

impossible?

  • #1323 Suppress to render tree items for in-progress operations like "duplicate tree across windows"
  • #1333 Provide context menu on tabs and tree items
  • #1334 Support container tabs

intentionally dropped features

  • auto hide tab bar (clearly impossible on WebExtensions)
  • move tab bar position via drag and drop of the tab bar itself (clearly impossible on WebExtensions)
  • hide Firefox's tab bar itself (see 1332447 - WebExtension API to hide the tabstrip)
Owner

piroor commented Sep 1, 2017

Issues I hope to fix before the initial release of the WebExtensions version:

certainly

  • #1324 Don't try to save session information for tabs/windows, after they are closed
  • #1325 Tooltip for twisty, closebox, and new tab button
  • #1327 Auto-scrolling of the tab bar while dragging on tabs
  • #1328 Show animation effect for tabs opened at outside of the viewport
  • #1329 Deactivate animations when configs.animation=false
  • #1332 Detect duplicated or restored tabs, and apply tree information fo them
  • #1336 Add more configuration UI
  • #1340 Migrate configurations from legacy addon
  • #1341 Toolbar button to show TST sidebar directly (is it possible?)
  • #1345 Restore tree structure correctly on startup, even if some tabs are lost

maybe

  • #1326 Photon-friendry icon
  • #1330 Apply better animation for newly opened tabs which are moved by TST
  • #1331 Calculate size of favicon and tab height correctly
  • #1335 Do something to support private browsing
  • #1337 Show confirmation dialog before open tabs/close tabs/restore tabs/dropped link/etc.
  • #1338 Provide API to insert something like thumbnails
  • #1339 Provide API to implement Multiple Tab Handler-like feature on Sidebar
  • #1342 Provide ability to switch appearance for leftside/rightside sidebar
  • #1343 Collapsed tree should have a tooltip including titles of invisible children as a tree
  • #1344 Provide version 0.99 for migration

impossible?

  • #1323 Suppress to render tree items for in-progress operations like "duplicate tree across windows"
  • #1333 Provide context menu on tabs and tree items
  • #1334 Support container tabs

intentionally dropped features

  • auto hide tab bar (clearly impossible on WebExtensions)
  • move tab bar position via drag and drop of the tab bar itself (clearly impossible on WebExtensions)
  • hide Firefox's tab bar itself (see 1332447 - WebExtension API to hide the tabstrip)
@piroor

This comment has been minimized.

Show comment
Hide comment
@piroor

piroor Sep 1, 2017

Owner

TST WebExtensions will work only on Firefox 57 or later, because there are many required APIs initially implemented at Fx57 (browser.sessions.setTabValue(), browser.sessions.getTabValue(), browser.sessions.setWindowValue(), browser.sessions.getWindowValue(), browser.tabs.Tab.openerTabId). In other words, legacy version will live until Fx56. I have no plan to fix bugs on the combination TST legacy with Fx57.

Owner

piroor commented Sep 1, 2017

TST WebExtensions will work only on Firefox 57 or later, because there are many required APIs initially implemented at Fx57 (browser.sessions.setTabValue(), browser.sessions.getTabValue(), browser.sessions.setWindowValue(), browser.sessions.getWindowValue(), browser.tabs.Tab.openerTabId). In other words, legacy version will live until Fx56. I have no plan to fix bugs on the combination TST legacy with Fx57.

@ibrahima

This comment has been minimized.

Show comment
Hide comment
@ibrahima

ibrahima Sep 20, 2017

Btw, Firefox v57 just went into beta (Firefox Developer Edition just updated to it) so there might be an influx of users trying to switch to the WE version. Thanks for putting up a prebuilt nightly! The current version installs for me. I'm sad that there's no way to hide the tab bar yet... trying to figure out if I can live with this.

I really wish they had given more time for extension developers to update, seems kinda crappy to push us over the WebExtensions cliff without building the APIs needed to replicate the old functionality...

Btw, Firefox v57 just went into beta (Firefox Developer Edition just updated to it) so there might be an influx of users trying to switch to the WE version. Thanks for putting up a prebuilt nightly! The current version installs for me. I'm sad that there's no way to hide the tab bar yet... trying to figure out if I can live with this.

I really wish they had given more time for extension developers to update, seems kinda crappy to push us over the WebExtensions cliff without building the APIs needed to replicate the old functionality...

@theres-waldo

This comment has been minimized.

Show comment
Hide comment
@theres-waldo

theres-waldo Sep 20, 2017

I'm sad that there's no way to hide the tab bar yet... trying to figure out if I can live with this.

While I haven't tried it, I hear you can hide the tab bar using userChrome.css:

https://bugzilla.mozilla.org/show_bug.cgi?id=1332447#c42

I'm sad that there's no way to hide the tab bar yet... trying to figure out if I can live with this.

While I haven't tried it, I hear you can hide the tab bar using userChrome.css:

https://bugzilla.mozilla.org/show_bug.cgi?id=1332447#c42

@BrianGilbert

This comment has been minimized.

Show comment
Hide comment
@BrianGilbert

BrianGilbert Sep 20, 2017

you can definitely hide them via UserChrome.css, but you lose indicator that the tab is loading if you do this.. I was looking for an extension that would show progress on the address bar, and even tried porting Pace4Chrome, but no luck so far.

you can definitely hide them via UserChrome.css, but you lose indicator that the tab is loading if you do this.. I was looking for an extension that would show progress on the address bar, and even tried porting Pace4Chrome, but no luck so far.

@ibrahima

This comment has been minimized.

Show comment
Hide comment
@ibrahima

ibrahima Sep 20, 2017

Nice! I actually still see the loading indicator in the TST sidebar. Btw, as per one of the comments on Bugzilla the CSS comes from tabcenter-redux, and this comment seems to have the latest iteration: eoger/tabcenter-redux#15 (comment)

For easy reference:

#TabsToolbar {
  min-height: 31.5px (Windows) / 27px (macOs) / no rule on linux
}

#TabsToolbar > * {
   visibility: collapse;
}

Nice! I actually still see the loading indicator in the TST sidebar. Btw, as per one of the comments on Bugzilla the CSS comes from tabcenter-redux, and this comment seems to have the latest iteration: eoger/tabcenter-redux#15 (comment)

For easy reference:

#TabsToolbar {
  min-height: 31.5px (Windows) / 27px (macOs) / no rule on linux
}

#TabsToolbar > * {
   visibility: collapse;
}
@asamuzaK

This comment has been minimized.

Show comment
Hide comment
@asamuzaK

asamuzaK Sep 21, 2017

Contributor

If your on Windows,

#TabsToolbar {
  visibility: collapse;
}

and open Customize menu, check Titlebar will do.

toolbar

Contributor

asamuzaK commented Sep 21, 2017

If your on Windows,

#TabsToolbar {
  visibility: collapse;
}

and open Customize menu, check Titlebar will do.

toolbar

@joshuacant

This comment has been minimized.

Show comment
Hide comment
@joshuacant

joshuacant Sep 21, 2017

I'm so happy to see how well this is coming along. One thing I'm missing is being able to change tabs by scrolling over the tree. In current FF, I think this functionality is provided for me by Tab Mix Plus. Going forward, I think it would have to be implemented in this addon, though. Is that right?

I'm so happy to see how well this is coming along. One thing I'm missing is being able to change tabs by scrolling over the tree. In current FF, I think this functionality is provided for me by Tab Mix Plus. Going forward, I think it would have to be implemented in this addon, though. Is that right?

@ibrahima

This comment has been minimized.

Show comment
Hide comment
@ibrahima

ibrahima Sep 21, 2017

Probably... unfortunately, I don't know if TMP is working on a WebExtensions port, seemed inconclusive when I checked a few days ago. Must suck to build such a huge extension and then have to watch it die, as I'm guessing most of those features don't have API equivalents in WebExtensions. Luckily for me I didn't use most of TMP's functionality so I'm fine with TST alone, but this is a sad time for Firefox power users.

Probably... unfortunately, I don't know if TMP is working on a WebExtensions port, seemed inconclusive when I checked a few days ago. Must suck to build such a huge extension and then have to watch it die, as I'm guessing most of those features don't have API equivalents in WebExtensions. Luckily for me I didn't use most of TMP's functionality so I'm fine with TST alone, but this is a sad time for Firefox power users.

@janisozaur

This comment has been minimized.

Show comment
Hide comment
@janisozaur

janisozaur Sep 27, 2017

With Fx 57 now in beta, I was trying to install the listed addon from nightly, but it appears to be unsigned. https://support.mozilla.org/en-US/kb/add-on-signing-in-firefox only lists "Developer", "Nightly" and "45 ESR" as the ones who can opt-out of addon signing (not counting unbranded versions). Is there a signed version or another way how can I use it?

With Fx 57 now in beta, I was trying to install the listed addon from nightly, but it appears to be unsigned. https://support.mozilla.org/en-US/kb/add-on-signing-in-firefox only lists "Developer", "Nightly" and "45 ESR" as the ones who can opt-out of addon signing (not counting unbranded versions). Is there a signed version or another way how can I use it?

@diox

This comment has been minimized.

Show comment
Hide comment

diox commented Sep 27, 2017

@janisozaur the latest version (2.0) on AMO should be signed: https://addons.mozilla.org/en-US/firefox/addon/tree-style-tab/

@janisozaur

This comment has been minimized.

Show comment
Hide comment
@janisozaur

janisozaur Sep 27, 2017

Great, that works, thanks!

Great, that works, thanks!

@mimoo

This comment has been minimized.

Show comment
Hide comment
@mimoo

mimoo Sep 27, 2017

It works this is awesome!

mimoo commented Sep 27, 2017

It works this is awesome!

@RobT2012

This comment has been minimized.

Show comment
Hide comment
@RobT2012

RobT2012 Sep 28, 2017

Yeah it works, but FF will refuse to spawn multiple process because TST needs to be re-implemented as a web extension. That's a biggie, since one of the main points of the new FF is to spawn multiple processes just like Chrome does. I think you still get muti-core support, but note that FF defaults to only 4 cores, so if you have AMD Ryzen or TR you need to about:config it to use all the cores/threads.

Yeah it works, but FF will refuse to spawn multiple process because TST needs to be re-implemented as a web extension. That's a biggie, since one of the main points of the new FF is to spawn multiple processes just like Chrome does. I think you still get muti-core support, but note that FF defaults to only 4 cores, so if you have AMD Ryzen or TR you need to about:config it to use all the cores/threads.

@RobT2012

This comment has been minimized.

Show comment
Hide comment
@RobT2012

RobT2012 Sep 28, 2017

Well when I remove all the add-on's, I still don't see multiple FF processes, so whatever is going wrong has nothing to do with TST.

Well when I remove all the add-on's, I still don't see multiple FF processes, so whatever is going wrong has nothing to do with TST.

@ralesk

This comment has been minimized.

Show comment
Hide comment
@ralesk

ralesk Sep 28, 2017

@RobT2012 TST 2.0 which is compatible with FF57+ is a WebExtension.

ralesk commented Sep 28, 2017

@RobT2012 TST 2.0 which is compatible with FF57+ is a WebExtension.

@mimoo

This comment has been minimized.

Show comment
Hide comment
@mimoo

mimoo Sep 28, 2017

broke again :(

mimoo commented Sep 28, 2017

broke again :(

@RobT2012

This comment has been minimized.

Show comment
Hide comment
@RobT2012

RobT2012 Sep 28, 2017

@ralesk

Yes, I figured that out after posting. I removed all add-ons, so whatever is preventing multiple processes from spawning has nothing to do with TST. I'm using nightly build 58 so it could be anything at this point, or perhaps the terminology used to describe a FF "process" is not a normal Linux process as I expected. So far, everything is working, I just don't see more than one FF process running and I don't have any idea even if more than one core is being used.

FF is reporting this:

about:support
Multiprocess Windows 2/2 (Enabled by default)
Web Content Processes 8/8

So who knows. I cannot decipher what those metrics are for as of yet, looking for some documentation describing what those values mean. Anyway, the issues I'm having have nothing do to do with TST so I'll take it up elsewhere. TST is working just fine for me!

@ralesk

Yes, I figured that out after posting. I removed all add-ons, so whatever is preventing multiple processes from spawning has nothing to do with TST. I'm using nightly build 58 so it could be anything at this point, or perhaps the terminology used to describe a FF "process" is not a normal Linux process as I expected. So far, everything is working, I just don't see more than one FF process running and I don't have any idea even if more than one core is being used.

FF is reporting this:

about:support
Multiprocess Windows 2/2 (Enabled by default)
Web Content Processes 8/8

So who knows. I cannot decipher what those metrics are for as of yet, looking for some documentation describing what those values mean. Anyway, the issues I'm having have nothing do to do with TST so I'll take it up elsewhere. TST is working just fine for me!

@nnethercote

This comment has been minimized.

Show comment
Hide comment
@nnethercote

nnethercote Sep 28, 2017

@RobT2012: the about:support suggests that multi-process is working for you. But note that FF content processes are not called "firefox", they are (non-obviously) called "plugin-container".

@RobT2012: the about:support suggests that multi-process is working for you. But note that FF content processes are not called "firefox", they are (non-obviously) called "plugin-container".

@simu

This comment has been minimized.

Show comment
Hide comment
@simu

simu Sep 29, 2017

@RobT2012 @nnethercote For me the content processes are actually called "Web Content" on Linux with Firefox 57b3.

TST 2.0 works fine for me, good work @piroor.

I'm currently using the following userChrome.css:

#TabsToolbar {
  visibility:collapse;
}
#sidebar-header {
  display:none;
}

so TST on the left looks almost like it used to. Additionally, I've found that setting

.tab {
  padding: 1px;
}

In TST's "Extra style rules for sidebar contents" gives the tabs a look that I prefer over the default amount of whitespace in each tab. Note that due to how the sidebar layout is computed you may have to restart Firefox after adding the rule, one symptom is that collapsed tab trees may look super sketchy with the padding set to 1px before restarting the browser.

simu commented Sep 29, 2017

@RobT2012 @nnethercote For me the content processes are actually called "Web Content" on Linux with Firefox 57b3.

TST 2.0 works fine for me, good work @piroor.

I'm currently using the following userChrome.css:

#TabsToolbar {
  visibility:collapse;
}
#sidebar-header {
  display:none;
}

so TST on the left looks almost like it used to. Additionally, I've found that setting

.tab {
  padding: 1px;
}

In TST's "Extra style rules for sidebar contents" gives the tabs a look that I prefer over the default amount of whitespace in each tab. Note that due to how the sidebar layout is computed you may have to restart Firefox after adding the rule, one symptom is that collapsed tab trees may look super sketchy with the padding set to 1px before restarting the browser.

@RobT2012

This comment has been minimized.

Show comment
Hide comment
@RobT2012

RobT2012 Sep 29, 2017

@simu

I was not seeing "web content" processes either. Today I updated to the latest nightly and now I see 4 "web content" processes, so everything finally looks right.

I hanged on to old FF for as long as I could only because of TST but eventually I gave up and switched to Chrome as my default browser. I still kept using FF for certain things because of TST but not very often. I'm now happy enough to make FF my default browser again. I hope Mozilla can recover, they lost a lot of users.

I really like the idea of tab groups and so on, but it's just not enough, and I cannot understand why all the major browser devs refuse to consider implementing native tree tabs, it's a basic need for anyone who does a lot of browsing.

@simu

I was not seeing "web content" processes either. Today I updated to the latest nightly and now I see 4 "web content" processes, so everything finally looks right.

I hanged on to old FF for as long as I could only because of TST but eventually I gave up and switched to Chrome as my default browser. I still kept using FF for certain things because of TST but not very often. I'm now happy enough to make FF my default browser again. I hope Mozilla can recover, they lost a lot of users.

I really like the idea of tab groups and so on, but it's just not enough, and I cannot understand why all the major browser devs refuse to consider implementing native tree tabs, it's a basic need for anyone who does a lot of browsing.

@joshuacant

This comment has been minimized.

Show comment
Hide comment
@joshuacant

joshuacant Oct 3, 2017

Hey @piroor is mouse wheel scrolling to change tabs on your roadmap at all? This is such an important feature for me I'd probably attempt to learn programming webextensions if it's not something you'd add in. I know it's a trivial/unnecessary feature for most people, but it's one of those workflow must-haves for me. Thanks again for all your work in rebuilding, I can't overstate how impressed and happy I am.

Hey @piroor is mouse wheel scrolling to change tabs on your roadmap at all? This is such an important feature for me I'd probably attempt to learn programming webextensions if it's not something you'd add in. I know it's a trivial/unnecessary feature for most people, but it's one of those workflow must-haves for me. Thanks again for all your work in rebuilding, I can't overstate how impressed and happy I am.

@SXZ1

This comment has been minimized.

Show comment
Hide comment
@SXZ1

SXZ1 Oct 3, 2017

@xamphear Mouse wheel scrolling is currently used to scroll the contents of the sidebar when the sidebar can't fit all opened tabs. I guess possible solution is to change tabs when mouse is hovered over the tabs and scroll the contents of the sidebar when the mouse is hovered over the scroll bar (the one in the sidebar).

SXZ1 commented Oct 3, 2017

@xamphear Mouse wheel scrolling is currently used to scroll the contents of the sidebar when the sidebar can't fit all opened tabs. I guess possible solution is to change tabs when mouse is hovered over the tabs and scroll the contents of the sidebar when the mouse is hovered over the scroll bar (the one in the sidebar).

@joshuacant

This comment has been minimized.

Show comment
Hide comment
@joshuacant

joshuacant Oct 3, 2017

@SXZ1 The way it works in legacy Firefox w/ TST and TMP is that once you have enough tabs to need scrolling, a thin scroll bar appears which you can use to scroll up and down.

@SXZ1 The way it works in legacy Firefox w/ TST and TMP is that once you have enough tabs to need scrolling, a thin scroll bar appears which you can use to scroll up and down.

@piroor

This comment has been minimized.

Show comment
Hide comment
@piroor

piroor Oct 3, 2017

Owner

@xamphear It is discussed at #1399.

Owner

piroor commented Oct 3, 2017

@xamphear It is discussed at #1399.

@maximilianoe

This comment has been minimized.

Show comment
Hide comment
@maximilianoe

maximilianoe Oct 8, 2017

Everytime I open a new private window the sidebar is hidden. Not sure if this is a Webextension issue, is there a way to show the TreeStyle sidebar in private windows by default so I don't need to press Ctrl + H and then manually choose TreeStyle?

Everytime I open a new private window the sidebar is hidden. Not sure if this is a Webextension issue, is there a way to show the TreeStyle sidebar in private windows by default so I don't need to press Ctrl + H and then manually choose TreeStyle?

@mimoo

This comment has been minimized.

Show comment
Hide comment
@mimoo

mimoo Oct 8, 2017

Firefox is really slow currently, I only have Tree Style Tabs enabled, it looks like it doesn't like it.

mimoo commented Oct 8, 2017

Firefox is really slow currently, I only have Tree Style Tabs enabled, it looks like it doesn't like it.

@SkySkimmer

This comment has been minimized.

Show comment
Hide comment
@SkySkimmer

SkySkimmer Oct 11, 2017

Well I've migrated.
Most annoying is the crazy scrolling at new tab because of https://bugzilla.mozilla.org/show_bug.cgi?id=1387372
#1384 is also a problem.
In general opening and closing tabs is slower when the window has a lot of tabs.
When closing a tab at the end of a tree, the focus moves to the next tab then jumps back to the previous tab.

I don't really care about this but I was surprised by it: when moving to next tab with Ctrl+Tab, it used to skip over collapsed trees but now it goes inside them. I guess if I didn't userchrome the native tab bar away it would look sensible there.

Good luck with future bugs.

Well I've migrated.
Most annoying is the crazy scrolling at new tab because of https://bugzilla.mozilla.org/show_bug.cgi?id=1387372
#1384 is also a problem.
In general opening and closing tabs is slower when the window has a lot of tabs.
When closing a tab at the end of a tree, the focus moves to the next tab then jumps back to the previous tab.

I don't really care about this but I was surprised by it: when moving to next tab with Ctrl+Tab, it used to skip over collapsed trees but now it goes inside them. I guess if I didn't userchrome the native tab bar away it would look sensible there.

Good luck with future bugs.

@JakubJagoda

This comment has been minimized.

Show comment
Hide comment
@JakubJagoda

JakubJagoda Oct 17, 2017

Hi, the extension works well, but I have one problem - after closing Firefox, opening it again and choosing History -> Restore Previous Session the tree structure seems to be forgotten and tabs are flattened and mixed. Is it only me? Firefox 57.0b9, Win 10, TST in version 2.0.5 from 13.10.2017.

Hi, the extension works well, but I have one problem - after closing Firefox, opening it again and choosing History -> Restore Previous Session the tree structure seems to be forgotten and tabs are flattened and mixed. Is it only me? Firefox 57.0b9, Win 10, TST in version 2.0.5 from 13.10.2017.

@SXZ1

This comment has been minimized.

Show comment
Hide comment
@SXZ1

SXZ1 Oct 17, 2017

@JakubJagoda this bug is discussed here: #1476

SXZ1 commented Oct 17, 2017

@JakubJagoda this bug is discussed here: #1476

@JakubJagoda

This comment has been minimized.

Show comment
Hide comment
@JakubJagoda

JakubJagoda Oct 17, 2017

@SXZ1 3 hours before my post, that explains why I couldn't find it in the afternoon :) thanks

@SXZ1 3 hours before my post, that explains why I couldn't find it in the afternoon :) thanks

@dionorgua

This comment has been minimized.

Show comment
Hide comment
@dionorgua

dionorgua Nov 9, 2017

Any change to change font size of 'Tree Style Tab' title (where it's possible to switch bar to 'Bookmarks' / 'History' )?

Any change to change font size of 'Tree Style Tab' title (where it's possible to switch bar to 'Bookmarks' / 'History' )?

@Keith94

This comment has been minimized.

Show comment
Hide comment
@Keith94

Keith94 Nov 9, 2017

@dionorgua Use userChrome.css and this code:

#sidebar-switcher-target {
  font-size: 75%;
}

Keith94 commented Nov 9, 2017

@dionorgua Use userChrome.css and this code:

#sidebar-switcher-target {
  font-size: 75%;
}
@SXZ1

This comment has been minimized.

Show comment
Hide comment
@SXZ1

SXZ1 Nov 9, 2017

@piroor I've found STR for a couple of performance regressions but STR implies opening 190 blank tabs, that is possible to do in a couple of ways:

  1. Hold Ctrl-T for 5 seconds. However, you won't be able to relaunch the browser because TST can't restore 190 blank correctly (order of tabs gets messed up)
  2. I will upload saved session (sessionstore.jsonlz4) with 190 tabs to guthub, you'll have to copy it to the new profile and restore session. I'll use github.com tabs instead of blank new tabs so you'll be able to restore this session without problems. The most convenient way, IMO
  3. Open 190 github.com tabs yourself. Will take a loooong time.

Which way is more convenient for you? I guess I'll also record the video.

SXZ1 commented Nov 9, 2017

@piroor I've found STR for a couple of performance regressions but STR implies opening 190 blank tabs, that is possible to do in a couple of ways:

  1. Hold Ctrl-T for 5 seconds. However, you won't be able to relaunch the browser because TST can't restore 190 blank correctly (order of tabs gets messed up)
  2. I will upload saved session (sessionstore.jsonlz4) with 190 tabs to guthub, you'll have to copy it to the new profile and restore session. I'll use github.com tabs instead of blank new tabs so you'll be able to restore this session without problems. The most convenient way, IMO
  3. Open 190 github.com tabs yourself. Will take a loooong time.

Which way is more convenient for you? I guess I'll also record the video.

@Confucij

This comment has been minimized.

Show comment
Hide comment
@Confucij

Confucij Nov 17, 2017

As autohide feature was mentioned here before I thought this would be a good place to pin my code snippet for autohide. It is derivate from one found on GitHub

/*
 * Description: Auto-hide sidebar.
 * Contributor(s): img2tab
 */

#sidebar-box {
	position: fixed;
	top: 44px;
	bottom: 0;
	right: -254px;
	width: 255px;
    transition: 0.2s right;
}

#sidebar {
	min-width: 14em;
	width: 18em;
	max-width: 36em;
	height: 100%;
}
#sidebar-box:hover {
    right: 0 !important;

}
/* #sidebar-header is hidden by default, change "none" to "inherit" to restore it. */

#sidebar-header {
    display: none !important;
}
/* #sidebar-splitter styles the divider between the sidebar and the rest of the browser. */
#TabsToolbar {
    visibility: collapse;
}

As autohide feature was mentioned here before I thought this would be a good place to pin my code snippet for autohide. It is derivate from one found on GitHub

/*
 * Description: Auto-hide sidebar.
 * Contributor(s): img2tab
 */

#sidebar-box {
	position: fixed;
	top: 44px;
	bottom: 0;
	right: -254px;
	width: 255px;
    transition: 0.2s right;
}

#sidebar {
	min-width: 14em;
	width: 18em;
	max-width: 36em;
	height: 100%;
}
#sidebar-box:hover {
    right: 0 !important;

}
/* #sidebar-header is hidden by default, change "none" to "inherit" to restore it. */

#sidebar-header {
    display: none !important;
}
/* #sidebar-splitter styles the divider between the sidebar and the rest of the browser. */
#TabsToolbar {
    visibility: collapse;
}
@mimoo

This comment has been minimized.

Show comment
Hide comment
@mimoo

mimoo Nov 17, 2017

for others like me suffering from heavy lags on macOS. Removing the tab bar on top (via the css trick) seemed to have fixed the issue somehow

mimoo commented Nov 17, 2017

for others like me suffering from heavy lags on macOS. Removing the tab bar on top (via the css trick) seemed to have fixed the issue somehow

@polkovnikov-ph

This comment has been minimized.

Show comment
Hide comment
@polkovnikov-ph

polkovnikov-ph Nov 18, 2017

Can we at least have a version of TST for Firefox ESR in the official extension store? Firefox 57 is buggy beyond the limits, TST is barely working, and I cannot even install it with an old version of Firefox.

Can we at least have a version of TST for Firefox ESR in the official extension store? Firefox 57 is buggy beyond the limits, TST is barely working, and I cannot even install it with an old version of Firefox.

@piroor

This comment has been minimized.

Show comment
Hide comment
@piroor

piroor Nov 18, 2017

Owner

@polkovnikov-ph it seems still downloadable from: https://addons.mozilla.org/en-US/firefox/addon/tree-style-tab/versions/ (you'll need to download the file and drag-and-drop to Firefox's window manually.)

Owner

piroor commented Nov 18, 2017

@polkovnikov-ph it seems still downloadable from: https://addons.mozilla.org/en-US/firefox/addon/tree-style-tab/versions/ (you'll need to download the file and drag-and-drop to Firefox's window manually.)

@diox

This comment has been minimized.

Show comment
Hide comment
@diox

diox Nov 18, 2017

Firefox 57 is super fast and reliable for a huge number of people, including with Tree Style Tab, so I would encourage you to persevere (maybe reset your profile?) and file bugs if you find any.

Nevertheless, if you want to keep using older versions of Firefox, you can install any old version of any extension on AMO using the versions list page. For Tree Style Tab see https://addons.mozilla.org/en-US/firefox/addon/tree-style-tab/versions/ (0.19.2017090601 should work with Firefox 52.0 to 56.*).

diox commented Nov 18, 2017

Firefox 57 is super fast and reliable for a huge number of people, including with Tree Style Tab, so I would encourage you to persevere (maybe reset your profile?) and file bugs if you find any.

Nevertheless, if you want to keep using older versions of Firefox, you can install any old version of any extension on AMO using the versions list page. For Tree Style Tab see https://addons.mozilla.org/en-US/firefox/addon/tree-style-tab/versions/ (0.19.2017090601 should work with Firefox 52.0 to 56.*).

@polkovnikov-ph

This comment has been minimized.

Show comment
Hide comment
@polkovnikov-ph

polkovnikov-ph Nov 18, 2017

@piroor Thanks! That link is quite hard to find on add-on page, and it's a shame Mozilla doesn't let us download the latest compatible version with "add to firefox" button. As I'm using ESR, I was happy to download older version from https://github.com/piroor/treestyletab/releases/.

@diox Yes, I was very happy with Mozilla's efforts on improving Firefox performance lately, but they've made a release before all the major issues were solved. Having tight deadlines is not a good thing when you're making a major codebase rewrite.

For anyone who wants to persevere and still use Firefox 57: there is a workaround to hide annoying horizontal tabs.

polkovnikov-ph commented Nov 18, 2017

@piroor Thanks! That link is quite hard to find on add-on page, and it's a shame Mozilla doesn't let us download the latest compatible version with "add to firefox" button. As I'm using ESR, I was happy to download older version from https://github.com/piroor/treestyletab/releases/.

@diox Yes, I was very happy with Mozilla's efforts on improving Firefox performance lately, but they've made a release before all the major issues were solved. Having tight deadlines is not a good thing when you're making a major codebase rewrite.

For anyone who wants to persevere and still use Firefox 57: there is a workaround to hide annoying horizontal tabs.

@grahamperrin

This comment has been minimized.

Show comment
Hide comment
@grahamperrin

grahamperrin Feb 10, 2018

… Mozilla doesn't let us download the latest compatible version with "add to firefox" button …

To anyone with Firefox 58.x on a Tier-1 platform: is that still an issue?

… Mozilla doesn't let us download the latest compatible version with "add to firefox" button …

To anyone with Firefox 58.x on a Tier-1 platform: is that still an issue?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment