
Side Tabs: Prototyping An Unexpected Productivity Hack - dhenein
http://www.darrinhenein.com/prototyping-side-tabs/
======
mordero
I've been using Tree Style Tabs[0] with Firefox for a long time. Being able to
nest tabs and then collapse them is awesome. It is hard to live without it
when using Chrome (I know there is a similar addon for Chrome[1], but it
doesn't have the same feel since it just adds a new window off to the side and
still has the tabs across the top).

[0] [https://addons.mozilla.org/en-US/firefox/addon/tree-style-
ta...](https://addons.mozilla.org/en-US/firefox/addon/tree-style-tab/) [1]
[https://chrome.google.com/webstore/detail/sidewise-tree-
styl...](https://chrome.google.com/webstore/detail/sidewise-tree-style-
tabs/biiammgklaefagjclmnlialkmaemifgo?hl=en)

~~~
robinhoodexe
+1 for Tree Style Tabs. This seems in the right direction, but it's not nearly
as feature packed as TST. One thing with TST though, pinned tabs is broken :(

~~~
peedy
I just installed TST and it lost all my 4 pinned tabs but could pin them again
with no issues.

------
yxhuvud
Very nice to see FF designers discovering the joy of vertical tabs, but it
seems pretty strange to not have the article mention the traditional solutions
to that, like Tree Style Tabs. Are the designers living in a bobble when it
comes to extensions?

~~~
dhenein
Thanks for pointing this out, I should have made mention in my post :) I've
have seen tree style tabs – which does a great job for more advanced
organization of tabs. For my experiments (and Firefox features in general), we
try and focus on simplicity and the more general audience.

~~~
baby
TST is pretty simple to use and extensible if you want more. What you did
was... not really practical. Have you tried using TST for a few days? I
promise you won't be able to go back to any other way of browsing.

~~~
MortenK
For developers and other tech guys maybe. But the average, non tech savy users
have a very hard time understanding hierarchies and therefore tree controls.
It's to such a degree that UX specialists like Alan Cooper strongly suggests
never using tree views unless the data is naturally thought of as a hierarchy,
such as a family tree etc.

~~~
xtracto
>But the average, non tech savy users have a very hard time understanding
hierarchies and therefore tree controls

Oh, that sounds very much like BS. "non tech saavy" users have been using
hierarchies in computers since before Windows 95 (considering people that used
MS-DOS as 'tech saavy' users). DOS/Windows folders were presented in a
structure; File Explorer presented stuff in a structure manner. Hell, the "my
documents" folder was structured... and even Gnome (the epithome of doing
simple interfaces) presents folders in a structure manner.

~~~
MortenK
Because a UI control exists before Windows 95 doesn't mean it's understood by
the majority of users. Also, there is a larger amount of users with minimal
software exposure now than ever before, due to tablets and smartphones.

If your computing experience is limited to iOS for example, chances are you'll
never even have seen a nested tree view control, much less understand the
hierarchy behind it.

At least just read a minimum on usability and UX, before being so rude as to
"call bullshit" based on your own personal opinion.

------
minikites
OmniWeb did this over a decade ago:
[http://i.imgur.com/U4Q5siY.jpg](http://i.imgur.com/U4Q5siY.jpg)

I'm glad it's getting more popular but surprised it's taken this long. It
makes more sense to use horizontal space on a widescreen monitor.

~~~
Mister_Snuggles
Yup. They also had a list view that's similar to what's being shown here.

Omniweb was great back in the day, it's too bad it's no longer around.

~~~
josh64
Or is it?
[http://omnistaging.omnigroup.com/omniweb/](http://omnistaging.omnigroup.com/omniweb/)

Now with OS X 10.9 support!

------
callahad
If you want to try this out, download release.xpi from the repo and drag it
into Firefox.

Link:
[https://github.com/darrinhenein/VerticalTabs/raw/master/rele...](https://github.com/darrinhenein/VerticalTabs/raw/master/release.xpi)

~~~
emn13
Is there a reason this isn't on the firefox addons site? I think it's bad
practice to recommend people run arbitrary code from the internet when there's
a simple alternative.

~~~
rational-future
TIL: putting code on the firefox addons site makes it secure by pure magic.

~~~
mcpherrinm
Where "magic" is a review: [https://addons.mozilla.org/en-
US/developers/docs/policies/re...](https://addons.mozilla.org/en-
US/developers/docs/policies/reviews)

~~~
emn13
...and reviews by others, and a process by which known bad extensions get
taken down.

It's not watertight (as the recent abuses in the chrome web store illustrate),
but it's better than nothing.

~~~
shock
AFAIK, Chrome extensions don't go through a review process. SmoothGestures was
just one extension that got a new developer and then started submitting every
visited url to their servers.

~~~
emn13
Well, there's certainly some central control even if it's not formal review.
Of course, review wouldn't catch everything anyway (I think the ability to
identify and block bad actors is more important than the a priori review).

------
wahsd
I have never understood why this has not been done far sooner and why the big
browsers don't at least support the option.

It makes absolutely no sense to use up vertical space on wide-screens (which
everyone now has) on tabs that then have to collapse, stack, or shrink when we
could take advantage of all that white space left and right of the content to
list all the tabs including labels and even add a few more pixels of vertical
space.

It's so baffling to me. I don't understand it.

~~~
sparkie
Opera (as usual) had this ability for years, although I have not used recent
versions of their browser, so dunno if it's still there. They also added a
nice "tab group" feature, which was/is much better than firefox's half-assed
tab group feature (which isn't even "visible" by default because it sucks).

EDIT: Can find older versions to check it out here (Appears as 12.17 is the
last version which had this):
[http://www.opera.com/download/guide/?os=windows&list=all](http://www.opera.com/download/guide/?os=windows&list=all).
You simply right click the tab bar and it has place> top/left/right/bottom.

I use Firefox now, and couldn't survive without Tree style tabs, although I
still miss a significant number of features from Opera, although from what I
gather, they basically thrown away most of it and now have not much more than
a clone of Chrome. This is baffling to me too - current Opera is a clear
regression from what they had 5 years ago.

------
phkahler
I like the idea of the windows task bar on the left side, but instead of
showing thumbnails if it showed document titles we could just use that instead
of side-tabs. Start a new browser window instead of a tab and let the desktop
environment handle that. Of course there's persistence issues, but those could
be resolved. I guess I don't like duplicating functionality between
application and the desktop, and all the apps getting tabs is just that.
Perhaps the desktop implementation needs to be better rather than having apps
do it themselves?

------
dubcanada
I wish this existed for Chrome, they used to have a command line flag
(–enable-vertical-tabs) but they turned it off. Which made me really sad.

Does anyone know of a nice looking version of this for Chrome?

~~~
forgotpasswd3x
Chrome doesn't really allow you to modify the interface enough to do this, but
there's an extension called Tab Outliner, that works similarly, and has some
extra features as well.

[https://chrome.google.com/webstore/detail/tabs-
outliner/eggk...](https://chrome.google.com/webstore/detail/tabs-
outliner/eggkanocgddhmamlbiijnphhppkpkmkl)

------
Camillo
This post attempts to walk a fine line between hyping up the work the author
has done and recognizing the contributions of... largely the wrong people.

\- There is a pretty popular Firefox extension called Tree Style Tabs, by
"Piro". It is awesome, it is actively maintained, it works great. It has
around 100k active users.

\- Some time later, "philiKON" (Philipp von Weitershausen) made a smaller
extension that just shows tabs vertically. "It is heavily inspired by and
borrows ideas from the excellent Tree Style Tab add-on", its page says. I used
it for a while, but it fell into disrepair and I switched back to TST.
Vertical Tabs has around 5k users.

\- Finally, "Vlad" made a fork of Vertical Tabs to fix it up a little, since
philiKON had abandoned it.

So who does Mr. Henein credit? Mainly himself and his colleague Vlad. Vlad is
credited as the author of Vertical Tabs at the beginning of the post, although
what he was not "something [Henein]’d be willing to trial" (ouch). It needed
Henein's touch to "bring this add-on to a level where users would find it
delightful and usable enough to at least give it a fair shot."

But still, he does credit his pal Vlad for doing most of the work, and even
throws in a mention of von Weitershausen in the middle of the post, without
explaining what he has to do with Vertical Tabs.

No mention at all of Piro or Tree Style Tabs, even though it was the
inspiration of Vertical Tabs, and to this day is used by orders of magnitude
more people. In fact, its existence seems to be intentionally removed. "The
hypothesis I was hoping to validate was that there was a subset of the Firefox
user base that would find value in the layout that Side Tabs enabled. I wanted
to bring this add-on to a level where users would find it delightful and
usable enough to at least give it a fair shot." I would say that TST, its over
2 million downloads over at least 7 years, and its 100k active users validate
that hypothesis pretty well.

I think this is a pretty shoddy way for Mozilla to treat a member of its
community. There is an add-on that introduced all of these ideas to Firefox,
is well-known and appreciated by Firefox power-users, and has been tirelessly
maintained for seven years, yet they go and act as if "side tabs" (he even
slipped his own new name for it in there) were some amazing new area of
cutting-edge experimentation, while giving a hat tip to a derivative of a
derivative of the original extension.

And then all the flowery rhetoric: "This is how great things are built; rarely
from scratch, but more commonly on the shoulders and brilliance of those who
came before you." "I’ve had great response on Twitter from developers and
users who love the add-on and who can’t wait to share their ideas and
thoughts. It’s awesome to see ideas take shape and grow so organically like
this. This is collaboration."

Maybe I'm crazy, but the whole thing just rubs me the wrong way.

~~~
cs02rm0
Presumably he wasn't necessarily aware of TST? I wasn't.

I don't see anything wrong with crediting where he found his inspiration.
There's always a chain to these things, presumably TST wouldn't exist without
Firefox, which wouldn't exist without IE or Netscape, which... which wouldn't
exist without the wheel... fire...

~~~
Camillo
Plausible deniability is extremely thin here. TST's inspiration is credited in
the first paragraph of Vertical Tabs's Readme on GitHub (even in Vlad's fork),
and in Vertical Tabs's description on addons.mozilla.org. In fact, if you
google "Vertical Tabs" the first result comes with the snippet "This Firefox
add-on arranges tabs in a vertical rather than horizontal fashion. It is
heavily inspired by and borrows ideas from the excellent Tree [...]".

On top of that, Mr. Henein is a Mozilla employee and has several colleagues
who are also working on vertical tabs (he mentions Vlad, but also Stephen
Horlander, one Hayden, and there are others who are not mentioned by name).
Basically, there is a group of people at Mozilla who is (finally, after seven
years) looking into officially supporting vertical tabs. How likely it is that
_none_ of them has ever heard of TST, or found out about it while researching
this feature? I'd say it defies belief.

It takes active, deliberate effort for Mozilla to ignore the community's
efforts in this field. It is certainly more satisfying to a designer's
narcissism to pretend that he (with some help from his pals) is bringing forth
a bold new creation, but it is an especially egregious attitude to take for a
community-based organization like Mozilla.

------
sbeckeriv
I would like to know why it disappeared from Firefox mobile. The early version
had it where you swiped to get the tabs on the left.

[http://dknite.files.wordpress.com/2010/10/firefox-fennec-
mob...](http://dknite.files.wordpress.com/2010/10/firefox-fennec-mobile-
android.jpg)

I am going to try an add an auto hide. Right now I have the tab bar at 50px.
When I hover over it with a delay I would be nice to expand.

------
AdrianRossouw
I quite like vertical tabs, but then we build a product based around
publishing content in this format :

[http://wayfinder.co/pathways/53998ffd774fd817001977ef/falseh...](http://wayfinder.co/pathways/53998ffd774fd817001977ef/falsehoods-
programmers-believe)

------
wldcordeiro
I'd like to see the same dark theme on Linux otherwise I'll stick to tree
style tabs.

~~~
dhenein
Should be coming, keep an eye on
[https://github.com/dhdemerson/VerticalTabs](https://github.com/dhdemerson/VerticalTabs)
(he's putting a lot of time into it in the next few weeks!)

~~~
shock
Issues can't be opened on that project. Is this by choice or simply an
oversight?

------
scottjad
Where I really want side tabs is on my Android Nexus 7 tablet.

On it in Chrome I normally browse the web in portrait mode and I can see the
titles of about three tabs, but only a few words of each. With a slide out
side panel on the left (activated by dragging left to right from off the
screen onto the screen) I would be able to see the titles for 15 or so tabs,
with larger press areas and close buttons.

I realize for every tab switch this would require a swipe and a click, but as
it is now the tab is often not one of the three visible and so I already have
to swipe multiple times across the tab bar to see the tab before clicking it.

~~~
otakucode
Chrome had side tabs for a long time. It was a 'hidden feature' you had to
enable in the about:config screen. But Google knows how you're supposed to
surf, and vertical side tabs are not it. So they tore it out. Many issues were
opened on their bug tracker asking for it to be replaced, but the final word
came down - 'we don't like vertical tabs, and therefore no one can have them.
Stop opening new issues.'

~~~
DonHopkins
Sheez. Why not enable users to drag any tab to anywhere along any edge of any
window?

Tabbed window manager with pie menus for The NeWS Toolkit 2.0, from 1991:
[http://www.donhopkins.com/home/movies/TabWindowDemo.mov](http://www.donhopkins.com/home/movies/TabWindowDemo.mov)

NeWS PostScript source code:
[http://donhopkins.com/home/archive/NeWS/tab-3.0.2.ps.txt](http://donhopkins.com/home/archive/NeWS/tab-3.0.2.ps.txt)

------
sprokolopolis
I am enjoying this on OSX. I tried Tree Style Tabs in the past, but was not a
fan of how it looked. This looks much better and is working nicely so far. In
the future it would be nice to see collapse-able tab groups.

Pinned tabs should have a visual distinction, rather than only being pinned to
the top. An icon, badge, or subtle change in background shade would work.

Looking good!

~~~
dhenein
Thank you! Really appreciate it. My colleague's fork is tackling pinned tabs
and some other cool ideas, check it out!
[https://github.com/dhdemerson/VerticalTabs](https://github.com/dhdemerson/VerticalTabs)

~~~
lstamour
One idea I'd just thought of adding might be to use the empty space below the
tabs with a top-list of frequently used URLs, excluding those already open.
And maybe the most recently closed tabs. Also when mentioning productivity, I
immediately thought of putting check boxes or labels on the tabs. Or swipe
actions.

------
DonHopkins
Side tabs are great, because text is wider than it is tall, so you can fit a
lot more of them on the screen, to manage more windows.

But why restrict yourself to the top edge, the bottom edge, one side or the
other, when you can allow the user to drag the tabs around to any place along
any edge that they want? I am perplexed that all tabbed user window frames
don't allow this useful and obvious feature, after all these years.

Also, tabbed windows work very nicely with pie menus, and tabbed frames plus
pie menus are an excellent combination for window managers and web browsers.

I implemented side tabs in a commercial product in 1988, for UniPress
(Gosling) Emacs 2.20 running on the Sun NeWS and SGI 4Sight window systems,
and I used them for the HyperTIES hypermedia browser and authoring tool that I
developed with Ben Shneiderman at the University of Maryland Human Computer
Interaction Lab.

HyperTIES Hypermedia Browser and Emacs Authoring Tool for NeWS HyperTIES is an
early hypermedia browser developed under the direction of Dr. Ben Shneiderman
at the University of Maryland Human Computer Interaction Lab.
[http://www.donhopkins.com/drupal/node/101](http://www.donhopkins.com/drupal/node/101)

Designing to Facilitate Browsing: A Look Back at the Hyperties Workstation
Browser By Ben Shneiderman, Catherine Plaisant, Rodrigo Botafogo, Don Hopkins,
William Weiland.
[http://www.donhopkins.com/drupal/node/102](http://www.donhopkins.com/drupal/node/102)

Here's some stuff about it from Wikipedia:

[https://en.wikipedia.org/wiki/Tab_(GUI)](https://en.wikipedia.org/wiki/Tab_\(GUI\))

The NeWS version of UniPress's Gosling Emacs text editor was the first
commercially available product to pioneer the use of multiple tabbed windows
in 1988. It was used to develop an authoring tool for the Ben Shneiderman's
HyperTIES browser (the NeWS workstation version of The Interactive
Encyclopedia System), in 1988.[2][3] HyperTIES also supported pie menus for
managing windows and browsing hypermedia documents with PostScript applets.
Don Hopkins developed and released several versions of tabbed window frames
for the NeWS window system as free software, which the window manager applied
to all NeWS applications, and enabled users to drag the tabs around to any
edge of the window.[4] HyperTIES was a "hypermedia" browser, a term first used
by Ted Nelson in 1965. The first "web" browser came out later in 1990,[5] and
the term "World Wide Web" was not invented until 1990.[6]

HCIL Demo - HyperTIES Authoring
[https://www.youtube.com/watch?v=hhmU2B79EDU](https://www.youtube.com/watch?v=hhmU2B79EDU)

Here's another different application of tabs that I developed on NeWS, a
visual PostScript programming interface.

The Shape of PSIBER Space: PostScript Interactive Bug Eradication Routines
Written by Don Hopkins, October 1989. University of Maryland Human-Computer
Interaction Lab Computer Science Department College Park, Maryland 20742
[http://www.donhopkins.com/drupal/node/97](http://www.donhopkins.com/drupal/node/97)

Also, here's a video of an even more general implemented of tabbed window
frames with a pie menus based window manager, that I implemented at Sun
Microsystems for The NeWS Toolkit 2.0:

[http://www.donhopkins.com/home/movies/TabWindowDemo.mov](http://www.donhopkins.com/home/movies/TabWindowDemo.mov)

Here is the source code in PostScript for a few different implementations that
I gave away for free back in the 80's and 90's:

This is the original version for NeWS 1.1 that shipped with UniPress Emacs,
and that I used for the HyperTIES hypermedia browser and authoring
environment, which is demonstrated in the video at
[https://www.youtube.com/watch?v=hhmU2B79EDU](https://www.youtube.com/watch?v=hhmU2B79EDU)
:

% Tab window class
[http://donhopkins.com/home/archive/NeWS/tabwin.ps.txt](http://donhopkins.com/home/archive/NeWS/tabwin.ps.txt)

This is the PSIBER Space Deck for NeWS 1.1, which uses its own form of tabbed
sub-windows whose tabs you can drag around to any edge, described in this
paper
[http://www.donhopkins.com/drupal/node/97](http://www.donhopkins.com/drupal/node/97)
:
[http://donhopkins.com/home/archive/psiber/cyber/litecyber.ps...](http://donhopkins.com/home/archive/psiber/cyber/litecyber.ps.txt)

This is the first version I implemented for NDE 1.0 on X11/NeWS while at the
University of Maryland:

% NDE Tab Frames % Copyright (C) 1989 % By Don Hopkins, University of Maryland
Human Computer Interaction Lab % May 13 1989
[http://donhopkins.com/home/archive/NeWS/tab-1.ps.txt](http://donhopkins.com/home/archive/NeWS/tab-1.ps.txt)

This is the second version I implemented for NDE 1.0 on X11/NeWS while at the
University of Maryland:

% tNt Tab Frames, release 1.0 % Copyright (C) 1990 % By Don Hopkins,
University of Maryland Human Computer Interaction Lab % Started, May 13 1989.
% Reimplemented mostly from scratch for X11/NeWS FCS.
[http://donhopkins.com/home/archive/NeWS/tabframe-1.ps.txt](http://donhopkins.com/home/archive/NeWS/tabframe-1.ps.txt)

This is the final version I implemented for The NeWS Toolkit 2.0 while at Sun
Microsystems, which is demonstrated in the video at
[http://www.donhopkins.com/home/movies/TabWindowDemo.mov](http://www.donhopkins.com/home/movies/TabWindowDemo.mov)
:

% Tab Windows for the NeWS toolkit % Version 3.0.2 % This file implements a
pie menu tab window manager for the NeWS toolkit. % It should work with
TNT2.0fcs on OW2.0fcs and TNT3.0beta on OW3.0beta. % This code and the ideas
behind it were developed over time by Don Hopkins % at the University of
Maryland, UniPress Software, and Sun Microsystems. % Pie menus and tab windows
and NOT patented or restricted, and the % interface and algorithms may be
freely copied and improved upon.
[http://donhopkins.com/home/archive/NeWS/tab-3.0.2.ps.txt](http://donhopkins.com/home/archive/NeWS/tab-3.0.2.ps.txt)

I also implemented a tabbed window manager for X11 based on "uwm", which I
can't find a link to right now.

And at Sun we developed but never released a really nice extensible window
manager with tabs, pie menus, rooms, virtual desktop, and other cool features,
that managed both NeWS windows and X11 windows:

[http://www.art.net/~hopkins/Don/unix-
haters/x-windows/i39l.h...](http://www.art.net/~hopkins/Don/unix-
haters/x-windows/i39l.html)

Some notes about OWM

OWM is the "Open Window Manager" we prototyped in NeWS. We enhanced the NeWS
window frames so they sported indexing tabs, pie menus, rooms, and a scrolling
virtual desktop. Many of our enhancements were separatly developed, and
plugged together orthogonally like legos. All NeWS applications could use
these fancy frames, and the Open Window Manager wrapped X clients in the same
frames that NeWS windows got!

This way, factoring the window frames out as a part of the toolkit, and
implementing the X window manager separately, NeWS applications don't have to
know a thing about X window management, and X clients can go on doing the same
nasty things they've always done, and everybody get the benefits of dynamic
extensibility, and a consistent user interface, by using the default window
class!

I39L window management complicates pinned menus enormously. TNT menus pin
correctly, so that when you push the pin in, the menu window simply stays up
on the screen, just like you'd expect. This is not the case with XView or even
OLWM. Under an I39L window manager, the Open Look pinned menu metaphor
completely breaks down. When you pin an X menu, it dissappears from the screen
for an instant, then comes back at a different place, at a different size,
with a different look and feel. If you're not running just the right window
manager, pinned menus don't even have pins! There is no need for such "ICCCM
compliant" behavior with TNT menus. When they're pinned, they can just stay
there and manage themselves. But were TNT windows managed by an external I39L
window manager, they would have to degenerate to the level of X menus.

Under the OWM solution, pinned TNT menus work correctly, and they inherit
their pinned window behavior from ClassPopupWindow, the same class managing
pinned X menus. The look and feel is high quality, consistant, maintainable,
and intentionally extensible.

If I39L window management has such a negative impact on pinned menus, how else
will it impact other parts of the toolkit and applications?

Will it effect popup notices? Since they need keyboard input for the buttons,
will they have to play the I39L window management game? How do we get the
notice tail (a separate canvas) to line up, if the window manager decides to
wrap a frame around the notice window?

It is impossible to know how it will effect TNT applications, because the
toolkit was specifically designed to be subclassed and extended in areas that
overlap with I39L window management. NeWSRoom and the TNT virtual window
manager are examples of simple, interesting extensions to the window class
that are in direct conflict with I39L window management. We would be giving up
a lot of actual and potential functionality, that we designed the toolkit to
support in the first place. We need to redesign the window class for greater
flexbility and easier subclassability, but those goals are at odds with I39L
window management. The result of a cross of these two opposing goals would be
massivly complex and would sacrifice most of the important advantages of the
TNT approach. However, the OWM approach to window management, wrapping X
windows in instances of the TNT window class, synergizes with extensions to
the window classes. As an extreme example, you can make OWM wrap window frames
with title tabs that pop up pie menus full of handy window management
functions around all your X windows.

There are several other technological advantages of managing X windows
internally with NeWS, over managing them externally with X. By an external
window manager, I mean one that is in a separate address space as the windows.
Relative to the server, all windows are internal, all X "Xlib" and NeWS "wire
service" clients are external, and NeWS canvas objects and light weight
processes are internal. But an external X window manager is in a different
address space must try to manage many shared resources at a distance, an
intrinsicly difficult task, imposing limitations on the whole system and
unavoidably restricting the user interface possibilities.

The management of arbitrarily shaped windows becomes very complicated under an
I39L window manager. In contrast, PizzaTool has a popup pizza preview window,
whose shape is a rectangular frame around a round (or semi-circular, depending
on your appetite) pizza window, with the space between the inside of the frame
and the pizza cut out. It was very easy to implement, by subclassing
ClassPopupWindow and overriding the /path method to cut out the inside of the
frame and ask the center pizza client to add its shape to the path. When you
move or stretch the window, you see a rubber-band preview of the actual shape
the window will take when you release the button. The pizza path procedure
knows to maintain a 1:1 aspect ratio (no oval pizzas), that centers the round
pizza in the frame as you drag the resize corner around. The shape of a TNT
window is not simply defined by curves or bitmaps -- it is defined by a method
of the window object, which can apply constraints and may depend on the state
of other objects in the system, like the size or number of slices of the pizza
inside the frame. All this nice interactive feedback is totally trivial to
implement with TNT, and is completely impossible with an I39L window manager.
And even if an I39L window manager could be programmed to perform such custom
feedback, it would still have to grab the server and lock out all other
animation in the process, instead of using nondestructive overlays like TNT.

X11 window managers must grab the server in order to animate rubber-band
feedback over the screen when resizing and moving windows. This grabbing
causes many problems with NeWS synchronous interests, that can be demonstrated
by pressing the "Help" key while dragging out a rectangle on the root
background. NeWS can do a much better job at managing global resources in the
server because it is in the same address space and it has facilities like the
overlay plane specifically designed to implement such window management
functions, without even grabbing the server. This antisocial server grabbing
behavior is just one symptom of a general class of problems with external X
window management, including other important issues such as keyboard and
colomap focus.

If NeWS alone manages the input focus, it can manage it perfectly. An X window
manager alone cannot, because it runs in a foreign address space, and is not
in a position to synchronously block the input queue and directly effect the
distribution of events the way NeWS is. But even worse is when an X window
manager _and_ NeWS both try to manage the input focus at once, which is the
situation we are in today. The input focus problem could be solved in several
ways: OWM solves the problem elegantly, as PSWM did in the past; OLWM could be
made NeWS aware, so that when our own customers run our own external X window
manager on our own server that we ship preinstalled on the disks of our own
computers, OLWM could download some PostScript and let NeWS handle the focus
management the way it was designed.

It's criminally negligent to ship a product that is incapable of keeping the
input focus up to date with the cursor position, when you have the technology
to do so. Your xtrek has paged the window manager out of core, and the console
beeps and you suddenly need to move the cursor into the terminal emulator and
type the command to keep the reactor from melting down, but the input focus
stays in the xtrek for three seconds while the window manager pages in, but
you keep on typing, and the keys slip right through to xtrek, and you
accidentally fire off your last photon torpedoe and beam twelve red shirt
engineers into deep space!

Oh yeah, and here is a picture of pizzatool:

[http://www.art.net/~hopkins/Don/images/pizzatool.gif](http://www.art.net/~hopkins/Don/images/pizzatool.gif)

------
ozymandius182
Any chance of this being published via Mozilla Add-Ons, or do you want to keep
it as a prototype?

~~~
dhenein
Right now it works (best) on OSX, I'd love to get some help to make it work
better across platforms. My colleague Hayden's work will probably progress
faster than mine (this was just a side project for me!)
[https://github.com/dhdemerson/VerticalTabs](https://github.com/dhdemerson/VerticalTabs)

------
asakura89
Looks ugly in windows. And show to on the right is not working. Waiting for a
better version. :)

~~~
dhenein
Agreed! My work was done on OSX, as a proof of concept. My colleague Hayden is
doing some great work to carry it forward, including Windows support
([https://github.com/dhdemerson/VerticalTabs](https://github.com/dhdemerson/VerticalTabs))

~~~
asakura89
Why it needs Windows support? Isn't it just an xul, js and css using xulrunner
on every platform? Sorry, I ask because I never code in xul before.

------
erichurkman
Slick. I've tried the popular tree style tab extensions a few times over the
years, but this one feels the most natural. The others were always too
complicated.

One nit: the target area to trigger the resize is super tiny. 1 pixel, I
think.

~~~
dhenein
Thanks, glad to hear you like it :) Good call on the resize target, I'll look
at that!

------
shock
I've tried many vertical tabs add-ons for Firefox, but, sadly, none are at the
point where I can use them consistently. Some issues that I had:

    
    
      - interface buttons disappeared: new tab, tab groups
      - bugs when reordering tabs
      - looked out of place/ugly even with the default theme
    

That said, this is a sufficient hindrance for me daily that I'm considering
learning add-on development to be able to fix these issues in those add-ons or
create my own.

One thing that I'd love to have is the ability to reverse the order of the
tabs and place the buttons at the top of the vertical tab bar instead of the
bottom. I'm surprised that it isn't an option in any of the ones I tried:
having the new tab button near the menu button would be a big usability
improvement for me (I use the vertical tab bar on the right).

~~~
zo1
Then I guess you haven't tried a recent version of:
[https://addons.mozilla.org/en-US/firefox/addon/tree-style-
ta...](https://addons.mozilla.org/en-US/firefox/addon/tree-style-tab/)

I've been using it for, I think, 2-3 years. And it's come a long way since the
early days when it was buggy. I suggest you give it another go with a more
recent version. And don't be put off by the ugly screenshots on the add on
page as it's not quite what it looks like anymore.

------
rch
More generally, but in the same vein, I miss the side panel from Opera -- it's
both easy and satisfying to 'throw' the mouse into the side of the screen to
get access to extra control real estate.

------
baby
How does this compare to Tree Style Tab? I've been using TST for years and I
don't want to downgrade.

~~~
wjoe
It looks nicer (in my opinion at least, and I've only test it on Linux), more
minimalist style. But it doesn't have the collapsable tree groups that TST
has, just a standard list of tabs.

~~~
baby
It looks pretty bad on windows.

------
snambi
Why should the tabs be at the top. side looks better. Because it is easier
read than the top.

------
manish_gill
This causes the address bar to climb up and disappear halfway on my OS X
Nightly. :(

------
ksec
Looks like it doesn't work very well on Windows Machine.

------
signa11
i have fvwm configured to have decorations on the left side, since most
monitors have more X than Y pixels...

