
I have now committed the patch [1],[2] I've been working on for quite some time. It gives Inkscape a dock panel right of the canvas on which dialogs can be docked. A part of an external library, GDL, has been included in the tree with this patch, this had to be done as GDL isn't widely available and the fact it demanded some Inkscape specific customizations. The good thing is that this implies that Inkscape's list of dependencies remains unchanged.
The design of the dialog system allows the new dockable dialog behavior to exist along side the old floating dialogs behavior. If the old behavior is preferred, one can select it under Inkscape Preferences > Windows > Dialog behavior.
Know issues -----------
* It doesn't work well with multiple open documents. Fixing it requires a bit of rewrite of the current dialog manager. I'll focus on doing this before the code freeze.
* Resizing in-dock dialogs can be cumbersome. More specifically, one won't be able to expand a dialog placed in the dock unless all dialogs beneath it are expanded in advance. Fixing this requires some changes in GDL, I've got it somewhat working, but decided that it's still too flaky to commit in its current state.
* Remembered positions of dockable floating dialogs is inexact. For me (using Metacity), I'm not able to get the exact position of dockable floating dialogs, the values I get are off by an unpredictable number of pixels. Could be related to the problems described here: http://www.gtk.org/api/2.6/gtk/GtkWindow.html#gtk-window-get-position
* Compiler warnings. Including GDL in the tree introduced a lot of compiler warnings. They're not serious, but it looks bad...
Note that this change only applies to gtkmm:ified dialogs, i.e. dialogs that subclass UI::Dialog. I've gtkmm:ified "Fill & Stroke" and with this change, that version is now default. Dialogs left to be gtkmm:ified are the "XML Editor", "Tiled Clones", "Object Properties" (though it's about to be removed/replaced IIRC), "Text and Font". The "Find" dialog has been gtkmm:ified by Johan but is disabled by default as it needs testing (please help).
Now let's hope I didn't break something important... ;)
1.https://sourceforge.net/tracker/?func=detail&atid=604308&aid=1688508... 2.http://www.nabble.com/-PATCH--Dockable-dialogs%2C-and-some-concerns...-tf346...
-- Gustav