Package: budgie-indicator-applet Version: 0.3-1 Tags: patch Severity: wishlist
Dear maintainer of the Budgie Desktop,please find attached a .debdiff that provides some new functionality for the Budgie Indicator Applet.
A small team is currently driving forward the development of a project called Ayatana Indicators. This project has been derived from the Indicator approach we have seen in Ubuntu now for a while.
Unfortunately, the Ubuntu Indicators are limited to the Ubuntu distribution, only. With Ayatana Indicators, we are currently undertaking an effort to make Indicators more portable and usable on all Linux and non-Linux-but-*nix desktops.
The attached .debdiff provides these changes (quoting myself from debian/changelog):
```
budgie-indicator-applet (0.3-1.1+ayatana) UNRELEASED; urgency=medium
* Non-maintainer upload.
* debian/patches:
+ Add 01_ayatana-indicators.patch. Make the package build
against Ubuntu Indicators and Ayatana Indicators alike.
+ Add 02_aytana-indicators-ng.patch. Re-enable (and fix)
Indicators NG file support (loading indicators from service
files.
* debian/control:
+ Add B-Ds: libayatana-indicator3-dev, libayatana-ido3-0.4-dev.
to support building against Ayatana Indicators on Debian. Leaving
Ubuntu Indicators B-Ds in the control file, too, so that on Ubuntu
we can build (see debian/rules) against Ubuntu Indicators.
* debian/rules:
+ Select the Indicator implementation to build against based on the
distribution the package is built for (Debian vs. Ubuntu).
-- Mike Gabriel <[email protected]> Wed, 21 Mar 2018
14:00:27 +0100
```Please consider applying my changes to the package and promoting the patches upstream.
Thanks for your time! Mike -- DAS-NETZWERKTEAM mike gabriel, herweg 7, 24357 fleckeby mobile: +49 (1520) 1976 148 landline: +49 (4354) 8390 139 GnuPG Fingerprint: 9BFB AEE8 6C0A A5FF BF22 0782 9AF4 6B30 2577 1B31 mail: [email protected], http://das-netzwerkteam.de
diff -Nru budgie-indicator-applet-0.3/debian/changelog budgie-indicator-applet-0.3/debian/changelog --- budgie-indicator-applet-0.3/debian/changelog 2016-12-20 11:27:29.000000000 +0100 +++ budgie-indicator-applet-0.3/debian/changelog 2018-03-21 14:00:27.000000000 +0100 @@ -1,3 +1,23 @@ +budgie-indicator-applet (0.3-1.1+ayatana) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * debian/patches: + + Add 01_ayatana-indicators.patch. Make the package build + against Ubuntu Indicators and Ayatana Indicators alike. + + Add 02_aytana-indicators-ng.patch. Re-enable (and fix) + Indicators NG file support (loading indicators from service + files. + * debian/control: + + Add B-Ds: libayatana-indicator3-dev, libayatana-ido3-0.4-dev. + to support building against Ayatana Indicators on Debian. Leaving + Ubuntu Indicators B-Ds in the control file, too, so that on Ubuntu + we can build (see debian/rules) against Ubuntu Indicators. + * debian/rules: + + Select the Indicator implementation to build against based on the + distribution the package is built for (Debian vs. Ubuntu). + + -- Mike Gabriel <[email protected]> Wed, 21 Mar 2018 14:00:27 +0100 + budgie-indicator-applet (0.3-1) unstable; urgency=medium * New upstream release diff -Nru budgie-indicator-applet-0.3/debian/control budgie-indicator-applet-0.3/debian/control --- budgie-indicator-applet-0.3/debian/control 2016-12-18 19:38:39.000000000 +0100 +++ budgie-indicator-applet-0.3/debian/control 2018-03-21 12:08:05.000000000 +0100 @@ -8,9 +8,11 @@ libtool, libgtk-3-dev, libindicator3-dev, + libayatana-indicator3-dev, libpeas-dev, budgie-core-dev, - libido3-0.1-dev + libido3-0.1-dev, + libayatana-ido3-0.4-dev, Standards-Version: 3.9.8 Homepage: https://github.com/UbuntuBudgie/budgie-indicator-applet Vcs-Browser: https://github.com/UbuntuBudgie/budgie-indicator-applet/tree/debian diff -Nru budgie-indicator-applet-0.3/debian/patches/01_ayatana-indicators.patch budgie-indicator-applet-0.3/debian/patches/01_ayatana-indicators.patch --- budgie-indicator-applet-0.3/debian/patches/01_ayatana-indicators.patch 1970-01-01 01:00:00.000000000 +0100 +++ budgie-indicator-applet-0.3/debian/patches/01_ayatana-indicators.patch 2018-03-21 13:02:58.000000000 +0100 @@ -0,0 +1,363 @@ +--- a/configure.ac ++++ b/configure.ac +@@ -19,25 +19,174 @@ + budgie-1.0 >= budgie_required_version + ) + +-INDICATOR_API_VERSION=3 +-INDICATOR_REQUIRED_VERSION=0.3.90 +-INDICATOR_NG_VERSION=0.5 +-INDICATOR_PKG=indicator$INDICATOR_API_VERSION-0.4 +- +-PKG_CHECK_MODULES(INDICATOR, $INDICATOR_PKG >= $INDICATOR_NG_VERSION +- libido3-0.1 >= 0.3.4, +- [AC_DEFINE(HAVE_INDICATOR_NG, 1, "New style indicators support")]) +- +-AC_SUBST(INDICATOR_CFLAGS) +-AC_SUBST(INDICATOR_LIBS) ++UBUNTU_INDICATOR_API_VERSION=3 ++UBUNTU_INDICATOR_REQUIRED_VERSION=0.3.90 ++UBUNTU_INDICATOR_NG_VERSION=0.5 ++UBUNTU_INDICATOR_PKG=indicator$INDICATOR_API_VERSION-0.4 ++ ++AYATANA_INDICATOR_API_VERSION=3 ++AYATANA_INDICATOR_REQUIRED_VERSION=0.6.0 ++AYATANA_INDICATOR_NG_VERSION=0.6.0 ++AYATANA_INDICATOR_PKG=ayatana-indicator$INDICATOR_API_VERSION-0.4 ++ ++AC_ARG_WITH([ayatana-indicators], ++ [AS_HELP_STRING([--with-ayatana-indicators], ++ [build against Ayatana Indicators])], ++ [with_ayatana_indicators='yes'], ++ [with_ayatana_indicators='no'] ++) ++ ++AC_ARG_WITH([ubuntu-indicators], ++ [AS_HELP_STRING([--with-ubuntu-indicators], ++ [build against Ubuntu Indicators])], ++ [with_ubuntu_indicators='yes'], ++ [with_ubuntu_indicators='no'] ++) + +-INDICATORDIR=`$PKG_CONFIG --variable=indicatordir $INDICATOR_PKG` +-INDICATORICONSDIR=`$PKG_CONFIG --variable=iconsdir $INDICATOR_PKG` ++### ++### Look for Ayatana Indicators ++### ++ ++PKG_CHECK_EXISTS(ayatana-indicator3-0.4, ++ [have_ayatanaindicator="yes"], ++ [have_ayatanaindicator="no"]) ++ ++PKG_CHECK_EXISTS(ayatana-indicator3-0.4 >= $AYATANA_INDICATOR_NG_VERSION, ++ [have_ayatanaindicator_ng="yes"], ++ [have_ayatanaindicator_ng="no"]) ++ ++### ++### Look for Ubuntu Indicators ++### ++ ++PKG_CHECK_EXISTS(indicator3-0.4, ++ [have_ubuntuindicator="yes"], ++ [have_ubuntuindicator="no"]) ++ ++PKG_CHECK_EXISTS(indicator3-0.4 >= $UBUNTU_INDICATOR_NG_VERSION, ++ [have_ubuntuindicator_ng="yes"], ++ [have_ubuntuindicator_ng="no"]) ++ ++### decide on what Indicators implementation to use... ++ ++if test "x$have_ayatanaindicator" == "xyes" && ++ test "x$have_ubuntuindicator" != "xyes" && ++ test "x$with_ubuntu_indicators" != "xyes"; then ++ ++ # use Ayatana Indicators (because they are present, and noone is enforcing Ubuntu Indicators) ++ use_ayatanaindicator="yes"; ++ indicator_enforced="no"; ++ ++elif test "x$have_ubuntuindicator" == "xyes" && ++ test "x$have_ayatanaindicator" != "xyes" && ++ test "x$with_ayatana_indicators" != "xyes"; then ++ ++ # use Ubuntu Indicators (because they are present, and noone is enforcing Ayatana Indicators) ++ use_ubuntuindicator="yes"; ++ indicator_enforced="no"; ++ ++elif test "x$have_ubuntuindicator" == "xyes" && ++ test "x$have_ayatanaindicator" == "xyes" && ++ test "x$with_ayatana_indicators" == "xyes"; then ++ ++ # both Indicator implementations are present, and we are asked to use Ayatana Indicators ++ use_ayatanaindicator=yes; ++ indicator_enforced=yes; ++ ++elif test "x$have_ubuntuindicator" == "xyes" && ++ test "x$have_ayatanaindicator" == "xyes" && ++ test "x$with_ubuntu_indicators" == "xyes"; then ++ ++ # both Indicator implementations are present, and we are asked to use Ubuntu Indicators ++ use_ubuntuindicator=yes; ++ indicator_enforced=yes; ++ ++elif test "x$have_ubuntuindicator" == "xyes" && ++ test "x$have_ayatanaindicator" != "xyes" && ++ test "x$with_ayatana_indicators" == "xyes"; then ++ ++ AC_MSG_ERROR([Ubuntu Indicators are present, but you want to build budgie-indicator-applet against Ayatana Indicators. This does not match.]) ++ ++elif test "x$have_ubuntuindicator" != "xyes" && ++ test "x$have_ayatanaindicator" == "xyes" && ++ test "x$with_ubuntu_indicators" == "xyes"; then ++ ++ AC_MSG_ERROR([Ayatana Indicators are present, but you want to build budgie-indicator-applet against Ubuntu Indicators. This does not match.]) ++ ++else ++ ++ AC_MSG_ERROR([Either Ayatana Indicators or Ubuntu Indicators are required to build budgie-indicator-applet.]) ++ ++fi ++ ++### prepare Ayatana or Ubuntu Indicators implementation for the build, regarding to the decision reached above... ++ ++if test "x$use_ayatanaindicator" == "xyes"; then ++ ++ AM_CONDITIONAL(WITH_AYATANA_INDICATOR, true) ++ AM_CONDITIONAL(WITH_UBUNTU_INDICATOR, false) ++ AC_DEFINE(HAVE_AYATANA_INDICATOR, 1, "Ayatana Indicators Support") ++ AC_DEFINE(HAVE_UBUNTU_INDICATOR, 0, "DISABLED: Ubuntu Indicators Support") ++ AC_DEFINE(HAVE_UBUNTU_INDICATOR_NG, 0, "DISABLED: Ubuntu Indicators NG Support") ++ ++ if test "x$indicator_enforced" == "xyes"; then ++ AC_MSG_NOTICE([Using Ayatana Indicators for this build (as requested via configure option).]) ++ else ++ AC_MSG_NOTICE([Using Ayatana Indicators for this build.]) ++ fi ++ ++ if test "x$have_ayatanaindicator_ng" = "xyes"; then ++ PKG_CHECK_MODULES(AYATANA_INDICATOR_NG, ayatana-indicator3-0.4 >= $AYATANA_INDICATOR_NG_VERSION ++ libayatana-ido3-0.4 >= 0.4.0, ++ [AC_DEFINE(HAVE_AYATANA_INDICATOR_NG, 1, "New style indicators support")]) ++ elif test "x$have_ayatanaindicator" = "xyes"; then ++ PKG_CHECK_MODULES(AYATANA_INDICATOR, ayatana-indicator3-0.4 >= $AYATANA_INDICATOR_REQUIRED_VERSION) ++ fi ++ ++ AC_SUBST(AYATANA_INDICATOR_CFLAGS) ++ AC_SUBST(AYATANA_INDICATOR_LIBS) ++ ++elif test "x$use_ubuntuindicator" == "xyes"; then ++ ++ # both Indicator implementations are present, and we are asked to use Ubuntu Indicators ++ AM_CONDITIONAL(WITH_UBUNTU_INDICATOR, true) ++ AM_CONDITIONAL(WITH_AYATANA_INDICATOR, false) ++ AC_DEFINE(HAVE_UBUNTU_INDICATOR, 1, "Ubuntu Indicators Support") ++ AC_DEFINE(HAVE_AYATANA_INDICATOR, 0, "No Ayatana Indicators Support") ++ AC_DEFINE(HAVE_AYATANA_INDICATOR_NG, 0, "No Ayatana Indicators NG Support") ++ ++ if test "x$indicator_enforced" == "xyes"; then ++ AC_MSG_NOTICE([Using Ubuntu Indicators for this build (as requested via configure option).]) ++ else ++ AC_MSG_NOTICE([Using Ubuntu Indicators for this build.]) ++ fi ++ ++ if test "x$have_ubuntuindicator_ng" = "xyes"; then ++ PKG_CHECK_MODULES(UBUNTU_INDICATOR_NG, indicator3-0.4 >= $UBUNTU_INDICATOR_NG_VERSION ++ libido3-0.1 >= 13.10, ++ [AC_DEFINE(HAVE_UBUNTU_INDICATOR_NG, 1, "New style indicators support")]) ++ elif test "x$have_ubuntuindicator" = "xyes"; then ++ PKG_CHECK_MODULES(UBUNTU_INDICATOR, indicator3-0.4 >= $UBUNTU_INDICATOR_REQUIRED_VERSION) ++ fi ++ ++ AC_SUBST(UBUNTU_INDICATOR_CFLAGS) ++ AC_SUBST(UBUNTU_INDICATOR_LIBS) ++ ++fi ++ ++if test "x$use_ubuntuindicator" = "xyes"; then ++ INDICATORDIR=`$PKG_CONFIG --variable=indicatordir indicator3-0.4` ++ INDICATORICONSDIR=`$PKG_CONFIG --variable=iconsdir indicator3-0.4` ++fi ++ ++if test "x$use_ayatanaindicator" = "xyes"; then ++ INDICATORDIR=`$PKG_CONFIG --variable=indicatordir ayatana-indicator3-0.4` ++ INDICATORICONSDIR=`$PKG_CONFIG --variable=iconsdir ayatana-indicator3-0.4` ++fi + + AC_SUBST(INDICATORDIR) + AC_SUBST(INDICATORICONSDIR) + +- + AC_CONFIG_FILES([Makefile + src/Makefile]) + +--- a/src/applet-main.c ++++ b/src/applet-main.c +@@ -26,11 +26,51 @@ + #include <glib/gi18n.h> + #include <gtk/gtk.h> + ++//#if HAVE_UBUNTU_INDICATOR && HAVE_UBUNTU_INDICATOR_NG + //#include <libindicator/indicator-ng.h> ++//#include <libido/libido.h> ++// ++//#define INDICATOR_SERVICE_DIR "/usr/share/unity/indicators" ++//#endif ++ ++//#if HAVE_AYATANA_INDICATOR && HAVE_AYATANA_INDICATOR_NG ++//#include <libayatana-indicator/indicator-ng.h> ++//#include <libayatana-ido/libayatana-ido.h> ++// ++//#define INDICATOR_SERVICE_DIR "/usr/share/ayatana/indicators" ++//#endif ++ ++#if HAVE_UBUNTU_INDICATOR ++ ++#define INDICATOR_SERVICE_APPMENU "libappmenu.so" ++#define INDICATOR_SERVICE_ME "libme.so" ++#define INDICATOR_SERVICE_DATETIME "libdatetime.so" ++ ++#define INDICATOR_SERVICE_APPMENU_NG "com.canonical.indicator.appmenu" ++#define INDICATOR_SERVICE_ME_NG "com.canonical.indicator.me" ++#define INDICATOR_SERVICE_DATETIME_NG "com.canonical.indicator.datetime" ++ + #include <libindicator/indicator-object.h> + + static gchar *indicator_order[] = { "libapplication.so", "libmessaging.so", "libsoundmenu.so", + "libdatetime.so", "libsession.so", NULL }; ++#endif ++ ++#if HAVE_AYATANA_INDICATOR ++ ++#define INDICATOR_SERVICE_APPMENU "libayatana-appmenu.so" ++#define INDICATOR_SERVICE_ME "libayatana-me.so" ++#define INDICATOR_SERVICE_DATETIME "libayatana-datetime.so" ++ ++#define INDICATOR_SERVICE_APPMENU_NG "org.ayatana.indicator.appmenu" ++#define INDICATOR_SERVICE_ME_NG "org.ayatana.indicator.me" ++#define INDICATOR_SERVICE_DATETIME_NG "org.ayatana.indicator.datetime" ++ ++#include <libayatana-indicator/indicator-object.h> ++ ++static gchar *indicator_order[] = { "libayatana-application.so", "libayatana-messaging.so", "libayatana-soundmenu.so", ++ "libayatana-datetime.so", "libayatana-session.so", NULL }; ++#endif + + #define MENU_DATA_INDICATOR_OBJECT "indicator-object" + #define MENU_DATA_INDICATOR_ENTRY "indicator-entry" +@@ -602,8 +642,7 @@ + } + + /* +-#define INDICATOR_SERVICE_DIR "/usr/share/unity/indicators" +- ++#if HAVE_AYATANA_INDICATOR_NG || HAVE_UBUNTU_INDICATOR_NG + void + load_indicators_from_indicator_files (GtkWidget *menubar, gint *indicators_loaded) + { +@@ -629,24 +668,15 @@ + indicator = indicator_ng_new_for_profile (filename, "desktop", &error); + g_free (filename); + +-*#ifdef INDICATOR_APPLET_APPMENU +- if (g_strcmp0(name, "com.canonical.indicator.appmenu")) { ++ if (!g_strcmp0(name, INDICATOR_SERVICE_APPMENU_NG)) { + continue; + } +-#else +- if (!g_strcmp0(name, "com.canonical.indicator.appmenu")) { ++ if (!g_strcmp0(name, INDICATOR_SERVICE_ME_NG)) { + continue; + } +-#endif +-#ifdef INDICATOR_APPLET +- if (!g_strcmp0(name, "com.canonical.indicator.me")) { ++ if (!g_strcmp0(name, INDICATOR_SERVICE_DATETIME_NG)) { + continue; + } +- if (!g_strcmp0(name, "com.canonical.indicator.datetime")) { +- continue; +- } +-#endif +-* + if (indicator) { + load_indicator(menubar, INDICATOR_OBJECT (indicator), name); + count++; +@@ -661,6 +691,7 @@ + g_dir_close (dir); + } + */ ++//#endif /* HAVE_AYATANA_INDICATOR_NG || HAVE_UBUNTU_INDICATOR_NG */ + + static gboolean load_module(const gchar *name, GtkWidget *menubar) + { +@@ -691,13 +722,13 @@ + const gchar *name; + gint count = 0; + while ((name = g_dir_read_name(dir)) != NULL) { +- if (!g_strcmp0(name, "libappmenu.so")) { ++ if (!g_strcmp0(name, INDICATOR_SERVICE_APPMENU)) { + continue; + } +- if (!g_strcmp0(name, "libme.so")) { ++ if (!g_strcmp0(name, INDICATOR_SERVICE_ME)) { + continue; + } +- if (!g_strcmp0(name, "libdatetime.so")) { ++ if (!g_strcmp0(name, INDICATOR_SERVICE_DATETIME)) { + continue; + } + g_debug("zzz a: %s", name); +--- a/src/applet.c ++++ b/src/applet.c +@@ -181,6 +181,10 @@ + + gint indicators_loaded = 0; + ++//#if HAVE_AYATANA_INDICATOR_NG || HAVE_UBUNTU_INDICATOR_NG ++// ido_init(); ++//#endif ++ + menubar = gtk_menu_bar_new(); + + /* +@@ -202,15 +206,20 @@ + + gtk_icon_theme_append_search_path(gtk_icon_theme_get_default(), INDICATOR_ICONS_DIR); + ++ ++ + load_modules(menubar, &indicators_loaded); + /* + * leave this here - this is the entry point for indicators such as + * indicator-messages. Currently these indicators don't display their + * menu contents correctly - e.g. missing thunderbird from indicator-messages + * drop-down. +- * load_indicators_from_indicator_files (menubar, &indicators_loaded); + */ + ++//#if HAVE_AYATANA_INDICATOR_NG || HAVE_UBUNTU_INDICATOR_NG ++// load_indicators_from_indicator_files (menubar, &indicators_loaded); ++//#endif ++ + if (indicators_loaded == 0) { + /* A label to allow for click through */ + GtkWidget *item = gtk_label_new("No Indicators"); +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -1,3 +1,17 @@ ++if WITH_AYATANA_INDICATOR ++INDICATOR_CFLAGS = $(AYATANA_INDICATOR_CFLAGS) \ ++ $(AYATANA_INDICATOR_NG_CFLAGS) ++INDICATOR_LIBS = $(AYATANA_INDICATOR_LIBS) \ ++ $(AYATANA_INDICATOR_NG_LIBS) ++endif ++ ++if WITH_UBUNTU_INDICATOR ++INDICATOR_CFLAGS = $(UBUNTU_INDICATOR_CFLAGS) \ ++ $(UBUNTU_INDICATOR_NG_CFLAGS) ++INDICATOR_LIBS = $(UBUNTU_INDICATOR_LIBS) \ ++ $(UBUNTU_INDICATOR_NG_LIBS) ++endif ++ + include $(top_srcdir)/common.mk + + plugindir = $(libdir)/budgie-desktop/plugins diff -Nru budgie-indicator-applet-0.3/debian/patches/02_aytana-indicators-ng.patch budgie-indicator-applet-0.3/debian/patches/02_aytana-indicators-ng.patch --- budgie-indicator-applet-0.3/debian/patches/02_aytana-indicators-ng.patch 1970-01-01 01:00:00.000000000 +0100 +++ budgie-indicator-applet-0.3/debian/patches/02_aytana-indicators-ng.patch 2018-03-21 13:46:58.000000000 +0100 @@ -0,0 +1,133 @@ +--- a/src/applet-main.c ++++ b/src/applet-main.c +@@ -26,19 +26,17 @@ + #include <glib/gi18n.h> + #include <gtk/gtk.h> + +-//#if HAVE_UBUNTU_INDICATOR && HAVE_UBUNTU_INDICATOR_NG +-//#include <libindicator/indicator-ng.h> +-//#include <libido/libido.h> +-// +-//#define INDICATOR_SERVICE_DIR "/usr/share/unity/indicators" +-//#endif +- +-//#if HAVE_AYATANA_INDICATOR && HAVE_AYATANA_INDICATOR_NG +-//#include <libayatana-indicator/indicator-ng.h> +-//#include <libayatana-ido/libayatana-ido.h> +-// +-//#define INDICATOR_SERVICE_DIR "/usr/share/ayatana/indicators" +-//#endif ++#if HAVE_UBUNTU_INDICATOR && HAVE_UBUNTU_INDICATOR_NG ++#include <libindicator/indicator-ng.h> ++ ++#define INDICATOR_SERVICE_DIR "/usr/share/unity/indicators" ++#endif ++ ++#if HAVE_AYATANA_INDICATOR && HAVE_AYATANA_INDICATOR_NG ++#include <libayatana-indicator/indicator-ng.h> ++ ++#define INDICATOR_SERVICE_DIR "/usr/share/ayatana/indicators" ++#endif + + #if HAVE_UBUNTU_INDICATOR + +@@ -603,8 +601,15 @@ + indicator_object_set_environment(io, (const GStrv)indicator_env); + g_debug("zzz load_indicator %s", name); + /* Attach the 'name' to the object */ +- int pos = name2order(name); + ++#if HAVE_AYATANA_INDICATOR_NG || HAVE_UBUNTU_INDICATOR_NG ++ int pos = 5000 - indicator_object_get_position(io); ++ if (pos > 5000) { ++ pos = name2order(name); ++ } ++#else ++ int pos = name2order(name); ++#endif + g_object_set_data(G_OBJECT(io), IO_DATA_ORDER_NUMBER, GINT_TO_POINTER(pos)); + + /* Connect to its signals */ +@@ -641,7 +646,6 @@ + g_list_free(entries); + } + +-/* + #if HAVE_AYATANA_INDICATOR_NG || HAVE_UBUNTU_INDICATOR_NG + void + load_indicators_from_indicator_files (GtkWidget *menubar, gint *indicators_loaded) +@@ -690,8 +694,7 @@ + + g_dir_close (dir); + } +-*/ +-//#endif /* HAVE_AYATANA_INDICATOR_NG || HAVE_UBUNTU_INDICATOR_NG */ ++#endif /* HAVE_AYATANA_INDICATOR_NG || HAVE_UBUNTU_INDICATOR_NG */ + + static gboolean load_module(const gchar *name, GtkWidget *menubar) + { +--- a/src/applet.c ++++ b/src/applet.c +@@ -16,10 +16,21 @@ + + #define _GNU_SOURCE + ++#include <config.h> ++ + #include "applet.h" + #include <budgie-desktop/plugin.h> + #include <gobject/gobject.h> + ++#if HAVE_UBUNTU_INDICATOR && HAVE_UBUNTU_INDICATOR_NG ++#include <libido/libido.h> ++#endif ++ ++#if HAVE_AYATANA_INDICATOR && HAVE_AYATANA_INDICATOR_NG ++#include <libayatana-ido/libayatana-ido.h> ++#endif ++ ++ + void load_modules(GtkWidget *menubar, gint *indicators_loaded); + void load_indicators_from_indicator_files(GtkWidget *menubar, gint *indicators_loaded); + +@@ -175,16 +186,16 @@ + */ + static void appindicator_applet_init(AppIndicatorApplet *self) + { ++#if HAVE_AYATANA_INDICATOR_NG || HAVE_UBUNTU_INDICATOR_NG ++ ido_init(); ++#endif ++ + GtkWidget *eventbox = NULL; + GtkWidget *menubar = NULL; + GSettings *settings = NULL; + + gint indicators_loaded = 0; + +-//#if HAVE_AYATANA_INDICATOR_NG || HAVE_UBUNTU_INDICATOR_NG +-// ido_init(); +-//#endif +- + menubar = gtk_menu_bar_new(); + + /* +@@ -209,16 +220,10 @@ + + + load_modules(menubar, &indicators_loaded); +- /* +- * leave this here - this is the entry point for indicators such as +- * indicator-messages. Currently these indicators don't display their +- * menu contents correctly - e.g. missing thunderbird from indicator-messages +- * drop-down. +- */ + +-//#if HAVE_AYATANA_INDICATOR_NG || HAVE_UBUNTU_INDICATOR_NG +-// load_indicators_from_indicator_files (menubar, &indicators_loaded); +-//#endif ++#if HAVE_AYATANA_INDICATOR_NG || HAVE_UBUNTU_INDICATOR_NG ++ load_indicators_from_indicator_files (menubar, &indicators_loaded); ++#endif + + if (indicators_loaded == 0) { + /* A label to allow for click through */ diff -Nru budgie-indicator-applet-0.3/debian/patches/series budgie-indicator-applet-0.3/debian/patches/series --- budgie-indicator-applet-0.3/debian/patches/series 1970-01-01 01:00:00.000000000 +0100 +++ budgie-indicator-applet-0.3/debian/patches/series 2018-03-21 12:27:54.000000000 +0100 @@ -0,0 +1,2 @@ +01_ayatana-indicators.patch +02_aytana-indicators-ng.patch diff -Nru budgie-indicator-applet-0.3/debian/rules budgie-indicator-applet-0.3/debian/rules --- budgie-indicator-applet-0.3/debian/rules 2016-12-18 19:38:39.000000000 +0100 +++ budgie-indicator-applet-0.3/debian/rules 2018-03-21 12:07:20.000000000 +0100 @@ -7,11 +7,17 @@ DPKG_EXPORT_BUILDFLAGS = 1 include /usr/share/dpkg/buildflags.mk +ifeq ($(shell dpkg-vendor --is Ubuntu && echo yes),yes) +INDICATOR_IMPLEMENTATION=--with-ubuntu-indicators=yes +else +INDICATOR_IMPLEMENTATION=--with-ayatana-indicators=yes +endif + %: dh $@ override_dh_auto_configure: - dh_auto_configure -- --prefix=/usr --libdir=/usr/lib + dh_auto_configure -- --prefix=/usr --libdir=/usr/lib $(INDICATOR_IMPLEMENTATION) override_dh_auto_install: dh_auto_install
pgpAAra9ofS1d.pgp
Description: Digitale PGP-Signatur

