Window Control Marking Menu

While it’s actually about a marking menu implementation in Flash, this gives a good introduction: Extremely Efficient Menu Selection: Marking Menus for the Flash Platform.

Marking menus vs linear menus on Youtube.

Could marking menus be used for window management?

There could be a menu button, but that would often put the menu in a corner so that fewer directions could be used efficiently. The menu would have to be designed for either the right or left edge of the screen.

Requiring a right click makes the functionality hard to discover, but one could provide a hint attached to the mouse pointer.

The menu appears on pressing the right mouse button. The center is neutral and allows to cancel the operation by simply releasing the mouse button again. Selection of options happens based on direction alone, distance beyond the initial threshold plays no role. This allows fast gestures. It might be worth consideration to place Maximize in the center, as it is a rather safe command, but one might want to offer a different way to cancel the operation, then.

During menu-use, the pointer disappears and a line is shown to indicate the chosen direction / the gesture being drawn. Sub-menus are reached by changing direction or pausing, although there are variations of marking menus where the mouse button has to be released.

The current workspace can’t be selected. Sticky (always on visible workspace) is presented as exclusive option instead of a separate state as in the current linear menu.

Marking menus can be combined with other elements, here an alternative for workspace selection. Sticky is presented as a kind of parenthesis.

Compressor Plugin GUI

Sampo Savolainen asked me to design an audio compressor plugin GUI. This triggered a thought process with a first result that is guaranteed to be far way from what he had in mind, but before I may head in a more conventional direction, I just have to explore this 😉

Background info on dynamic range compression.

I wondered how one could express what each control of a compressor as the one written by Sampo does. Giving an idea of the signal path and relations between controls. Ideally without labels, even.

Full size

The controls provided are:

  • High-pass filter on/off for the analyzed signal. Left side. Here I neglected that the signal is split in 2, one for measurement, the other to apply the effect on.
  • Treshold. Green line in the graph. Should be draggable from the whole grap area.
  • Ratio. Blue fader with round knob, synchronized with the blue line/dot in the graph.
  • Markup gain. Fader with red arrow. The graphics show the relation to the first graph.
  • Attack and Release time. Below the stop watch icon. I’m worried that the chart below the faders is rather hard to get, so it might be best to drop it and to add labels.
  • Dry/wet amount. Right side. The output touching the right corner and the fader handle for this are one.

High-pass switched off:

GTK+ Issues

During my ongoing work on an SVG based theme to be realized with the gtk-css-engine I became aware of a number of shortcomings in GTK+.

There’s no Prelight on menus and tabs, making them feel like dead space. There’s an old bug report with patch for this, but it started out as being specifically for the Windows port:

No Active (depressed) state for entries. This is admittedly controversial:
Full size

Treating the parts of a SpinButton like separate widgets works against drawing arrows “inside” a SpinButton. Also the focus indication isn’t drawn around the whole widget like it should be, for this reason:

There shouldn’t be focus indication on only the current tab of a Notebook:
Full size

There should be support for drawing the sides of tabs differently depending on whether they line up with the page or not:
Full size

Ardour Button

Seems like several Ardour developers like the new Pro Tools 8 look, especially the buttons. I have been asked to mimic them in SVG. Took a little freedom, as I don’t think plain copying is a good idea.


The focused variants would only be needed for dialogs.

Popup Scrollbar Concept Demo

It has been a while since I came up with the original concept which proved to be hard to get across. But now there’s a Python-GTK demo, a GTK feature request and a narrated video 🙂

Ogg Theora from

Thanks to drew Roberts for helping me with ponunciation, it would be worse without him 🙂

Ardour Scroomer 4

Audun continues his excellent work on the scroomer and piano bar. Not much left for me to do, but here are 2 additional ideas that might fall into the too-much department 😉



Indicating notes as they are played on the piano bar. The buttons are clickable and have a pressed look, but it’s better to have arriving notes be displayed differently. Velocity can be shown as bars taking a percentage of the keys. Perhaps even with colours like on gain meters.

Rows that contain notes could be marked on the scroomer to make it obvious where the range or ranges of interest are.

Ardour Scroomer 3