On window managers and menus

There’s been a lot of talk on the future of the Gnome project’s default window manager, Metacity, such as using CSS to design window border themes and giving applications the ability to extend the window menu. But I think that we could go one step further than just the little window menu – as suggested by the Tango project, maybe we could move all the menus into the window border. Obviously this would require changes to the window manager, to GTK, and probably even the applications that use it. Still, it would have a lot of advantages:

  • The changes to GTK could make integrating GTK apps with systems like Mac OS X much easier – if the menus were not embedded in the layout of the application, they would not require a library like ige_mac_integration – just changes to the Mac OS backend.
  • Furthermore, if somebody was interested in making a window manager that had a menu system like Mac OS X, it would be far easier to implement with a system like this.
  • The window’s icon could be made bigger, which looks better – you can hardly fit any detail in 16×16 pixel icons.
Window mockup

A mock-up I made of an integrated menu.

I don’t really know much about the internals of X11 window managers, but I expect the process would have to be something like the following: On loading a GTK application, the toolkit would have to query the window manager to see if it supported menus. If it did (and was running a compatible window border theme), GTK would pass it the menus (through the UIManager XML format or something) and it would render them. If the window manager or theme was not supported, they would just be drawn by GTK as they are now.

One difficulty might be sending events back to the application from the window manager. Another could be the difficulties of handling multiple windows with menus on a universal menu bar system such as Mac OS X.

Anyway, it was just an idea that, if possible, could really improve the look and feel of user interfaces, among other benefits.

One Response to “On window managers and menus”

  1. [...] Stephen Gentle « On window managers and menus [...]

Leave a Reply