From: Pacho Ramos Date: Sun, 5 Apr 2020 16:17:23 +0000 (+0200) Subject: gnome-extra/gnome-shell-extension-gsconnect: Upstream fix to limit sent notifications X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=a38a8c4791ffa48c43b264c0a85e2d2cffcb5d4a;p=gentoo.git gnome-extra/gnome-shell-extension-gsconnect: Upstream fix to limit sent notifications Package-Manager: Portage-2.3.96, Repoman-2.3.22 Signed-off-by: Pacho Ramos --- diff --git a/gnome-extra/gnome-shell-extension-gsconnect/files/gnome-shell-extension-gsconnect-33-notifications-limit.patch b/gnome-extra/gnome-shell-extension-gsconnect/files/gnome-shell-extension-gsconnect-33-notifications-limit.patch new file mode 100644 index 000000000000..8c2846c5ecbd --- /dev/null +++ b/gnome-extra/gnome-shell-extension-gsconnect/files/gnome-shell-extension-gsconnect-33-notifications-limit.patch @@ -0,0 +1,39 @@ +From 641ccb70724f8967439495e2356b2d7a654053cf Mon Sep 17 00:00:00 2001 +From: Andy Holmes +Date: Sat, 4 Apr 2020 17:37:41 -0700 +Subject: [PATCH] Shell Notifications: set a limit of 10 notifications from + GSConnect + +Re-apply the notification limit from GSConnect, set to 10. This should +stop notifications from growing indefinitely, with the consequence that +the notifications that end up in the message tray is non-deterministic. + +cc #364 + +Backported to v33 +--- + src/shell/notification.js | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/src/shell/notification.js b/src/shell/notification.js +index dc93de955..f345cdde9 100644 +--- a/src/shell/notification.js ++++ b/src/shell/notification.js +@@ -246,13 +246,16 @@ + } + + /** +- * Override to lift the usual notification limit (3) ++ * Override to raise the usual notification limit (3) + * See: https://gitlab.gnome.org/GNOME/gnome-shell/blob/master/js/ui/messageTray.js#L773-L786 + */ + pushNotification(notification) { + if (this.notifications.includes(notification)) + return; + ++ while (this.notifications.length >= 10) ++ this.notifications.shift().destroy(MessageTray.NotificationDestroyedReason.EXPIRED); ++ + notification.connect('destroy', this._onNotificationDestroy.bind(this)); + notification.connect('acknowledged-changed', this.countUpdated.bind(this)); + this.notifications.push(notification); diff --git a/gnome-extra/gnome-shell-extension-gsconnect/gnome-shell-extension-gsconnect-33-r1.ebuild b/gnome-extra/gnome-shell-extension-gsconnect/gnome-shell-extension-gsconnect-33-r1.ebuild new file mode 100644 index 000000000000..680156b1810b --- /dev/null +++ b/gnome-extra/gnome-shell-extension-gsconnect/gnome-shell-extension-gsconnect-33-r1.ebuild @@ -0,0 +1,69 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +inherit gnome2-utils meson readme.gentoo-r1 + +DESCRIPTION="KDE Connect implementation for Gnome Shell" +HOMEPAGE="https://github.com/andyholmes/gnome-shell-extension-gsconnect" +SRC_URI="https://github.com/andyholmes/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="nautilus" + +COMMON_DEPEND="dev-libs/glib:2" +RDEPEND="${COMMON_DEPEND} + app-eselect/eselect-gnome-shell-extensions + >=dev-libs/gjs-1.48 + =gnome-base/gnome-shell-3.34* + gnome-base/gvfs + gnome-extra/evolution-data-server + || ( media-libs/libcanberra media-libs/gsound ) + nautilus? ( + dev-python/nautilus-python + gnome-base/nautilus[introspection] ) +" +DEPEND="${COMMON_DEPEND}" +BDEPEND=" + virtual/pkgconfig +" + +DISABLE_AUTOFORMATTING="yes" +DOC_CONTENTS="For knowing more about how to do the setup, please visit: +https://github.com/andyholmes/gnome-shell-extension-gsconnect/wiki/Installation" + +PATCHES=( + # Shell Notifications: set a limit of 10 notifications from GSConnect + "${FILESDIR}/${P}-notifications-limit.patch" +) + +src_configure() { + # nemo support relies on nemo-python from https://github.com/linuxmint/nemo-extensions + # https://bugs.gentoo.org/694388 + meson_src_configure \ + -Dnemo=false \ + $(meson_use nautilus) +} + +src_install() { + meson_src_install + readme.gentoo_create_doc +} + +pkg_preinst() { + gnome2_schemas_savelist +} + +pkg_postinst() { + gnome2_schemas_update + ebegin "Updating list of installed extensions" + eselect gnome-shell-extensions update + eend $? + readme.gentoo_print_elog +} + +pkg_postrm() { + gnome2_schemas_update +}