In the comments to a previous post, we were asked about implementing tabs in the window manager. Calum pointed out that the HIG recommends against applications adding their own document-level tabs on the grounds that this is a job for the window manager. Yet the window manager has never risen to the challenge, and very many applications do in fact implement document-level tabs.
Implementing this will fall into three parts:
- there must be a way of identifying groups of windows which may be tabbed together (we might, for example, use WM_CLASS);
- there must be a display listing all tabs in the window border below the title (in a first revision, this could perhaps be done using the system menu);
- there must be a mechanism for unmapping all but the selected window, and, when appropriate, for reconfiguring the unmapped windows to match the mapped window (that is, when the mapped window is resized or moved).
There have been some volunteers willing to do the work in the past, but no word yet of working code. It should be a large piece of work, but not a monumentally huge one. Again, if anyone wants to help now, abundant assistance is available; this may be something the maintainers could work on, but not until the bug queue has been reduced a little more.
Photo © emdot, cc-by-nc-nd.