Re: EasyTAG on OS X



Hey David,

On Sun, Aug 18, 2013 at 6:34 AM, David King <amigadave amigadave com> wrote:
Hi Tony


On 2013-08-17 22:54, Tony Young <tony rfw name> wrote:

I've written a preliminary set of patches for EasyTAG on OS X and
committed them to GitHub repo: https://github.com/rfw/easytag-mac


I had a quick look at the commits, and they seem relatively simple. Thanks!
Do you know if there is anything that can be salvaged from the previous
effort to have an EasyTAG build for Mac OS X:


https://github.com/rfw/easytag-mac


I assume you're talking about http://marcoschuh.de/wp/?page_id=411 --
I took a look at it and it seems to do roughly the same things I did
(except without ifdefs for non-OS X).

It ifdefs some OS X-specific behavior using gtk-osx-integration, so it
should build as usual on other platforms. However, the changes are a
bit messy (particularly how I've ifdeffed <Control> to <Meta> on OS
X). I've also managed to build it with GTK3 with some effort and it
works great.


Is there any chance that the menu and primary (Control/Meta) changes would
not be needed with a port to GTK+ 3 and GtkApplication? If so, I would much
rather do that and avoid having ifdefs that I will rarely test. I would be
happy to do the associated cleanup and refactoring for good GTK+ 3
integration (GAction and GMenu support, mostly).


There isn't any automatic support for OS X menus in GTK3 either, so
unfortunately there needs to be ifdef'd sections for proper OS X
support -- the application can build without the optional menu
support, but just looks really out of place on OS X.

There's a function in `GtkosxApplication` called
`gtk_osxapplication_set_use_quartz_accelerators` that implies that it
would fix the shortcuts appropriately -- but doesn't, so I don't
believe gtk-mac-integration has support for modifying key bindings
automatically.


Let me know what you think! Hopefully there'll be some official builds
of EasyTAG for OS X soon ;)


Was it much effort to build all the dependencies, or is it possible to rely
on MacPorts or something similar?


The GTK dependencies were all pulled in from jhbuild and the libraries
for media files (libogg, libid3tag etc.) were from Brew. There doesn't
seem to be any problem with linking libraries in both places and, when
bundling, gtk-mac-bundler pulls libraries from both locations into the
app bundle.

Building for GTK3 on OS X is painful and requires a lot of fiddling
around with dependencies and patches for installing
gnome-themes-standard so users aren't stuck with Raleigh, but when
better support for GTK3 in jhbuild arrives, it should build fairly
painlessly.

Cheers,
Tony


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]