It’s a bit old now, but Hylke Bons posted a great wrap up on elegance in software user interface design, and some big problems that application designers in the Gnome community need to work on fixing. Things like multiple borders when only one is needed, redundant labelling, lack of whitespace and so on. Gnome does look pretty good (especially when you change the fonts) but there are still a lot of things that could be improved.
Archive for the ‘Gnome’ Category
Gnome Global Menu
Posted on Friday, July 31st, 2009
I recently blogged about integrating menus in an X11 window manager’s window borders, and I assumed that this would require quite a lot of changes to both GTK+ and the window manager, with an API to communicate between them, but it seems that it may be far simpler than that. I came across a project called gnome-globalmenu which takes window borders out of applications and places them in the panel, without any changes to the applications. Using a similar method, the window border could grab the menus, and then a transparent theme could used to blend in toolbars, tabs, scrollbars and so on like in my other post on the topic, if the theme so wanted.
The only problems is that it seems to work with GTK applications, so KDE and other toolkit applications, as well as applications like Firefox and Wine which draw their own menus wouldn’t be able to integrate. In this case, and for windows with no menus, a normal sized window border could just be used.
Extending the application/window manager integration
Posted on Monday, July 20th, 2009
After my post suggesting that we should have an API that window managers can provide to integrate menus with the window borders, I thought I’d take it a little further and make a mock-up of what Firefox could look like with a the menus, toolbar and tab bar integrated into a black glass like window border theme:
Fairly nice, I think. Given the greater flexibility, it could also allow people to create themes that look like Mac OS X, Vista (if you’re into that kind of thing) or anything else. Take the Mac OS unified window look for instance – it would be very difficult to create it with current theming systems:

With the ability for a window manager to manage the menus and toolbars, this would be possible.
On window managers and menus
Posted on Sunday, July 19th, 2009
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.
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.