diff options
author | Ted Gould <ted@gould.cx> | 2011-06-10 14:28:37 -0500 |
---|---|---|
committer | Ted Gould <ted@gould.cx> | 2011-06-10 14:28:37 -0500 |
commit | 29fe1a919a1dbfb9252671f234fbcde475d43031 (patch) | |
tree | 22164d0a1ca3f68803a3897839d1d7ce12df825c | |
parent | 9b9d8e12052e8df83f544287f2105d14f996a6ce (diff) | |
parent | 6eb44e9133dc234ce48cf27454575a3cebf0376d (diff) | |
download | ayatana-indicator-session-29fe1a919a1dbfb9252671f234fbcde475d43031.tar.gz ayatana-indicator-session-29fe1a919a1dbfb9252671f234fbcde475d43031.tar.bz2 ayatana-indicator-session-29fe1a919a1dbfb9252671f234fbcde475d43031.zip |
GTK3 Support
-rw-r--r-- | configure.ac | 34 | ||||
-rw-r--r-- | src/Makefile.am | 4 | ||||
-rw-r--r-- | src/indicator-session.c | 5 | ||||
-rw-r--r-- | src/session-service.c | 2 |
4 files changed, 35 insertions, 10 deletions
diff --git a/configure.ac b/configure.ac index 04f9cd5..afa82f0 100644 --- a/configure.ac +++ b/configure.ac @@ -26,28 +26,44 @@ m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])]) ########################### GTK_REQUIRED_VERSION=2.12 +GTK3_REQUIRED_VERSION=3.0 INDICATOR_REQUIRED_VERSION=0.3.19 DBUSMENUGTK_REQUIRED_VERSION=0.3.91 POLKIT_REQUIRED_VERSION=0.92 -PKG_CHECK_MODULES(APPLET, gtk+-2.0 >= $GTK_REQUIRED_VERSION - indicator >= $INDICATOR_REQUIRED_VERSION - dbusmenu-gtk-0.4 >= $DBUSMENUGTK_REQUIRED_VERSION) +AC_ARG_WITH([indicator-gtk], + [AS_HELP_STRING([--with-indicator-gtk], + [Which version of gtk to use for the indicator @<:@default=3@:>@])], + [], + [with_indicator_gtk=3]) + +AS_IF([test "x$with_indicator_gtk" = x3], + [PKG_CHECK_MODULES(APPLET, gtk+-3.0 >= $GTK3_REQUIRED_VERSION + indicator3 >= $INDICATOR_REQUIRED_VERSION + dbusmenu-gtk3-0.4 >= $DBUSMENUGTK_REQUIRED_VERSION) + ], + [test "x$with_indicator_gtk" = x2], + [PKG_CHECK_MODULES(APPLET, gtk+-2.0 >= $GTK_REQUIRED_VERSION + indicator >= $INDICATOR_REQUIRED_VERSION + dbusmenu-gtk-0.4 >= $DBUSMENUGTK_REQUIRED_VERSION) + ], + [AC_MSG_FAILURE([Value for --with-indicator-gtk was neither 2 nor 3])] +) AC_SUBST(APPLET_CFLAGS) AC_SUBST(APPLET_LIBS) DBUSMENUGLIB_REQUIRED_VERSION=0.1.1 PKG_CHECK_MODULES(SESSIONSERVICE, dbusmenu-glib-0.4 >= $DBUSMENUGLIB_REQUIRED_VERSION - dbusmenu-gtk-0.4 >= $DBUSMENUGTK_REQUIRED_VERSION + dbusmenu-gtk3-0.4 >= $DBUSMENUGTK_REQUIRED_VERSION dbus-glib-1 gio-unix-2.0 - indicator >= $INDICATOR_REQUIRED_VERSION) + indicator3 >= $INDICATOR_REQUIRED_VERSION) AC_SUBST(SESSIONERVICE_CFLAGS) AC_SUBST(SESSIONERVICE_LIBS) -PKG_CHECK_MODULES(GTKLOGOUTHELPER, gtk+-2.0 >= $GTK_REQUIRED_VERSION +PKG_CHECK_MODULES(GTKLOGOUTHELPER, gtk+-3.0 >= $GTK3_REQUIRED_VERSION polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION) @@ -78,9 +94,12 @@ AC_ARG_ENABLE(localinstall, AS_HELP_STRING([--enable-localinstall], [install all if test "x$with_localinstall" = "xyes"; then INDICATORDIR="${libdir}/indicators/2/" INDICATORICONSDIR="${datadir}/indicator-applet/icons/" -else +elif test "x$with_indicator_gtk" = x2; then INDICATORDIR=`$PKG_CONFIG --variable=indicatordir indicator` INDICATORICONSDIR=`$PKG_CONFIG --variable=iconsdir indicator` +else + INDICATORDIR=`$PKG_CONFIG --variable=indicatordir indicator3` + INDICATORICONSDIR=`$PKG_CONFIG --variable=iconsdir indicator3` fi AC_SUBST(INDICATORDIR) AC_SUBST(INDICATORICONSDIR) @@ -160,4 +179,5 @@ AC_MSG_NOTICE([ SUS Indicator Configuration: Prefix: $prefix + Indicator GTK: $with_indicator_gtk ]) diff --git a/src/Makefile.am b/src/Makefile.am index 4fa43b9..0317de7 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -69,13 +69,13 @@ users-service-marshal.c: $(srcdir)/users-service.list gen-%.xml.c: %.xml @echo "Building $@ from $<" - @echo "const char * _$(subst -,_,$(subst .,_,$(basename $<))) = " > $@ + @echo "const char * _$(subst -,_,$(subst .,_,$(basename $(notdir $<)))) = " > $@ @sed -e "s:\":\\\\\":g" -e s:^:\": -e s:\$$:\\\\n\": $< >> $@ @echo ";" >> $@ gen-%.xml.h: %.xml @echo "Building $@ from $<" - @echo "extern const char * _$(subst -,_,$(subst .,_,$(basename $<)));" > $@ + @echo "extern const char * _$(subst -,_,$(subst .,_,$(basename $(notdir $<))));" > $@ ################# # Session Stuff diff --git a/src/indicator-session.c b/src/indicator-session.c index e8a2f97..c9617c4 100644 --- a/src/indicator-session.c +++ b/src/indicator-session.c @@ -29,7 +29,12 @@ with this program. If not, see <http://www.gnu.org/licenses/>. #include <glib/gi18n-lib.h> #include <gtk/gtk.h> #include <gio/gio.h> + +#if GTK_CHECK_VERSION(3, 0, 0) +#include <libdbusmenu-gtk3/menu.h> +#else #include <libdbusmenu-gtk/menu.h> +#endif #include <libindicator/indicator.h> #include <libindicator/indicator-object.h> diff --git a/src/session-service.c b/src/session-service.c index dc53f74..ddcb7cb 100644 --- a/src/session-service.c +++ b/src/session-service.c @@ -36,7 +36,7 @@ with this program. If not, see <http://www.gnu.org/licenses/>. #include <libdbusmenu-glib/server.h> #include <libdbusmenu-glib/menuitem.h> #include <libdbusmenu-glib/client.h> -#include <libdbusmenu-gtk/menuitem.h> +#include <libdbusmenu-gtk3/menuitem.h> #include <libindicator/indicator-service.h> |