Hi Jo,
Sorry it took me a while to write you a proper answer, I've started writing this mail this morning.. and now sending it finally in the night. Too many things to do in meantime.
could you add this to the wiki please. that's what the wiki is for in the first place actually! you probably need to register since there were some spam problems before registration was required (grrrr spammers).
No problem, I'll try to fetch Wiki with those infos this weekend. GTK is under heavy OSX changes lately and MacPorts don't really follow recent GTK releases which fix lots of bugs relative to Mac Quartz version.
Well, I think that's a matter of taste. I tested Leopardish and other themes before using the Clearlooks based one and chose Clearlooks because:
- the engine is more efficient
Yeah, Leopardish is HEAVILY pixmap based. I just like Leopardish coz Inkscape really looks like native app, while any discussion about tastes is endless usually, so let's leave the Inkscape with the Clearlooks (as it is) and focus more on making Inkscape running agile on OSX.
- I really dislike the glob-pseudo-aqua-like buttons this theme uses
on the toolbar
Isn't this because toolbox is NOT a GTK toolbar? or maybe it is opposite ;P, notice that top toolbars look slightly different.
- the tabs look approximative too
overall this (and this kind of) themes are usually taking bitmaps from OS X but assembling them too poorly to make the themes look convincing. So I preferred to take a completely different route and choose a theme that look professional and was not too alien on OS X. Of course this is open to change if enough people prefer a different theme, but overall, there's no Leopard-like (or more generally OS X- like) theme which satisfies me currently. I really think that the only way we'll get something satisfying is by writing a completely new engine.
Well, the best way it would be to have the engine that will render the parts of the Aqua interface natively, but it is now just a wish, nothing more ;) Still I think most important for the OSX version is that it is robust, so probably lighter theme is better.
- Changed GTK theme (with gtk-chtheme) to Leopardish and font
"Geneva 11pt" - MacOSX default
The theme was previously set by the startup script. I guess we'll probably keep it in the end. We'll see. The font OS X uses is Lucida Grande 12 pt by the way.
Ahh.. you got me, I'm pretty fresh guy to OSX.. before working most on Windows, you're pretty right it is Lucida. I just read on some "lucky me" Google page that's Geneva, but it was wrong.
- Applied my own-cooked patch
Inkscape_OSX_native_menu_and_toolbars.patch (attached) <Inkscape_OSX_native_menu_and_toolbars.patch>
- src/widgets/toolbox.cpp: removes tb_s, tb_e spacers from the
toolbars to they DON'T have ugly underlines (who did invent this anyway, this produces ugly look in most GTK themes where toolbars are 2x inset in the GUI, I believe this should be removed anyway in all builds (platforms))
I left this away from the patch
Yet it was commited by Bulia Byak (thanks!)
- src/ige-mac-menu.[c/h]: sources for native Carbon Mac top menu
wrapper instead of having the menu inside the window (taken from GIMP sources)
- src/interface.cpp: use ige_mac_menu_set_menu_bar on native GTK
(Quartz) for menu and return NULL so no menu is displayed in the Window itself
- configure.ac: add Carbon checking and libs define required ige-
mac-menu
- src/Makefile_insert: add Carbon libs and ige-mac-menu sources
I added this (it's in SVN right now actually)
Great!
I also did this. Yet Inkscape native still crashes on startup with the crash log below. did this occur to you also? on what platform and os version are you by the way?
I'm at Leopard 10.5.1 MacBook Pro Intel C2D.
Hmm... that's pretty bizzare it did crash for you. Are you sure gtk2 got properly updated with MacPorts, maybe Inkscape is still somehow referring to old libraries? Well frankly I've also did update glib2 to 2.15.1 (port edit glib2 -> checksums md5 b3a2ca18e618927d03d39000f2155958), so this may be the clue, while I haven't thought it could be the reson of crashes as it is pretty platform independent and I didn't catch any problems with glib2. Still your crash seems to uccur at gtk2 (quartz):
9 libgdk-quartz-2.0.0.dylib 0x012cb2b8 gdk_event_prepare + 120
OK. So that's probably because of a difference in the keyboard shortcut system between Gimp and Inkscape. I'll commit the ige-mac- menu thing and it would be great if someone knowledgeable could look into this.
I'll try to find out why it doesn't take up the the shortcuts, more interesting is how to make this menu to get updates without nasty trick of returning NULL to the rest of interface ;> Also I'll try in free time to hook bold Inkscape menu with preferences and quit links.
- my tricks with Inkscape.app are as dirty as old tricks for X11
version, I believe that proper solution should anyway place final native binary of Inkscape in Contents/Resources/MacOS and map properly path in Contents/Resources for lib, etc, share,.. and so on without intermediate shell scripts (like mine)
Probably yes. Environment variables can be set in Info.plist if we keep the platypus wrapper. Otherwise there are some python utilities to wrap python applications in an app bundle but I don't know how "hackish" they are.
That's good hint, maybe it can be used to place Inkscape binary directly into Contents/MacOS without any intermediate script.
argh this bug has be present for a while. does it look like the video there: http://jo.irisson.free.fr/?p=34 if this is like this, it is indeed GTK bug and should be investigated jointly from Inkscape and GTK sides.
Well it's not choking as much as on this video, actually it's not choking at all except the moment I resize or reactivate inscape window -> I've recorded something that shows the problem: http://pingu.ii.uj.edu.pl/~ono/download/Inkscape-bad-Quartz-repaint.mov
You could start by putting a zip/dmg of this build somewhere on the net and we'll post it with the devel builds. then it was indeed planned to make a native build available as and "experimental test" for 0.46. Your work makes this much more likely.
I'll try to do so this weekend.
Thanks a lot and please store your knowledge on the wiki.
Sure.
Regards & good night, (At least for all Europeans ;P)