Tree Tabs
-
@GHM113
He does nothing with Ctrl+tab.
All he does is move tabs along with his sidepanel's tabs when you drag them around. They move in syncro. In this way using Ctrl+Tab, tabs are switched in the same order that is present on top's tab bar and his panel. Sure, I can move tabs at the top as he does here, as I do in my original "Vertical tabs" extension for Opera where ctrl+tab works just like it should.... But how am I supposed to arrange them with trees?Let me explain the problem with a little example:
This could be a tree structure inside of the sidepanel:
a[ b[ c[1,2,3], 4,5,6,7 ], d[8,9] ], 10
Lets say letters are collapsed (closed) parent tabs and numbers are children tabs inside of trees.And lets say I sorted them in the same way on top:
a,b,c,1,2,3,4,5,6,7,d,8,9,10Let me confuse you a little more, but bare with me
Now supposedly your active tab is a, when you press Ctrl+Tab, what would happen? You would end up in b instead of 10. Same goes on, if your active tab is b, you will end up in c, instead of d. This order would work only inside of a tree without any parents. If your active tab would be 1,2,4,5,6 or 8, Ctrl+tab would switch to the next correct tab which is on the same level.So as you can see, could it help? Sure, but only partially. When inside of a tree? Absolutely. But with any collapsed tree in between, nope, you would jump straight inside another tree.
As things stand now, WebExtensions, can add own shortcuts, but can't replace original ones. Ctrl+Tab and Ctrl+Shift+Tab are Vivaldi/Opera/Firefox standard shortcuts, that cannot be replaced with Web extensions API. Probably for security reasons. I tried it already. Vivaldi at least lets you change shortcuts, so when Ctrl+Tab is freed I can "re assign" it with my own implementation of tabs switching. But to add even more salt to injury, Firefox don't have shortcut options... And before you mention TST, it has its own Ctrl+tab, since it uses old more flexible API, which is being ditched as we speak, which makes me angry as I was long time user before switching to Opera. Depressing isn't it?
So in essence I can add a new shortcut, to switch tabs, but not Ctrl+tab. If you are okay with another combination I'm all ears
-
There is a bug on bugzilla about better keyboard shortcut support for WebExtensions, I left a comment there and tried to describe this problem
For now as things work this way and we don't have permissions to replace original keys. And as I explained before, sorting tabs in tabstrip will not help much as browser will switch tabs in order at the top instead of the trees depth and order...
In next release which is almost ready to be published I made Alt+1 and Alt+2 shortcuts for next and previous tabs. Hope that it will be comfortable enough and will help. In Opera and Vivaldi you can change that manually afterwards to Ctrl+Tab/Ctrl+Shift+Tab in options under keyboard shortcuts, when you scroll down to Tree Tabs keys, although I don't recommend it.
-
@GHM113 Nice
-
Thought I'd share a theme here. Tried to appropriate it for Vivaldi's subtle/light themes (and my own highlight color).
-
Cool, I'm testing and it works nicely
It only miss an "audio icon" (probably not implemented yet).
On latest stable, I see a glitch in the panel (due dark theme?)
Other web panels are fine. -
@Hadden89 Ok, should be fixed now.
-
@Hadden89 Ok, should be fixed now.
Thanks.
Nice update, the glitch is gone and the audio icon is present.
About that, consider making it clickable (mute/unmute status) and allow to move on the right - so it doesn't overlap tab favicon on left - and add an option to always hide "close button" as I use only middle click for that. Great work. -
@Hadden89 Ok, should be fixed now.
Thanks.
Nice update, the glitch is gone and the audio icon is present.
About that, consider making it clickable (mute/unmute status) and allow to move on the right - so it doesn't overlap tab favicon on left - and add an option to always hide "close button" as I use only middle click for that. Great work.@Hadden89 Audio icons were always there. It's Vivaldi's internal bug that it does not refresh correctly. I just made my own checker for media icons for Vivaldi. I will upload version 0.0.12 in few hours so wait for that. And by the way, media icons are clickable, it just does not give the visual input that you can click on them!
As for options, if time allows me, I will implement that. I will have to ask folks to translate options page for me as well. Hopefully they won't get mad -
Sorry for delay. Update 0.0.12 is now up. Media icons should now refresh.
-
@luetage Cool Can I add that to my google drive? I will name theme correctly by your nickname if you want.
-
@kroppy Sure, upload it. And no, call it whatever you want, my name serves no purpose under these circumstances.
-
@kroppy Sure, upload it. And no, call it whatever you want, my name serves no purpose under these circumstances.
Why not? Anyone deserves some credit for their work. That`s what I think.
Anyway I will reset the toolbar for it, so anyone will be able to start from default and put their own. -
I just noticed you have the names of the others in the download section too. Well, I don't mind either way, do as you please. I just fixed one more thing that bugged me in the theme, so I updated it just now.
-
@luetage Ok. Same link?
-
Yep, same link.
-
@jimbo1qaz Yes. I don't sycro them, I save my own tabs order and since tabs are ordered in trees, there is no direct correlation with flat array of tabs on top. The other reason is to avoid compatibility issues with other extensions, like "New tabs at end", "Sort tabs", "Tabs open relative" and similar. All mentioned would mess up your trees. Slowly I will be implementing sorting, closing trees, maybe some saving trees for later and so on. And who knows... groups. All depends how much time I will have this summer.
-
Finally a useful tree tabs extension, and I can even style it black/orange like my Vivaldi
For now, I have just one inconvenience to report: The buttons to open/collapse a group are pretty small and thus difficult to click on. I made my own custom CSS file to make them larger (from 6x6px to 10x10px), which makes them much easier to click on. Instead of increasing the actual size of the buttons, one could also only increase the size of the clickable area, which could also be made to fill the whole available space around the button.
Also, for some reason tabs' titles are not vertically centered for me (using the largest tab size available in the options) and changing a tab's vertical-align doesn't seem to help (maybe because the tab title is higher than the tab itself). Adding a margin-top of -1.5px helped center the titles for me, but is a very hacky solution.
I also have suggestions for two new options that I would like to see (and already hacked together for myself) which might or might not be useful for others: a different hover color for the toolbar icons (e.g. using
.button:hover:not(.on) .button_img {background-color: var(--button_hover_icons, #808080);}
), and an option to disable close buttons altogether (I always close my tabs with the middle mouse button or ctrl+W, making the close button redundant and potentially harmful when misclicking).
PS: here's a screenshot of how it looks with my settings & changes (the pin button is hovered and thus orange):
-
For now, I have just one inconvenience to report: The buttons to open/collapse a group are pretty small and thus difficult to click on. I made my own custom CSS file to make them larger (from 6x6px to 10x10px), which makes them much easier to click on. Instead of increasing the actual size of the buttons, one could also only increase the size of the clickable area, which could also be made to fill the whole available space around the button.
Yeah, you are right, I should scale them with tabs size, but some may not like them bigger.
There is a lot more to just expand_box_size, try modifying defaults.js, you will find in TabsSizeSets below //4, to expand_box_size, you should consider 1px of border for each side, so in reality it's 7x7 px."expand_box_size": "5px", "expand_box_top": "8px", "expand_box_left": "3px", "expand_line_h_top": "11px", "expand_line_h_width": "12px", "expand_line_h_oc_width": "3px", "expand_line_v_top": "-11px", "expand_line_v_left": "0px", "expand_line_v_last_height": "23px"
expand_line_v, stands for vertical lines, expand_line_h stands for horizontal, lines have positions width and height.
Hard to explain at spot what is what so you just have to play with it...It's not on top of my priority list, but I might do an option to that.
Also, for some reason tabs' titles are not vertically centered for me (using the largest tab size available in the options) and changing a tab's vertical-align doesn't seem to help (maybe because the tab title is higher than the tab itself). Adding a margin-top of -1.5px helped center the titles for me, but is a very hacky solution.
Like before, try modifying defaults.js, you will find in TabsSizeSets in set //4
"tab_height_line": "27px",
to
"tab_height_line": "26px",
I will fix that as soon as possible.
To see changes after saving defaults.js file, reload options page, set tabs size to be smaller and back to bigger, this way theme will re-save itself, after that refresh webpanel on the side.
I also have suggestions for two new options that I would like to see (and already hacked together for myself) which might or might not be useful for others: a different hover color for the toolbar icons (e.g. using
.button:hover:not(.on) .button_img {background-color: var(--button_hover_icons, #808080);}
),Yup, I will consider it.
and an option to disable close buttons altogether (I always close my tabs with the middle mouse button or ctrl+W, making the close button redundant and potentially harmful when misclicking).
Yes, this is already on my to do list.
PS: here's a screenshot of how it looks with my settings & changes (the pin button is hovered and thus orange):
Nice, only expand lines are moved by your mod, but I guess you will be able to fix them
-
What would you say are the main differences between this extension and the well-developed and hugely successful "Tabs Outliner" for Chrome? I'm interested in both positives and negatives as I'm not choosing sides and I am no expert in what you're doing, not yet anyway. One thing, Tabs Outliner isn't updated at the moment, so that's a big minus, but it does a lot of things right.
For example, I could just drag 1200 tabs from that extension directly into Evernote and everything falls into place without any problem at all, even with formatting left if I remember correctly. That is something I would love in every tab extension.
-
@Werkaster said in Tree Tabs:
What would you say are the main differences between this extension and the well-developed and hugely successful "Tabs Outliner" for Chrome? I'm interested in both positives and negatives as I'm not choosing sides and I am no expert in what you're doing, not yet anyway. One thing, Tabs Outliner isn't updated at the moment, so that's a big minus, but it does a lot of things right.
For example, I could just drag 1200 tabs from that extension directly into Evernote and everything falls into place without any problem at all, even with formatting left if I remember correctly. That is something I would love in every tab extension.
I never really used Outliner, I installed it once, tried it and didn't like it. I don't know the logic of it and how it works, so I made a mess with my session using it. I didn't bother afterwards.
I developed my first vertical tabs extension mainly for myself, and shared it as it grew big and complex. Second one I developed has groups management, and this is the third one, which has trees. In the future I want to merge them all into one, but probably it will be another fork.
It all started 2 years ago. At the beginning it was just my own test working only for Opera to manage my huge session (I talk about 1000+ tabs). Opera back then just released sidepanel in version 29 and I decided to do something just like many vertical tabs extensions for Firefox.
People liked it and asked me if I could add groups management, so I did. Shortly after comments with requests for trees started to pop up, so I started to work on it, but in the meantime I started using Vivaldi, since Vivaldi has a Web panel, in which you can open any website/extension as a sidebar, I made it for both Vivaldi and Opera. Now Firefox started web extensions compatibility, so the idea is to make it 100% compatible with all 3 browsers.
This extension is more similar to what you have in TST rather than in Outliner even if it was not intentional.
I know that people that use TST will complain, for deficiencies, but at least they will have something to manage tabs in Firefox until piro converts his extension. Anyway it was never my intention to compete with anyone and making yet another extension that does same thing as others.
My goal is to make it faster, more stable and pack as much features as I can. I'm always open for propositions, of course within a reason of how much I can change and how much I can do in my limited free time.So if you want to compare just install it and try it out, don't ask me about the differences as I don't know.
If you like it use it, if you don't don't use it, simple as that.