1
0

- Update to version 12.10.1+bzr20200706.298.

OBS-URL: https://build.opensuse.org/package/show/X11:Unity/libappindicator?expand=0&rev=40
This commit is contained in:
Alexei Sorokin 2021-11-26 21:00:03 +00:00 committed by Git OBS Bridge
parent 66733b3bcf
commit a14668d10f
7 changed files with 148 additions and 244 deletions

View File

@ -1,13 +0,0 @@
Index: libappindicator-12.10.1+bzr20170215/src/Makefile.am
===================================================================
--- libappindicator-12.10.1+bzr20170215.orig/src/Makefile.am
+++ libappindicator-12.10.1+bzr20170215/src/Makefile.am
@@ -76,7 +76,7 @@ libappindicator_la_LDFLAGS = \
libappindicator_la_CFLAGS = \
$(LIBRARY_CFLAGS) \
$(COVERAGE_CFLAGS) \
- -Wall -Werror -Wno-error=deprecated-declarations \
+ -Wall -Wno-error=deprecated-declarations \
-DG_LOG_DOMAIN=\"libappindicator\"
libappindicator_la_LIBADD = \

View File

@ -1,3 +1,26 @@
-------------------------------------------------------------------
Sat Nov 20 19:39:20 UTC 2021 - Alexei Sorokin <sor.alexei@meowr.ru>
- Update to version 12.10.1+bzr20200706.298 (chages since
12.10.1+bzr20170215):
* Fix build failures.
* Vendorise indicator-desktop-shortcuts (convenience wrapper
around gdesktopappinfo) from the libindicator project, to drop
the dependency on libindicator as none of the rest of it is
used.
* Don't build with -Werror.
* Drop Python 2 bindings and GObject Introspection for GTK 2
(lp#1740637).
* app-indicator: Don't pass unexpected parameter to signal
emissions (lp#1867996).
* app-indicator: Only check for item numbers when iterating
array (lp#1867996).
* Fall back to tray icon when StatusNotifierHost is not
available.
- Drop libappindicator-no-Werror.patch: fixed upstream.
- Drop only_require_python_for_gtk2.patch: no longer needed.
- Rebase xappstatusicon.patch.
-------------------------------------------------------------------
Sun Dec 20 16:34:27 UTC 2020 - Callum Farmer <gmbr3@opensuse.org>

View File

@ -1,7 +1,7 @@
#
# spec file for package libappindicator
# spec file
#
# Copyright (c) 2020 SUSE LLC
# Copyright (c) 2021 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -18,57 +18,43 @@
%global flavor @BUILD_FLAVOR@%{nil}
%global sname libappindicator
%if "%{flavor}" == ""
ExclusiveArch: do-not-build
%endif
%if "%{flavor}" == "gtk2"
%bcond_without mono
%bcond_without python
%global gtkver 2
%bcond_without mono
%endif
%if "%{flavor}" == "gtk3"
%bcond_with mono
%bcond_with python
%global psuffix 3
%global gtkver 3
%bcond_with mono
%endif
%define sover 1
%define _version 12.10.1+17.04.20170215
%define _version 12.10.1+20.10.20200706.1
Name: libappindicator%{?psuffix}
Version: 12.10.1+bzr20170215
Version: 12.10.1+bzr20200706.298
Release: 0
Summary: Application indicators library
License: LGPL-2.0-only AND LGPL-3.0-only AND GPL-3.0-only
Group: System/Libraries
License: GPL-3.0-only AND LGPL-2.0-only AND LGPL-3.0-only
Group: System/GUI/Other
URL: https://launchpad.net/libappindicator
Source: https://launchpad.net/ubuntu/+archive/primary/+files/%{sname}_%{_version}.orig.tar.gz
# PATCH-FIX-UPSTREAM 0001_Fix_mono_dir.patch hrvoje.senjan@gmail.com -- Fix location of .pc files.
Patch0: 0001_Fix_mono_dir.patch
# PATCH-FIX=UPSTREAM libappindicator-no-Werror.patch dimstar@opensuse.org -- Don't add -Werror on build: the code is aging and does not keep up
Patch2: libappindicator-no-Werror.patch
# PATCH-FIX-OPENSUSE only_require_python_for_gtk2.patch -- Only require Python when building for GTK2
Patch3: only_require_python_for_gtk2.patch
# PATCH-FIX-OPENSUSE make_gtk_doc_optional.patch -- Do not require macros from gtk-doc
Patch4: make_gtk_doc_optional.patch
# PATCH-FIX-UPSTREAM xappstatusicon.patch maurizio.galli@gmail.com -- Original patch by Linux Mint. Include support for XAppStatusIcon by Linux Mint
Patch5: xappstatusicon.patch
Patch1: make_gtk_doc_optional.patch
# PATCH-FIX-OPENSUSE xappstatusicon.patch maurizio.galli@gmail.com -- Original patch by Linux Mint. Include support for XAppStatusIcon by Linux Mint
#Patch2: xappstatusicon.patch
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: fdupes
BuildRequires: libtool
BuildRequires: pkgconfig
BuildRequires: vala
BuildRequires: pkgconfig(gobject-introspection-1.0)
#BuildRequires: pkgconfig(xapp) >= 1.5.0
%if "%{flavor}" == ""
ExclusiveArch: do-not-build
%endif
%if "%{flavor}" == "gtk2"
BuildRequires: pkgconfig(dbusmenu-gtk-0.4)
BuildRequires: pkgconfig(gtk+-2.0)
BuildRequires: pkgconfig(indicator-0.4)
%if %{with python}
BuildRequires: pkgconfig(pygtk-2.0)
%endif
%if %{with mono}
BuildRequires: pkgconfig(gapi-2.0)
BuildRequires: pkgconfig(gtk-sharp-2.0)
@ -76,9 +62,10 @@ BuildRequires: pkgconfig(mono)
BuildRequires: pkgconfig(nunit)
%endif
%else
BuildRequires: vala
BuildRequires: pkgconfig(dbusmenu-gtk3-0.4)
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(indicator3-0.4)
#BuildRequires: pkgconfig(xapp) >= 1.5.0
%endif
%description
@ -86,17 +73,6 @@ A library to allow applications to export a menu into the Unity Menu bar. Based
on KSNI it also works in KDE and will fallback to generic Systray support if
none of those are available.
%package -n python2-appindicator
Summary: Python 2 bindings for libappindicator
Group: Development/Languages/Python
Requires: libappindicator%{sover} = %{version}
# python-appindicator was last used in openSUSE Leap 42.2.
Provides: python-appindicator = %{version}
Obsoletes: python-appindicator < %{version}
%description -n python2-appindicator
This package contains the Python 2 bindings for the appindicator library.
%package -n libappindicator%{sover}
Summary: Application indicators library
Group: System/Libraries
@ -107,24 +83,8 @@ A library to allow applications to export a menu into the Unity Menu bar. Based
on KSNI it also works in KDE and will fallback to generic Systray support if
none of those are available.
%package -n typelib-1_0-AppIndicator-0_1
Summary: Application indicators library
Group: System/Libraries
%description -n typelib-1_0-AppIndicator-0_1
This package contains the GObject Introspection bindings for the appindicator
library.
%package devel
Summary: Development files for libappindicator
Group: Development/Libraries/C and C++
Requires: libappindicator%{?psuffix:%{psuffix}-}%{sover} = %{version}
%description devel
This package contains the development files for the appindicator%{?psuffix} library.
%package -n libappindicator3-%{sover}
Summary: Application indicators library for GTK+3
Summary: Application indicators library for GTK 3
Group: System/Libraries
# Fedora and friends compatibility symbol
Provides: libappindicator-gtk3 = %{version}
@ -134,7 +94,7 @@ A library to allow applications to export a menu into the Unity Menu bar. Based
on KSNI it also works in KDE and will fallback to generic Systray support if
none of those are available.
This package contains the GTK+ 3 version of this library.
This package contains the GTK 3 version of the library.
%package -n typelib-1_0-AppIndicator3-0_1
Summary: Application indicators library
@ -144,15 +104,6 @@ Group: System/Libraries
This package contains the GObject Introspection bindings for the appindicator
library.
%package doc
Summary: Documentation for libappindicator and libappindicator3
Group: Documentation/HTML
BuildArch: noarch
%description doc
This package contains the documentation for the appindicator and appindicator3
libraries.
%package -n appindicator-sharp
Summary: Application indicators library for C#
Group: System/Libraries
@ -171,17 +122,27 @@ Requires: appindicator-sharp = %{version}
%description -n appindicator-sharp-devel
This package contains the development files for the appindicator-sharp library.
%package devel
Summary: Development files for libappindicator
Group: Development/Libraries/C and C++
Requires: libappindicator%{?psuffix:%{psuffix}-}%{sover} = %{version}
%description devel
This package contains the development files for the appindicator%{?psuffix} library.
%package doc
Summary: Documentation for libappindicator and libappindicator3
Group: Documentation/HTML
BuildArch: noarch
%description doc
This package contains the documentation for the appindicator and appindicator3
libraries.
%prep
%setup -q -c
cp ./src/app-indicator.c ./src/app-indicator-gtk2.c
%patch0 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
#patch5 -p1
%autosetup -c -p1
%build
%global optflags %{optflags} -fcommon
# Create dummy file, to avoid dependency on gtk-doc
echo "EXTRA_DIST = " >> gtk-doc.make
autoreconf -vfi
@ -190,16 +151,20 @@ export CSC=%{_bindir}/gmcs
%endif
%configure \
--disable-static \
--disable-gtk-doc \
--disable-mono-test \
--with-gtk=%{gtkver}
make -j1 V=1
--disable-static \
--disable-gtk-doc \
--disable-mono-test \
--with-gtk=%{gtkver}
%make_build
%install
%make_install
find %{buildroot} -type f -name "*.la" -delete -print
%fdupes %{buildroot}%{python2_sitearch}
%if "%{flavor}" == "gtk2"
rm %{buildroot}%{_libdir}/girepository-1.0/AppIndicator3-0.1.typelib
rm %{buildroot}%{_datadir}/gir-1.0/AppIndicator3-0.1.gir
%endif
%post -n libappindicator%{sover} -p /sbin/ldconfig
@ -209,43 +174,36 @@ find %{buildroot} -type f -name "*.la" -delete -print
%postun -n libappindicator3-%{sover} -p /sbin/ldconfig
%if %{with python}
%files -n python2-appindicator
%license COPYING COPYING.LGPL.2.1
%doc README
%dir %{python2_sitearch}/appindicator/
%{python2_sitearch}/appindicator/__init__.py*
%{python2_sitearch}/appindicator/_appindicator.so
%dir %{_datadir}/pygtk/
%dir %{_datadir}/pygtk/2.0/
%dir %{_datadir}/pygtk/2.0/defs/
%{_datadir}/pygtk/2.0/defs/appindicator.defs
%endif
%if "%{flavor}" == "gtk2"
%files -n libappindicator%{sover}
%license COPYING COPYING.LGPL.2.1
%doc README
%{_libdir}/libappindicator.so.%{sover}*
%files -n typelib-1_0-AppIndicator-0_1
%if %{with mono}
%files -n appindicator-sharp
%license COPYING COPYING.LGPL.2.1
%doc README
%{_libdir}/girepository-1.0/AppIndicator-0.1.typelib
%{_libdir}/appindicator-sharp-0.1/
%{_libexecdir}/mono/appindicator-sharp/
%{_libexecdir}/mono/gac/appindicator-sharp/
%{_libexecdir}/mono/gac/policy.0.0.appindicator-sharp/
%files -n appindicator-sharp-devel
%license COPYING COPYING.LGPL.2.1
%doc README
%{_libdir}/pkgconfig/appindicator-sharp-0.1.pc
%endif
%files devel
%license COPYING COPYING.LGPL.2.1
%doc README
%dir %{_includedir}/libappindicator-0.1/
%dir %{_includedir}/libappindicator-0.1/libappindicator/
%{_includedir}/libappindicator-0.1/libappindicator/*.h
%{_includedir}/libappindicator-0.1/
%{_libdir}/libappindicator.so
%{_libdir}/pkgconfig/appindicator-0.1.pc
%{_datadir}/gir-1.0/AppIndicator-0.1.gir
%{_datadir}/vala/vapi/appindicator-0.1.vapi
%{_datadir}/vala/vapi/appindicator-0.1.deps
%else
%files -n libappindicator3-%{sover}
%license COPYING COPYING.LGPL.2.1
%doc README
@ -259,43 +217,11 @@ find %{buildroot} -type f -name "*.la" -delete -print
%files -n libappindicator3-devel
%license COPYING COPYING.LGPL.2.1
%doc README
%dir %{_includedir}/libappindicator3-0.1/
%dir %{_includedir}/libappindicator3-0.1/libappindicator/
%{_includedir}/libappindicator3-0.1/libappindicator/*.h
%{_includedir}/libappindicator3-0.1/
%{_libdir}/libappindicator3.so
%{_libdir}/pkgconfig/appindicator3-0.1.pc
%{_datadir}/gir-1.0/AppIndicator3-0.1.gir
%{_datadir}/vala/vapi/appindicator3-0.1.vapi
%{_datadir}/vala/vapi/appindicator3-0.1.deps
%endif
%if %{with mono}
%files -n appindicator-sharp
%license COPYING COPYING.LGPL.2.1
%doc README
%dir %{_libdir}/appindicator-sharp-0.1/
%{_libdir}/appindicator-sharp-0.1/appindicator-sharp.dll
%{_libdir}/appindicator-sharp-0.1/appindicator-sharp.dll.config
%{_libdir}/appindicator-sharp-0.1/policy.0.0.appindicator-sharp.config
%{_libdir}/appindicator-sharp-0.1/policy.0.0.appindicator-sharp.dll
%{_libdir}/appindicator-sharp-0.1/policy.0.1.appindicator-sharp.config
%{_libdir}/appindicator-sharp-0.1/policy.0.1.appindicator-sharp.dll
%dir %{_prefix}/lib/mono/appindicator-sharp/
%{_prefix}/lib/mono/appindicator-sharp/appindicator-sharp.dll
%{_prefix}/lib/mono/appindicator-sharp/policy.0.0.appindicator-sharp.dll
%dir %{_prefix}/lib/mono/gac/appindicator-sharp/
%dir %{_prefix}/lib/mono/gac/appindicator-sharp/*/
%{_prefix}/lib/mono/gac/appindicator-sharp/*/appindicator-sharp.dll
%{_prefix}/lib/mono/gac/appindicator-sharp/*/appindicator-sharp.dll.config
%dir %{_prefix}/lib/mono/gac/policy.0.0.appindicator-sharp/
%dir %{_prefix}/lib/mono/gac/policy.0.0.appindicator-sharp/*/
%{_prefix}/lib/mono/gac/policy.0.0.appindicator-sharp/*/policy.0.0.appindicator-sharp.config
%{_prefix}/lib/mono/gac/policy.0.0.appindicator-sharp/*/policy.0.0.appindicator-sharp.dll
%files -n appindicator-sharp-devel
%license COPYING COPYING.LGPL.2.1
%doc README
%{_libdir}/pkgconfig/appindicator-sharp-0.1.pc
%{_datadir}/vala/vapi/appindicator3-0.1.*
%endif
%changelog

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1db7df6c5da6b64e7d016ac2adefb0519c8944ef2b32be4c64c55cc849a0577e
size 71240

BIN
libappindicator_12.10.1+20.10.20200706.1.orig.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -1,19 +0,0 @@
--- a/configure.ac 2019-09-18 20:01:29.244433451 +0200
+++ b/configure.ac 2019-09-18 20:06:01.479617139 +0200
@@ -185,6 +185,8 @@
# Python
###########################
+AS_IF([test "x$with_gtk" = x2],
+ [
PYGTK_REQUIRED=2.14.0
PYGOBJECT_REQUIRED=0.22
@@ -207,6 +209,7 @@
PYGTK_CODEGEN="$PYTHON `$PKG_CONFIG --variable=codegendir pygtk-2.0`/codegen.py"
AC_SUBST(PYGTK_CODEGEN)
AC_MSG_RESULT($PYGTK_CODEGEN)
+])
#########################
# Check if build tests

View File

@ -1,20 +1,18 @@
diff -rub a/configure.ac b/configure.ac
--- a/configure.ac 2017-02-15 22:15:21.000000000 +0800
+++ b/configure.ac 2020-02-13 00:42:12.928497295 +0800
@@ -58,7 +58,8 @@
--- a/configure.ac
+++ b/configure.ac
@@ -61,7 +61,8 @@ AS_IF([test "x$with_gtk" = x3],
glib-2.0 >= $GLIB_REQUIRED_VERSION
gio-unix-2.0
gio-2.0 >= $GIO_REQUIRED_VERSION
indicator3-0.4 >= $INDICATOR_REQUIRED_VERSION
- dbusmenu-gtk3-0.4 >= $DBUSMENUGTK_REQUIRED_VERSION)
+ dbusmenu-gtk3-0.4 >= $DBUSMENUGTK_REQUIRED_VERSION
+ xapp >= 1.5.0)
AC_DEFINE(HAVE_GTK3, 1, [whether gtk3 is available])
],
[test "x$with_gtk" = x2],
diff -rub a/src/appindicator3-0.1.pc.in b/src/appindicator3-0.1.pc.in
--- a/src/appindicator3-0.1.pc.in 2017-02-15 22:15:21.000000000 +0800
+++ b/src/appindicator3-0.1.pc.in 2020-02-12 23:39:49.768066612 +0800
@@ -5,7 +5,7 @@
--- a/src/appindicator3-0.1.pc.in
+++ b/src/appindicator3-0.1.pc.in
@@ -5,7 +5,7 @@ bindir=@bindir@
includedir=@includedir@
Cflags: -I${includedir}/libappindicator3-0.1
@ -23,10 +21,9 @@ diff -rub a/src/appindicator3-0.1.pc.in b/src/appindicator3-0.1.pc.in
Libs: -L${libdir} -lappindicator3
Name: appindicator3-0.1
diff -rub a/src/app-indicator.c b/src/app-indicator.c
--- a/src/app-indicator.c 2017-02-15 22:15:36.000000000 +0800
+++ b/src/app-indicator.c 2020-02-13 01:07:11.066450662 +0800
@@ -31,6 +31,8 @@
--- a/src/app-indicator.c
+++ b/src/app-indicator.c
@@ -31,6 +31,8 @@ License version 3 and version 2.1 along
#include "config.h"
#endif
@ -35,7 +32,7 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
#include <libdbusmenu-glib/menuitem.h>
#include <libdbusmenu-glib/server.h>
#include <libdbusmenu-gtk/client.h>
@@ -52,6 +54,8 @@
@@ -52,6 +54,8 @@ License version 3 and version 2.1 along
#define PANEL_ICON_SUFFIX "panel"
@ -44,7 +41,7 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
/**
* AppIndicatorPrivate:
* All of the private data in an instance of an application indicator.
@@ -90,7 +94,7 @@
@@ -90,7 +94,7 @@ struct _AppIndicatorPrivate {
gchar * att_accessible_desc;
guint label_change_idle;
@ -53,7 +50,7 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
gint fallback_timer;
/* Fun stuff */
@@ -186,14 +190,11 @@
@@ -186,14 +190,11 @@ static void check_connect (AppIndicator
static void register_service_cb (GObject * obj, GAsyncResult * res, gpointer user_data);
static void start_fallback_timer (AppIndicator * self, gboolean disable_timeout);
static gboolean fallback_timer_expire (gpointer data);
@ -71,7 +68,7 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
static gchar * append_panel_icon_suffix (const gchar * icon_name);
static gchar * get_real_theme_path (AppIndicator * self);
static gchar * append_snap_prefix (const gchar * path);
@@ -952,6 +953,9 @@
@@ -988,6 +989,9 @@ app_indicator_set_property (GObject * ob
if (g_strcmp0(oldlabel, priv->label) != 0) {
signal_label_change(APP_INDICATOR(object));
@ -81,7 +78,7 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
}
if (oldlabel != NULL) {
@@ -983,15 +987,16 @@
@@ -1019,15 +1023,16 @@ app_indicator_set_property (GObject * ob
g_warning("Unable to send signal for NewTitle: %s", error->message);
g_error_free(error);
}
@ -101,7 +98,7 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
break;
}
case PROP_LABEL_GUIDE: {
@@ -1521,19 +1526,60 @@
@@ -1557,19 +1562,60 @@ theme_changed_cb (GtkIconTheme * theme,
return;
}
@ -166,7 +163,7 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
g_signal_connect(G_OBJECT(self), APP_INDICATOR_SIGNAL_NEW_STATUS,
G_CALLBACK(status_icon_status_wrapper), icon);
g_signal_connect(G_OBJECT(self), APP_INDICATOR_SIGNAL_NEW_ICON,
@@ -1541,12 +1587,11 @@
@@ -1577,12 +1623,11 @@ fallback (AppIndicator * self)
g_signal_connect(G_OBJECT(self), APP_INDICATOR_SIGNAL_NEW_ATTENTION_ICON,
G_CALLBACK(status_icon_changes), icon);
@ -182,7 +179,7 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
return icon;
}
@@ -1561,49 +1606,22 @@
@@ -1597,49 +1642,22 @@ status_icon_status_wrapper (AppIndicator
/* A wrapper for redirecting the scroll events to the app-indicator from status
icon widget. */
@ -192,6 +189,9 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
- g_return_val_if_fail(IS_APP_INDICATOR(data), FALSE);
- AppIndicator * app = APP_INDICATOR(data);
- g_signal_emit(app, signals[SCROLL_EVENT], 0, 1, event->direction);
-
- return TRUE;
-}
+// static gboolean
+// scroll_event_wrapper (GtkWidget *status_icon, GdkEventScroll *event, gpointer data)
+// {
@ -199,9 +199,6 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
+// AppIndicator * app = APP_INDICATOR(data);
+// g_signal_emit(app, signals[SCROLL_EVENT], 0, 1, event->direction);
- return TRUE;
-}
-
-static gboolean
-middle_click_wrapper (GtkWidget *status_icon, GdkEventButton *event, gpointer data)
-{
@ -241,7 +238,7 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
/* add the icon_theme_path once if needed */
GtkIconTheme *icon_theme = gtk_icon_theme_get_default();
@@ -1632,17 +1650,17 @@
@@ -1668,17 +1686,17 @@ status_icon_changes (AppIndicator * self
switch (app_indicator_get_status(self)) {
case APP_INDICATOR_STATUS_PASSIVE:
/* hide first to avoid that the change is visible to the user */
@ -262,7 +259,7 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
break;
};
@@ -1650,65 +1668,66 @@
@@ -1686,16 +1704,45 @@ status_icon_changes (AppIndicator * self
gchar *snapped_icon = append_snap_prefix(icon_name);
if (g_file_test(icon_name, G_FILE_TEST_EXISTS)) {
@ -279,14 +276,12 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
+ xapp_status_icon_set_icon_name(icon, longname);
} else {
- gtk_status_icon_set_from_icon_name(icon, icon_name);
- }
+ if (gtk_icon_theme_has_icon (icon_theme, icon_name)) {
+ xapp_status_icon_set_icon_name(icon, icon_name);
+ } else {
+ gint i;
+ gchar *icon_path;
- g_free(longname);
+
+ const gchar *extensions[] = {
+ "png",
+ "svg",
@ -297,14 +292,11 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
+
+ if (g_file_test (icon_path, G_FILE_TEST_EXISTS)) {
+ break;
}
- g_free(snapped_icon);
+ }
+
+ g_clear_pointer (&icon_path, g_free);
}
- return;
-}
+ }
+
+ if (icon_path) {
+ xapp_status_icon_set_icon_name (icon, icon_path);
+ g_free (icon_path);
@ -314,7 +306,12 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
+ xapp_status_icon_set_icon_name (icon, FALLBACK_ICON);
+ }
+ }
+ }
}
g_free(longname);
@@ -1707,44 +1754,16 @@ status_icon_changes (AppIndicator * self
return;
}
-/* Handles the activate action by the status icon by showing
- the menu in a popup. */
@ -324,9 +321,7 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
- GtkMenu * menu = app_indicator_get_menu(APP_INDICATOR(data));
- if (menu == NULL)
- return;
+ g_free(longname);
+ }
-
- gtk_menu_popup(menu,
- NULL, /* Parent Menu */
- NULL, /* Parent item */
@ -334,12 +329,10 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
- icon,
- 1, /* Button */
- gtk_get_current_event_time());
+ g_free(snapped_icon);
+ }
return;
}
-
- return;
-}
-
-/* Handles the right-click action by the status icon by showing
- the menu in a popup. */
-static void
@ -365,7 +358,7 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
g_object_unref(G_OBJECT(status_icon));
return;
}
@@ -1760,6 +1779,8 @@
@@ -1796,6 +1815,8 @@ sec_activate_target_parent_changed(GtkWi
g_return_if_fail(IS_APP_INDICATOR(data));
AppIndicator *self = data;
self->priv->sec_activate_enabled = widget_is_menu_child(self, menuitem);
@ -374,7 +367,7 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
}
@@ -2053,6 +2074,7 @@
@@ -2089,6 +2110,7 @@ app_indicator_set_label (AppIndicator *s
PROP_LABEL_GUIDE_S, guide == NULL ? "" : guide,
NULL);
@ -382,7 +375,7 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
return;
}
@@ -2224,9 +2246,14 @@
@@ -2260,9 +2282,14 @@ app_indicator_set_menu (AppIndicator *se
priv->menu = GTK_WIDGET (menu);
g_object_ref_sink (priv->menu);
@ -397,7 +390,7 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
check_connect (self);
@@ -2280,6 +2307,7 @@
@@ -2316,6 +2343,7 @@ app_indicator_set_secondary_activate_tar
self);
g_object_unref(G_OBJECT(priv->sec_activate_target));
priv->sec_activate_target = NULL;
@ -405,21 +398,17 @@ diff -rub a/src/app-indicator.c b/src/app-indicator.c
}
if (menuitem == NULL) {
@@ -2288,8 +2316,9 @@
@@ -2326,6 +2354,7 @@ app_indicator_set_secondary_activate_tar
g_return_if_fail (GTK_IS_WIDGET (menuitem));
- priv->sec_activate_target = g_object_ref(G_OBJECT(menuitem));
+ priv->sec_activate_target = g_object_ref(menuitem);
priv->sec_activate_target = g_object_ref(menuitem);
priv->sec_activate_enabled = widget_is_menu_child(self, menuitem);
+ status_icon_set_has_secondary_activate (priv->status_icon, priv->sec_activate_enabled);
g_signal_connect(menuitem, "parent-set", G_CALLBACK(sec_activate_target_parent_changed), self);
}
diff -rub a/src/app-indicator.h b/src/app-indicator.h
--- a/src/app-indicator.h 2017-02-15 22:15:21.000000000 +0800
+++ b/src/app-indicator.h 2020-02-13 01:04:06.226176973 +0800
@@ -32,6 +32,14 @@
--- a/src/app-indicator.h
+++ b/src/app-indicator.h
@@ -32,6 +32,14 @@ License version 3 and version 2.1 along
#include <gtk/gtk.h>
@ -434,7 +423,7 @@ diff -rub a/src/app-indicator.h b/src/app-indicator.h
G_BEGIN_DECLS
/**
@@ -218,10 +226,18 @@
@@ -218,10 +226,18 @@ struct _AppIndicatorClass {
void (*app_indicator_reserved_ats)(void);
/* Overridable Functions */
@ -453,10 +442,9 @@ diff -rub a/src/app-indicator.h b/src/app-indicator.h
/* Reserved */
void (*app_indicator_reserved_1)(void);
void (*app_indicator_reserved_2)(void);
diff -rub a/src/Makefile.am b/src/Makefile.am
--- a/src/Makefile.am 2017-02-15 22:15:21.000000000 +0800
+++ b/src/Makefile.am 2020-02-13 00:11:49.889693111 +0800
@@ -57,7 +57,6 @@
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -57,7 +57,6 @@ libappindicatorinclude_HEADERS = \
libappindicator_la_SOURCES = \
$(libappindicator_headers) \
app-indicator-enum-types.c \
@ -464,7 +452,7 @@ diff -rub a/src/Makefile.am b/src/Makefile.am
application-service-marshal.c \
dbus-shared.h \
generate-id.h \
@@ -67,6 +66,14 @@
@@ -69,6 +68,14 @@ libappindicator_la_SOURCES = \
gen-notification-watcher.xml.h \
gen-notification-watcher.xml.c
@ -479,7 +467,7 @@ diff -rub a/src/Makefile.am b/src/Makefile.am
libappindicator_la_LDFLAGS = \
$(COVERAGE_LDFLAGS) \
-version-info 1:0:0 \
@@ -149,9 +156,15 @@
@@ -151,9 +158,15 @@ INTROSPECTION_COMPILER_ARGS = --included
if HAVE_INTROSPECTION
@ -493,12 +481,11 @@ diff -rub a/src/Makefile.am b/src/Makefile.am
+ $(addprefix $(srcdir)/,$(libappindicator_headers))
+endif
AppIndicator$(VER)-0.1.gir: libappindicator$(VER).la
AppIndicator3-0.1.gir: libappindicator3.la
diff -rub a/tests/test-libappindicator-fallback-item.c b/tests/test-libappindicator-fallback-item.c
--- a/tests/test-libappindicator-fallback-item.c 2017-02-15 22:15:21.000000000 +0800
+++ b/tests/test-libappindicator-fallback-item.c 2020-02-13 01:06:01.518347682 +0800
@@ -31,8 +31,14 @@
--- a/tests/test-libappindicator-fallback-item.c
+++ b/tests/test-libappindicator-fallback-item.c
@@ -31,8 +31,14 @@ GType test_libappindicator_fallback_item
static void test_libappindicator_fallback_item_class_init (TestLibappindicatorFallbackItemClass *klass);
static void test_libappindicator_fallback_item_init (TestLibappindicatorFallbackItem *self);
@ -513,7 +500,7 @@ diff -rub a/tests/test-libappindicator-fallback-item.c b/tests/test-libappindica
G_DEFINE_TYPE (TestLibappindicatorFallbackItem, test_libappindicator_fallback_item, APP_INDICATOR_TYPE);
@@ -63,6 +69,39 @@
@@ -63,6 +69,39 @@ enum {
gint state = STATE_INIT;
@ -553,7 +540,7 @@ diff -rub a/tests/test-libappindicator-fallback-item.c b/tests/test-libappindica
static GtkStatusIcon *
fallback (AppIndicator * indicator)
{
@@ -94,6 +133,7 @@
@@ -94,6 +133,7 @@ unfallback (AppIndicator * indicator, Gt
}
return;
}