diff options
author | Sean Davis <smd.seandavis@gmail.com> | 2020-06-21 10:56:03 -0400 |
---|---|---|
committer | Sean Davis <smd.seandavis@gmail.com> | 2020-06-21 10:56:03 -0400 |
commit | 9c50d93d3c52623183e3562ed3f033533a672fbc (patch) | |
tree | 210611a96c8738d8616ec085d9ec5319b2bfe73c /src | |
parent | af2287e149d580fe35b5b77aaf5f30d4ea545c74 (diff) | |
download | lightdm-gtk-greeter-git-9c50d93d3c52623183e3562ed3f033533a672fbc.tar.gz |
Add support for Ayatana indicators (fixes #74)
Diffstat (limited to 'src')
-rw-r--r-- | src/Makefile.am | 29 | ||||
-rw-r--r-- | src/lightdm-gtk-greeter.c | 31 |
2 files changed, 49 insertions, 11 deletions
diff --git a/src/Makefile.am b/src/Makefile.am index 209e46e..fb717f9 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -40,6 +40,7 @@ AM_CPPFLAGS = \ -DCONFIG_FILE=\""$(sysconfdir)/lightdm/lightdm-gtk-greeter.conf"\" \ -DINDICATOR_DIR=\""$(INDICATORDIR)"\" \ -DUNITY_INDICATOR_DIR=\""$(UNITY_INDICATORDIR)"\" \ + -DAYATANA_INDICATOR_DIR=\""$(AYATANA_INDICATORDIR)"\" \ $(WARN_CFLAGS) lightdm_gtk_greeter_CFLAGS = \ @@ -47,9 +48,7 @@ lightdm_gtk_greeter_CFLAGS = \ $(GMODULE_CFLAGS) \ $(GTHREAD_CFLAGS) \ $(LIGHTDMGOBJECT_CFLAGS) \ - $(LIBX11_CFLAGS) \ - $(LIBINDICATOR_CFLAGS) \ - $(LIBIDO_CFLAGS) + $(LIBX11_CFLAGS) lightdm_gtk_greeter_LDADD = \ $(GTK_LIBS) \ @@ -57,11 +56,31 @@ lightdm_gtk_greeter_LDADD = \ $(GTHREAD_LIBS) \ $(LIGHTDMGOBJECT_LIBS) \ $(LIBX11_LIBS) \ - $(LIBINDICATOR_LIBS) \ - $(LIBIDO_LIBS) \ $(LIBXKLAVIER_LIBS)\ -lm +if HAVE_UNITY_LIBINDICATOR + +lightdm_gtk_greeter_CFLAGS += \ + $(UNITY_LIBINDICATOR_CFLAGS) \ + $(UNITY_LIBIDO_CFLAGS) + +lightdm_gtk_greeter_LDADD += \ + $(UNITY_LIBINDICATOR_LIBS) \ + $(UNITY_LIBIDO_LIBS) + +else + +lightdm_gtk_greeter_CFLAGS += \ + $(AYATANA_LIBINDICATOR_CFLAGS) \ + $(AYATANA_LIBIDO_CFLAGS) + +lightdm_gtk_greeter_LDADD += \ + $(AYATANA_LIBINDICATOR_LIBS) \ + $(AYATANA_LIBIDO_LIBS) + +endif + if MAINTAINER_MODE lightdm-gtk-greeter-ui.h: $(srcdir)/lightdm-gtk-greeter.glade Makefile diff --git a/src/lightdm-gtk-greeter.c b/src/lightdm-gtk-greeter.c index bf1bc6e..4c38e12 100644 --- a/src/lightdm-gtk-greeter.c +++ b/src/lightdm-gtk-greeter.c @@ -35,15 +35,27 @@ #include <glib/gslist.h> #ifdef HAVE_LIBINDICATOR -#include <libindicator/indicator-object.h> -#ifdef HAVE_LIBINDICATOR_NG -#include <libindicator/indicator-ng.h> -#endif + #ifdef HAVE_UNITY_LIBINDICATOR + #include <libindicator/indicator-object.h> + #else + #include <libayatana-indicator/indicator-object.h> + #endif + #ifdef HAVE_LIBINDICATOR_NG + #ifdef HAVE_UNITY_LIBINDICATOR_NG + #include <libindicator/indicator-ng.h> + #else + #include <libayatana-indicator/indicator-ng.h> + #endif + #endif #endif -#ifdef HAVE_LIBIDO /* Some indicators need ido library */ -#include <libido/libido.h> +#ifdef HAVE_LIBIDO + #ifdef HAVE_UNITY_LIBIDO + #include <libido/libido.h> + #else + #include <libayatana-ido/libayatana-ido.h> + #endif #endif #ifdef HAVE_LIBXKLAVIER @@ -1589,10 +1601,17 @@ init_indicators (void) #ifdef HAVE_LIBINDICATOR_NG else { /* service file */ + #ifdef HAVE_UNITY_LIBINDICATOR_NG if (strchr (names[i], '.')) path = g_strdup_printf ("%s/%s", UNITY_INDICATOR_DIR, names[i]); else path = g_strdup_printf ("%s/com.canonical.indicator.%s", UNITY_INDICATOR_DIR, names[i]); + #else + if (strchr (names[i], '.')) + path = g_strdup_printf ("%s/%s", AYATANA_INDICATOR_DIR, names[i]); + else + path = g_strdup_printf ("%s/org.ayatana.indicator.%s", AYATANA_INDICATOR_DIR, names[i]); + #endif io = INDICATOR_OBJECT (indicator_ng_new_for_profile (path, "desktop_greeter", NULL)); } #endif |