Hi,
got it. unfortunately some things are not quite right:
- The executable is still linked to some libraries in /opt/local.
See the console messages at the end of my e-mail.
Argh... should be fixable setting good env in Info.plist. I hate those GTK engines laying in the separate lib folder, it would be nicer it is was libgtk-2.10.0-engine-pixmap.dylib or something similar in flat lib structure.
- The display is really slow compared to the X11 version
(particularly noticeable in the calligraphy tool for example). My guess is that it is GTK related but it can also be something on our end.
You're right, it is noticeably slow, but yet if you consider fact Quartz is really hardware optimized, this makes me believe that Inkscape on OSX can run really fast.
For these changes, I would suggest to:
- either create a completely new bundling script (like osx-app-
native.sh)
- or add and option to osx-app to do the native things
In both cases, it really should not disturb current behavior. We're near release, there are very few people working on OS X (and that's great you're a new one!) so we can't afford breaking things right now.
That's pretty clear for me, it's not first project I'm sticking my fingers in :P, so I understand all the patches makes sense it they leave the other platform builds (code) intact (including OSX X11 brand). I'll try to make osx-build.sh and osx-app.sh to have some "native" switch, basically all differences lay actually in osx-app.sh. Also frankly the reason I'm playing with this port is that I want to learn more about internals of OSX and differences between the systems I already know like Windows or Linux :)
That's strange, It works perfectly for me (not that I change colors everyday but I tested it quite a bit).
On my Leopard: $ defaults read "Apple Global Domain" AppleAquaColorVariant 2008-01-14 11:39:44.233 defaults[1163:10b] The domain/default pair of (kCFPreferencesAnyApplication, AppleAquaColorVariant) does not exist
This makes some sync_osx_look.sh variables to be "" and the final gtkrc is invalid, and the result is no ClearLooks at all. There's also one little thing that is not taken into consideration, the path where pre_gtkrc may be not writable to the user at all (if the Inkscape.app was installed by other user or administrator), so then the sync_osx_look.sh won't work at all.
The best way it would be to have a native Aqua engine using some Carbon calls like it is done for Windows, so it will render all UI parts as in native app. I just wonder if Apple is exposing some widget parts rendering functions in Carbon or how they did it in QT.
Yes apparently there was a problem with some icons. Now even my build works. It suffers from the same problem your build has however. It does not give all the warnings about missing libraries but this is not suprising since it finds them on my system. Could you please test it and report if it works on yours: http://inkscape.modevia.com/macosx-snap/Inkscape-17015-i386-native_expriment... (PS: my native gtk tree is in a non-standard place so it should fail on your system is the app bundle is misconfigured)
I gonna test this & tell you the results later today.
Depending on how heavy the work is, I'll just ask that you have SVN access. As long as you restrict your commits to packaging/macosx there should be no problem (check your diffs! ;) ). If you plan to change other things, please ask on the list beforehand. Changes are particularly sensible right now.
I'll try to prepare some good looking patch 1st and post in onto mailing list first, so I would like to be careful not to break anything for upcoming release.
Thanks again for your hard work. I don't have much free time right now but in two months or so I'll be freer and, with your help, we'll add world class support for OS X in Inkscape. I look forward to this.
Yeah, Inkscape is IMHO best open-source vector drawing program, so having a "world class support" for OSX, which is kinda graphic & other artists platform is pretty nice idea.
Cheers,