summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Alexander <wired@gentoo.org>2014-05-08 05:59:27 +0000
committerAlex Alexander <wired@gentoo.org>2014-05-08 05:59:27 +0000
commit37ddce623e440ed1ac5235a9e3c35b962ca0462b (patch)
tree0700d6b8a98fd7a454f6cf76939457e0396a7e5c /x11-misc/dunst
parentAdd ruby21. Drop ruby18. (diff)
downloadhistorical-37ddce623e440ed1ac5235a9e3c35b962ca0462b.tar.gz
historical-37ddce623e440ed1ac5235a9e3c35b962ca0462b.tar.bz2
historical-37ddce623e440ed1ac5235a9e3c35b962ca0462b.zip
backported a couple of fixes from git.
Package-Manager: portage-2.2.10/cvs/Linux x86_64 Manifest-Sign-Key: 0xEB9B4AFA
Diffstat (limited to 'x11-misc/dunst')
-rw-r--r--x11-misc/dunst/ChangeLog11
-rw-r--r--x11-misc/dunst/Manifest33
-rw-r--r--x11-misc/dunst/dunst-1.0.0-r1.ebuild63
-rw-r--r--x11-misc/dunst/files/dunst-1.0.0-correctly_handle_num_lock.patch149
-rw-r--r--x11-misc/dunst/files/dunst-1.0.0-fix_pause_resume.patch60
5 files changed, 299 insertions, 17 deletions
diff --git a/x11-misc/dunst/ChangeLog b/x11-misc/dunst/ChangeLog
index 25fa013d1b3f..b2a5d71bcf46 100644
--- a/x11-misc/dunst/ChangeLog
+++ b/x11-misc/dunst/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for x11-misc/dunst
-# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-misc/dunst/ChangeLog,v 1.5 2013/09/12 17:16:38 wired Exp $
+# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/x11-misc/dunst/ChangeLog,v 1.6 2014/05/08 05:59:22 wired Exp $
+
+*dunst-1.0.0-r1 (08 May 2014)
+
+ 08 May 2014; Alex Alexander <wired@gentoo.org> +dunst-1.0.0-r1.ebuild,
+ +files/dunst-1.0.0-correctly_handle_num_lock.patch,
+ +files/dunst-1.0.0-fix_pause_resume.patch:
+ backported a couple of fixes from git.
12 Sep 2013; Alex Alexander <wired@gentoo.org> dunst-1.0.0.ebuild:
epatch_user support, bug #484356
diff --git a/x11-misc/dunst/Manifest b/x11-misc/dunst/Manifest
index 2f1057a6df48..7176d192b4ec 100644
--- a/x11-misc/dunst/Manifest
+++ b/x11-misc/dunst/Manifest
@@ -1,26 +1,29 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
+AUX dunst-1.0.0-correctly_handle_num_lock.patch 6696 SHA256 44b326cece49cf1aed41d04670147278c52fb5ea3deb2d9725c20e57debfcfae SHA512 b71325aa04f6322e549421ad1c59b5f5d3f7c999c75e6382168d58076c213da50ed4ca4db70c197f405bbe166d71658b56f5217790971021f7d028ea483e3183 WHIRLPOOL d0508597f2baf3e82c041c0ad8eb545336eeb789d56d951a5b040c400614864d630d0a62c9a635e7239b9129b127c357094087a9077823bc7ec5a4960ce1eb8a
+AUX dunst-1.0.0-fix_pause_resume.patch 1737 SHA256 6d6d5ba236bd1302549550a8f65f066bdb36a608ce6a9684484e47b43255b9f7 SHA512 1208a54567c07684f169c9b8c49a4d639314c762be8f880712e9c91ddf51315b154191619eb045758e88957c9f4d5ac0f1ecba0a34d325a125d9ba5332069171 WHIRLPOOL 4f7e46f8d4aec2af6b38ecba56690ba336a2ccfe947a1e543e3bebf4c17eef940b79c91d75a86c6c75e3587110ae867a820cd0238466d815276693f6b6ec6248
DIST dunst-0.5.0.tar.bz2 28521 SHA256 4be8cf366930b297f03078f233f2fec479638d0c69b0e5e75bb49da487684b05 SHA512 3ce762295ea28b10539da6c5b9b4bffa41535d90544d933b2b81838f44a6d5d95c292a08048576b87db4f74592e5e068687743d7fda0dc3aa4aac06aa81ba7fd WHIRLPOOL ab1200ddadff1bcf6bbb5a56b464c4da2c045e9e074e1ada3e1841574dde21e4e672452130b7fffa9605fb20ab22870f9e49af2b32e15513f7dfa071be9958b1
DIST dunst-1.0.0.tar.bz2 75306 SHA256 5c79ef11165421a4828453a42dfe9c60a4cb9d8743f970186a90c67e277f5280 SHA512 81490597ef8354d2c32838c72e03b121cf09d61e0fbef697a8adfb0c4783e45b3bb05790bf94cc1d0ed41e7f4b5f13a8edfdc65fec5569dc29966edd0807bfe1 WHIRLPOOL 724295fec6d284cc512944435a93df8c55b214d59d2b2b33c3fbf83e6a51db40b6ca15ce68446988dbeab695b0a907a4301124f35fb6748bed8c8143042b0bd9
EBUILD dunst-0.5.0.ebuild 665 SHA256 0461cad24139694ae094d5e81f69b66573d05e93ce44abfec15bbfdb43e3d4a1 SHA512 5cc15d19eb754d1b7d83bfb3f8bf45cdef7ddbe35cb39378793a94cbf079b96a461dca131b72078d2d8591deb0213d2fbf2521e3330b0e14cb24349fcd3a78db WHIRLPOOL 5715917f970b2bd7ad68c6c8eb7585d718903f3e95bf3156940354838b7dc86c13af6a401b1c2778cd293a74a67ab4934e6a95215128436eb7e2ed4bac8d6f61
+EBUILD dunst-1.0.0-r1.ebuild 1350 SHA256 62e51c6e2e35f739e86e521450f72fc6902967d739915db1ae7349b52279a1ee SHA512 2fca219f58eea26f92b5631e7c5095dd27a591f22ce50d6988b9f682a11998fb27a06bd410e7a1e3b6d83c35d3fa55f4ce629c20b4174c0e30eca8b4dafa4cb9 WHIRLPOOL e1bf2de833cb4fdcd23297d3c215711285eb20fbb4ca3cd690f40cbd599158f9181079759401199892ef914db645f48ff9fc1d8c83b3d1e59b2ab9e418546982
EBUILD dunst-1.0.0.ebuild 1208 SHA256 30680ff265b8d5954325cf8f9cf9ba6905e4891ca30693f313765d7252cd1d95 SHA512 22a9b71b9a6483bdf79d8fe2820729e0124852049a50948d7542c245a5e4cd060ecbfa82846d23cf1a91344a65f45627d55f54055960c1945faf3dd9d69dbc4c WHIRLPOOL ae25a4f71f9f19024c7f2116e31a9d07720cc97f1f5f07f716a10568d39b328b450230626039dc7e8682a9be843867d982c410e51c4023c1449a13be04065b12
-MISC ChangeLog 802 SHA256 855146816bb6f0a7e3fbb7c749828a753420fee058c10b718217d853a102105c SHA512 50083458ffca225e69129b118f225d59d9f5d1f36b403cbb82c59cbff55f96c683bc0be0abe287f77df94dd179b79a81c9b90f3263c75ff5b5b196bb6778e5c6 WHIRLPOOL eb18e3e9b91ba0ef8b47b805e39becbd1ea09dc3a40a804f81778de56a0a5274cfebd426e27da58c59a4e7f483c7e7c96255870adc380196e7cfb50bba4cb21f
+MISC ChangeLog 1047 SHA256 d9d29791c3fb5da294e44977b227fdc3b6dfb72fac4a0b55e086c3f3408589d3 SHA512 5163ca7f3c998cae6c20dc18234ec3875ba55a5373bc30945185034a16acdf96cba8f4a562bc983c9dbd5321d8f120cbe8fb7fb3896f73fc3d747a543c2690f4 WHIRLPOOL 51262a265e33cdc67c547c9970108fe5234b80a2c411a24e3bb90ff070604ac2bcec41b31e765967bda9ef56ffc8216a4eccc404bce55c3e34a947ec09e1a392
MISC metadata.xml 320 SHA256 543f737d5231bd9ac15a9fc7a99f58c9fa46c4675c32a99cc6bb6a3cce4acb90 SHA512 d1d6de199c9fcab909fd80644ec5105199da12f71aaae9f808073b82579bca785038f57d04434f2403ece0e7996d6383ac0f0d728b35a7f417ecd5c3ca35fd9b WHIRLPOOL ceebb71ba514b6c71bafd3eb520adaf8714acb6feac282fff46840b6eb2a22007725e23769aea421952115f1aa5d6374400a5de6185ad5b22bea2bac87e31424
-----BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.21 (GNU/Linux)
+Version: GnuPG v2.0.22 (GNU/Linux)
-iQIcBAEBCAAGBQJSMfc/AAoJEDZF8K7rm0r6p2wP/39putrZOuRK0KTsKr4ATbUK
-G/tafs0MGN0m8O9+beD4+QaX2vSEfTtU5jmtGWHjxHtOSDty/3dwh2dOmpjqpjcc
-OQeMwE69YxtRQxtuNEqO+CIf+u0PTAKQhmy+Rd5l2AY6iopksH5utHPzlf083Ooy
-eKNj6JiJBpXFKKsoG9c5vwgNgCO0snpWt9crGm268RUcm1PX2c8vo1c+Ts0WAY2p
-Fa98BaOeLd57C0DPz7ts//cA0TFIerKwrzT5wrffwb0v/2Jzqpw/vUh0riuYi17/
-czeHh9aaBYba488vp7NEczDsVtn9f7bZ6+47yy7QKfBzaPJ7giUbASzDfMsaSGub
-L3er7k3vo0bKQXN/kZukdjfvv8O3e43yjHqSAoF4DLnQmUoRZ3bvHOsRysHigYQt
-XE1FVyuZPJkVCm5aPYI0jA7nBsdL9qYUxAbWT/MddXwxwm6OwL4qxltkN9wq8TSm
-neG1MNOWFB1pTZUVy7wI2HRVHQIXa2QYX9M/iN8rEm4TeVMPidoQUkG2FBmvTEML
-wEMNsfO17hp7KQz0fV7L26VuNdXzUBi0tBtBnbv+3EPsw6+h3Kd9gDyHWVnb2oIc
-k6Du9cVwh0RiBhZ0+1TJ/6dwDth8y5gX424CZMo7uJTSSvXRo7Wu/EVLgN4mpX31
-9KOsPsVV15R0e+wc2C77
-=Qwdi
+iQIcBAEBCAAGBQJTax07AAoJEDZF8K7rm0r67EAP/iNq3F+jmYZRP6PZkCYj2I6K
+NZVOfGWCcTgL/og1zhzCt/9gJK5UnT6aMT+vSc2IZ0PNvxkA+Dzagur70Or7nOGM
+pJJM02aqUx4EVaJqUQtCuylBhSUOqAvuwkO8jn9u4QhDU+mTwa/Ou+81J/NJdBOL
+9WhfQkNJR2pLr7WChVSm/HILm5BofTz79f0RZWVAc719vZS+cgIXb/TTja9HUL6f
+z1a6uW3RsNbiiqe+vWG3GArgAJYUc7Cp1tkv+VEMlmrpN3/mHcIrmk++l/ZrGYFw
+YuHqv1LJjiv/KEzM8WeqF0e/WJzDVzlzCOzFQkIBj4GoFim25YcrCBwrgqkmv4G0
+2jstAEkCkO9ROcB4OSpKn7YByVKUiMW9zNNFRJyQnEKB/dzw/rzkF2WFzIM1oa02
+BktZ44ImxGsgjLIAQlAaX9H8mSnAGhgSJLqhG+Pd2BZjzF0TVnERpGVMhWT6yn6K
+h+FPKQClq6KlZaVsbmKIvhP3QTT9UogmIZ/0IlhLjc7CMn9mI+Le/JCOkltQ8NXG
+lFdrGXX5oQueYTlpn+28UgIgcHSdgOj8uvM4qMHnMXCIkPftj8U5VceJUfToIAP7
+RngNoxjde2FRopWOguEd7PPDkDXJH/+HvizwGmLLcR3V25wPL47IZsu7YQlKwgEW
+Wxg9ot6xJTGNeKyIWuvS
+=qsvw
-----END PGP SIGNATURE-----
diff --git a/x11-misc/dunst/dunst-1.0.0-r1.ebuild b/x11-misc/dunst/dunst-1.0.0-r1.ebuild
new file mode 100644
index 000000000000..7d79851e12b6
--- /dev/null
+++ b/x11-misc/dunst/dunst-1.0.0-r1.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-misc/dunst/dunst-1.0.0-r1.ebuild,v 1.1 2014/05/08 05:59:22 wired Exp $
+
+EAPI=5
+
+inherit eutils
+
+DESCRIPTION="customizable and lightweight notification-daemon"
+HOMEPAGE="http://www.knopwob.org/dunst/"
+SRC_URI="http://www.knopwob.org/public/dunst-release/${P}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="dunstify"
+
+CDEPEND="
+ dev-libs/glib:2
+ dev-libs/libxdg-basedir
+ sys-apps/dbus
+ x11-libs/libXScrnSaver
+ x11-libs/libXft
+ x11-libs/libXinerama
+ x11-libs/cairo[X,glib]
+ x11-libs/pango[X]
+ dunstify? ( x11-libs/libnotify )
+"
+
+DEPEND="${CDEPEND}
+ dev-lang/perl
+ virtual/pkgconfig"
+
+RDEPEND="${CDEPEND}"
+
+src_prepare() {
+ # fixes backported from git
+ epatch "${FILESDIR}"/${P}-correctly_handle_num_lock.patch
+ epatch "${FILESDIR}"/${P}-fix_pause_resume.patch
+
+ # Remove nasty CFLAGS which override user choice
+ sed -ie "/^CFLAGS/ {
+ s:-g::
+ s:-O.::
+ }" config.mk || die "sed failed"
+
+ if ! use dunstify; then
+ # don't build dunstify: it pulls in deps but is not being installed
+ sed -ie "/^all:/ s:dunstify::" Makefile || die "sed failed"
+ fi
+
+ epatch_user
+}
+
+src_install() {
+ emake DESTDIR="${D}" PREFIX="/usr" install
+
+ if use dunstify; then
+ dobin dunstify
+ fi
+
+ dodoc CHANGELOG
+}
diff --git a/x11-misc/dunst/files/dunst-1.0.0-correctly_handle_num_lock.patch b/x11-misc/dunst/files/dunst-1.0.0-correctly_handle_num_lock.patch
new file mode 100644
index 000000000000..fc784fb8fc66
--- /dev/null
+++ b/x11-misc/dunst/files/dunst-1.0.0-correctly_handle_num_lock.patch
@@ -0,0 +1,149 @@
+https://github.com/knopwob/dunst/commit/be7d2b351
+
+From be7d2b3511dc528b135e5dc6d5358c700fefaa30 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Ren=C3=A9=20=27Necoro=27=20Neumann?= <necoro@necoro.net>
+Date: Mon, 3 Jun 2013 14:39:24 +0200
+Subject: [PATCH] Correctly handle Num_Lock.
+
+Find out which modifier key is used by Num_Lock (`x_numlock_mod()`) and
+register grabs for both variants: modifier present/not present.
+---
+ x.c | 73 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------
+ 1 file changed, 67 insertions(+), 6 deletions(-)
+
+--- a/x.c
++++ b/x.c
+@@ -485,6 +485,58 @@ static void setopacity(Window win, unsigned long opacity)
+
+
+
++ /*
++ * Returns the modifier which is NumLock.
++ */
++static KeySym x_numlock_mod()
++{
++ static KeyCode nl = 0;
++ KeySym sym = 0;
++ XModifierKeymap * map = XGetModifierMapping(xctx.dpy);
++
++ if (!nl)
++ nl = XKeysymToKeycode(xctx.dpy, XStringToKeysym("Num_Lock"));
++
++ for (int mod = 0; mod < 8; mod++) {
++ for (int j = 0; j < map->max_keypermod; j++) {
++ if (map->modifiermap[mod*map->max_keypermod+j] == nl) {
++ /* In theory, one could use `1 << mod`, but this
++ * could count as 'using implementation details',
++ * so use this large switch. */
++ switch (mod) {
++ case ShiftMapIndex:
++ sym = ShiftMask;
++ goto end;
++ case LockMapIndex:
++ sym = LockMask;
++ goto end;
++ case ControlMapIndex:
++ sym = ControlMask;
++ goto end;
++ case Mod1MapIndex:
++ sym = Mod1Mask;
++ goto end;
++ case Mod2MapIndex:
++ sym = Mod2Mask;
++ goto end;
++ case Mod3MapIndex:
++ sym = Mod3Mask;
++ goto end;
++ case Mod4MapIndex:
++ sym = Mod4Mask;
++ goto end;
++ case Mod5MapIndex:
++ sym = Mod5Mask;
++ goto end;
++ }
++ }
++ }
++ }
++
++end:
++ XFreeModifiermap(map);
++ return sym;
++}
+
+ /*
+ * Helper function to use glib's mainloop mechanic
+@@ -515,6 +567,7 @@ gboolean x_mainloop_fd_dispatch(GSource * source, GSourceFunc callback,
+ gpointer user_data)
+ {
+ XEvent ev;
++ unsigned int state;
+ while (XPending(xctx.dpy) > 0) {
+ XNextEvent(xctx.dpy, &ev);
+ switch (ev.type) {
+@@ -535,10 +588,13 @@ gboolean x_mainloop_fd_dispatch(GSource * source, GSourceFunc callback,
+ }
+ break;
+ case KeyPress:
++ state = ev.xkey.state;
++ /* NumLock is also encoded in the state. Remove it. */
++ state &= ~x_numlock_mod();
+ if (settings.close_ks.str
+ && XLookupKeysym(&ev.xkey,
+ 0) == settings.close_ks.sym
+- && settings.close_ks.mask == ev.xkey.state) {
++ && settings.close_ks.mask == state) {
+ if (displayed) {
+ notification *n = g_queue_peek_head(displayed);
+ if (n)
+@@ -548,19 +604,19 @@ gboolean x_mainloop_fd_dispatch(GSource * source, GSourceFunc callback,
+ if (settings.history_ks.str
+ && XLookupKeysym(&ev.xkey,
+ 0) == settings.history_ks.sym
+- && settings.history_ks.mask == ev.xkey.state) {
++ && settings.history_ks.mask == state) {
+ history_pop();
+ }
+ if (settings.close_all_ks.str
+ && XLookupKeysym(&ev.xkey,
+ 0) == settings.close_all_ks.sym
+- && settings.close_all_ks.mask == ev.xkey.state) {
++ && settings.close_all_ks.mask == state) {
+ move_all_to_history();
+ }
+ if (settings.context_ks.str
+ && XLookupKeysym(&ev.xkey,
+ 0) == settings.context_ks.sym
+- && settings.context_ks.mask == ev.xkey.state) {
++ && settings.context_ks.mask == state) {
+ context_menu();
+ }
+ break;
+@@ -953,9 +1009,12 @@ int x_shortcut_grab(keyboard_shortcut * ks)
+
+ x_shortcut_setup_error_handler();
+
+- if (ks->is_valid)
++ if (ks->is_valid) {
+ XGrabKey(xctx.dpy, ks->code, ks->mask, root,
+ true, GrabModeAsync, GrabModeAsync);
++ XGrabKey(xctx.dpy, ks->code, ks->mask | x_numlock_mod() , root,
++ true, GrabModeAsync, GrabModeAsync);
++ }
+
+ if (x_shortcut_tear_down_error_handler()) {
+ fprintf(stderr, "Unable to grab key \"%s\"\n", ks->str);
+@@ -972,8 +1031,10 @@ void x_shortcut_ungrab(keyboard_shortcut * ks)
+ {
+ Window root;
+ root = RootWindow(xctx.dpy, DefaultScreen(xctx.dpy));
+- if (ks->is_valid)
++ if (ks->is_valid) {
+ XUngrabKey(xctx.dpy, ks->code, ks->mask, root);
++ XUngrabKey(xctx.dpy, ks->code, ks->mask | x_numlock_mod(), root);
++ }
+ }
+
+ /*
+--
+1.9.1
+
diff --git a/x11-misc/dunst/files/dunst-1.0.0-fix_pause_resume.patch b/x11-misc/dunst/files/dunst-1.0.0-fix_pause_resume.patch
new file mode 100644
index 000000000000..f95cc310b373
--- /dev/null
+++ b/x11-misc/dunst/files/dunst-1.0.0-fix_pause_resume.patch
@@ -0,0 +1,60 @@
+https://github.com/knopwob/dunst/commit/04248fd4
+
+From 04248fd49ef6769c7dc7e246fc505ad9c70afe27 Mon Sep 17 00:00:00 2001
+From: Sascha Kruse <knopwob@googlemail.com>
+Date: Mon, 22 Apr 2013 20:07:35 +0000
+Subject: [PATCH] fix pause/resume
+
+this fixes github issue #98
+---
+ dunst.c | 14 ++++++++------
+ 1 file changed, 8 insertions(+), 6 deletions(-)
+
+--- a/dunst.c
++++ b/dunst.c
+@@ -105,7 +105,7 @@ void update_lists()
+
+ if (pause_display) {
+ while (displayed->length > 0) {
+- g_queue_insert_sorted(queue, g_queue_pop_head(queue),
++ g_queue_insert_sorted(queue, g_queue_pop_head(displayed),
+ notification_cmp_data, NULL);
+ }
+ return;
+@@ -240,16 +240,16 @@ gboolean run(void *data)
+ timeout_cnt--;
+ }
+
+- if (displayed->length > 0 && !xctx.visible) {
+- x_win_show();
++ if (displayed->length > 0 && !xctx.visible && !pause_display) {
++ x_win_show();
+ }
+
+- if (displayed->length == 0 && xctx.visible) {
+- x_win_hide();
++ if (xctx.visible && (pause_display || displayed->length == 0)) {
++ x_win_hide();
+ }
+
+ if (xctx.visible) {
+- x_win_draw();
++ x_win_draw();
+ }
+
+ if (xctx.visible) {
+@@ -355,9 +355,11 @@ void pause_signal_handler(int sig)
+ {
+ if (sig == SIGUSR1) {
+ pause_display = true;
++ wake_up();
+ }
+ if (sig == SIGUSR2) {
+ pause_display = false;
++ wake_up();
+ }
+
+ signal(sig, pause_signal_handler);
+--
+1.9.1
+