
~suv,
thanks as always for your insightful comments. Sorry for the belated reply, I've been busy with work.
99 times out of 100, refactoring is best. However, there are exceptions.
Refactoring the menubar machinery in a way that works for all platforms is a major undertaking. It would be a significant investment of time. I think it would be nice to be able to provide a 0.48.4 release to the Mac users out there, who have been left behind for quite some time.
I've come up with a solution that is not a hack, but not even refactoring. As a matter of fact, Inkscape has already 80 % of the code needed to work with a unified menubar.
Would you, Victor, or any other willing test this version:
https://rapidshare.com/files/2954353212/Inkscape-0.48.4-10.7%2B-x86_64.dmg
It has a unified MacOSX menu for all windows/document/views. I don't know, however, what the unified menu does to dynamic menu items. Check marks are there and they seem to be ok for me. This version has also a working python installation. The application menu Quit item is not yet integrated with the app. It will be soon.
~suv, I've seen you comments in the bug reports and will reply, as time permits.
Valerio
Commenting here even though the topic is quickly getting way above my head: Personally, I wonder whether it's really about adding some hack, or more about efforts at refactoring some of Inkscape's code base? As I had tried to convey with information provided in earlier replies, some of the issues with the menubar integration also seem to similarly affect Inkscape e.g. on Ubuntu under Unity with the global menu (no icons and keyboard shortcuts for menu items, the 'File > Open Recent' sub-menu is broken in the same way, the toggle state can get out of sync, e.g when working with multiple windows, etc).
Possibly a somewhat related discussion, started during an earlier effort to advance the OS X menu integration of Inkscape: http://inkscape.13.n6.nabble.com/Verbs-SPAction-versus-GtkAction-tt2806978.html
Maybe this should or could be addressed indeed by a refactoring of Inkscape's code base, possibly with increased focus on what GTK3 might offer right now or plans to support? AFAIU at least for the Quartz backend GTK3 already includes menubar integration code which does not require to depend / link against the external gtk-mac-integration library anymore (there's a small demo app installed alongside gtk3-demo, which uses the native global menubar on OS X [1]).
Similarly, the problem with the modifiers in my understanding is likely to require quite a bit of refactoring - GIMP 2.8 is my reference in this regard: AFAICT the GIMP team rewrote large parts of the modifier code last year [2] (IIRC after some refactoring had occurred in upstream GTK2 2.24 first), and now the application out-of-the-box seems to handle modifier keys depending on the backend used for GTK2: on OS X 10.7, my local X11-based build of GIMP 2.8.2 has the (usual) 'Ctrl' modifier in shortcuts, whereas the Quartz-based build of the same GIMP version uses 'Cmd' instead. This is what I'd also like to expect from Inkscape.