This repository has been archived by the owner on Dec 15, 2022. It is now read-only.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Tabs be wrapping, wrapping be tabs. You wrap 'em, we tap 'm.
A possible draw back, besides being the coolest person with the most tabs and therefore suffering ridicule and shame from all of those lesser tabbed people, is the potential for too many tabs, and that the tabs may revolt and take over your screen, carrying you away to be sacrificed to their tab god. There is really only a working theory that there is a potential for this to happen, but so far, I haven't heard of any actual sacrifices occurring, and the tabs, for the most part have been agreeable and well behaved.
More likely is something I call tab explosion, which isn't nearly as bad as it sounds. Essentially, if the height of the tab region isn't limited (and it ain't) (less is more, tab soda), then, when the unsub resizes their screen, having an allotment of tabs open, and the real estate for tabs shrinking, the tabs can make the editor region become very small and uncomfortable. A savey unsub can avoid this becoming a problem just by not doing that, and if they do do that, then just undoing that fixes the problem. Still, putting some type of limit on height of the tab region (which is sorta kinda planned, just didn't bake it in, keep'n it simple, tab soda) would avoid this issue out right. What is nice, is that if a max-height is added, and probably should be than you get vertical scroll for the open tabs that overflow, which is nice.
Here we can see the various states of tab explosion.
OK, everything looks pretty good here, lots of tabs but ok. I can do this, we can do this...
Getting a little bit tight, be we can still make it work. I have confidence, the world is my landscape, my hot air balloon if you will.
Oh God, where has my editor gone? FML
So perhaps it is apparent how things can a lit-tle-bit out of hand, in a pretty-quick-tick. Still, having rows of tabs is pret-ty nice.
Other design were pondered. This is the simplest one, and is working. Tab arrangements, along with many other user interface amorphism can do for some updating. Maybe I don't want all of my tabs squished off to the left, or even on the right (is that even possible?) maybe i just want them anywhere. But you can't have them anywhere Ned. Keep it simple. Still, one other cool idea in the tank is tab shelfs. So you can move tabs up, and you can move tabs down, and you can move tabs around. You can kinda do that with this change. Of coarse this is based on flex-box, and that isn't necessarily the right abstraction if you want to get really freeky like putting tabs in arbitrary places for no really great reason, but you know, it's pretty darn good and so you can put a feather in your hat for that.
All in all, tabs rule, panels drool.
Actually, that brings me to a really handy dandy trick, which is to use an extra pane for storing and hiding excess tabs.
Hey, where did all of my tabs go?
There they are. They were just hiding!
Adding that max-height overflow so the tab region doesn't grow boundlessly could kinda screw up the simplicity of this solution and it's tab hiding capabilities, but if that option is implemented as a user preference, then the end user can choose for themselves.
So this is the simple version, and it works pretty good, been using it for a couple of months. Since it is a user option and not on by default, the risk involved with deploying should be pretty low. 🧸
Cheers & Beers