Skip to content

GNOME/gtk-mac-integration

Repository files navigation

Gtk-mac-integration Version 3.0.2

Provides integration for Gtk+ applications into the Mac desktop, with
support for the Mac menubar, the Dock, and for finding resources in
bundles. GtkosxApplication is gobject-introspectable.

GtkosxApplication compiles and works with i386, x86_64 and arm64.  New
Gtk3 applications should prefer the GApplication/GtkApplication and
GMenuModel/GMenu APIs which make this library unnecessary. Gtk4
applications must use those facilities as the older API on which this
libary depends have been remobed.

Example and test code may be found in src/test-integration.c; Being
GUI code this library is somewhat resistant to useful automated
testing. Very rudimentary example usage in Python using
gobject-introspection is in src/test-introspection.py.

GtkosxApplication is well documented using Gtk-Doc. To build the
documentation, pass --enable-gtk-doc to configure. A current copy may
be found online at https://jralls.github.io/gtk-mac-integration with additional information at https://wiki.gnome.org/Projects/GTK%2B/OSX/.

Gtk-mac-integration may be built for either Gtk+-2, Gtk+-3, or since
version 2.0.7 both. Because it's not possible to link both
libgtk-quartz-2.0.dylib and libgtk-3.dylib, from version 2.0.7 on it
builds libgtkmacintegration-gtk2.dylib and/or
libgtkmacintegration-gtk3.dylib and provides separate pkgconfig files,
gtk-mac-integration-gtk2.pc and gtk-mac-integration-gtk3.pc, for the
respective gtk library versions. Since version 2.0.8 it also provides
gtk-mac-integration.pc which is a copy of gtk-mac-integration-gtk2.pc
*unless only libgtk-mac-integration-gtk3 is built*. This is to avoid
breakage of applications last updated before version
2.0.7. Application maintainers are urged not to depend on this as it
may not work in all environments and to update their applications to
use the appropriate version-specific pc file.