summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWulf Krueger <philantrop@gentoo.org>2007-11-20 12:50:44 +0000
committerWulf Krueger <philantrop@gentoo.org>2007-11-20 12:50:44 +0000
commit3d61712d393ea0c849081bee607e416ed855ed88 (patch)
tree42b46ea1566f3ea8c13e06df9bbcfdcbbac92a7c /kde-base/kmilo
parentAdded a patch to fix a problem with the XF86Audio* key handlers not working w... (diff)
downloadgentoo-2-3d61712d393ea0c849081bee607e416ed855ed88.tar.gz
gentoo-2-3d61712d393ea0c849081bee607e416ed855ed88.tar.bz2
gentoo-2-3d61712d393ea0c849081bee607e416ed855ed88.zip
Added a patch to fix a problem with the XF86Audio* key handlers not working when there's no master channel (e. g. you have a mute key that stopped working in KDE). Fixes bug 198015. Thanks to Kelvie Wong for creating and submitting said patch.
(Portage version: 2.1.3.19)
Diffstat (limited to 'kde-base/kmilo')
-rw-r--r--kde-base/kmilo/ChangeLog11
-rw-r--r--kde-base/kmilo/files/digest-kmilo-3.5.8-r13
-rw-r--r--kde-base/kmilo/files/kmilo-3.5.8-198015_XF86Audio.patch84
-rw-r--r--kde-base/kmilo/kmilo-3.5.8-r1.ebuild23
4 files changed, 120 insertions, 1 deletions
diff --git a/kde-base/kmilo/ChangeLog b/kde-base/kmilo/ChangeLog
index 29aaceebad58..2c141e8bd630 100644
--- a/kde-base/kmilo/ChangeLog
+++ b/kde-base/kmilo/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for kde-base/kmilo
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/kde-base/kmilo/ChangeLog,v 1.75 2007/10/19 23:08:00 philantrop Exp $
+# $Header: /var/cvsroot/gentoo-x86/kde-base/kmilo/ChangeLog,v 1.76 2007/11/20 12:50:43 philantrop Exp $
+
+*kmilo-3.5.8-r1 (20 Nov 2007)
+
+ 20 Nov 2007; Wulf C. Krueger <philantrop@gentoo.org>
+ +files/kmilo-3.5.8-198015_XF86Audio.patch, +kmilo-3.5.8-r1.ebuild:
+ Added a patch to fix a problem with the XF86Audio* key handlers not working
+ when there's no master channel (e. g. you have a mute key that stopped
+ working in KDE). Fixes bug 198015. Thanks to Kelvie Wong for creating and
+ submitting said patch.
*kmilo-3.5.8 (19 Oct 2007)
diff --git a/kde-base/kmilo/files/digest-kmilo-3.5.8-r1 b/kde-base/kmilo/files/digest-kmilo-3.5.8-r1
new file mode 100644
index 000000000000..41ce46180134
--- /dev/null
+++ b/kde-base/kmilo/files/digest-kmilo-3.5.8-r1
@@ -0,0 +1,3 @@
+MD5 d1a0fcc83f35428a76cf7523a04ba19c kdeutils-3.5.8.tar.bz2 3059172
+RMD160 94267b9c08339c7310d65106110c9b9ef133d6f8 kdeutils-3.5.8.tar.bz2 3059172
+SHA256 7dcbe3361cc53f9dac4c1bf6f45952d3d2518bec56cd8c07b8e07b4c4f12d0ac kdeutils-3.5.8.tar.bz2 3059172
diff --git a/kde-base/kmilo/files/kmilo-3.5.8-198015_XF86Audio.patch b/kde-base/kmilo/files/kmilo-3.5.8-198015_XF86Audio.patch
new file mode 100644
index 000000000000..22d16983f88f
--- /dev/null
+++ b/kde-base/kmilo/files/kmilo-3.5.8-198015_XF86Audio.patch
@@ -0,0 +1,84 @@
+From 5ddf8e7f68098ebb86d0023653e540edf119291d Mon Sep 17 00:00:00 2001
+From: Kelvie Wong <kelvie@ieee.org>
+Date: Sat, 3 Nov 2007 21:42:27 -0700
+Subject: [PATCH] KMilo: reintroduced support for kmix's user-set master channel
+ * uses the new masterDeviceIndex dcop call in KMix (from other patch)
+
+---
+ kmilo/generic/generic_monitor.cpp | 18 +++++++++++++-----
+ kmilo/generic/generic_monitor.h | 1 +
+ 2 files changed, 14 insertions(+), 5 deletions(-)
+
+diff --git a/kmilo/generic/generic_monitor.cpp b/kmilo/generic/generic_monitor.cpp
+index 51b96b1..fd7a47f 100644
+--- a/kmilo/generic/generic_monitor.cpp
++++ b/kmilo/generic/generic_monitor.cpp
+@@ -50,6 +50,7 @@ GenericMonitor::GenericMonitor(QObject *parent, const char *name, const QStringL
+ m_minVolume = 0;
+ m_maxVolume = 100;
+ m_volume = 50;
++ m_deviceIdx = 0;
+ }
+
+ GenericMonitor::~GenericMonitor()
+@@ -92,7 +93,14 @@ bool GenericMonitor::retrieveVolume()
+ {
+ bool kmix_error = false;
+
+- DCOPReply reply = kmixClient->call("absoluteVolume", 0);
++ // Set it to the master, or 0 (from GenericMonitor()) if this dcop
++ // call doesn't exist or various other errors. It used to be
++ // hard-coded to 0 anyways.
++ DCOPReply reply = kmixClient->call("masterDeviceIndex");
++ if (reply.isValid())
++ m_deviceIdx = reply;
++
++ reply = kmixClient->call("absoluteVolume", m_deviceIdx);
+ if (reply.isValid())
+ m_volume = reply;
+ else
+@@ -104,7 +112,7 @@ bool GenericMonitor::retrieveVolume()
+ if (kapp->startServiceByDesktopName("kmix")==0) // trying to start kmix
+ {
+ // trying again
+- reply = kmixClient->call("absoluteVolume", 0);
++ reply = kmixClient->call("absoluteVolume", m_deviceIdx);
+ if (reply.isValid())
+ {
+ m_volume = reply;
+@@ -122,9 +130,9 @@ bool GenericMonitor::retrieveVolume()
+
+ return false;
+ } else {
+- reply = kmixClient->call("absoluteVolumeMax", 0);
++ reply = kmixClient->call("absoluteVolumeMax", m_deviceIdx);
+ m_maxVolume = reply;
+- reply = kmixClient->call("absoluteVolumeMin", 0);
++ reply = kmixClient->call("absoluteVolumeMin", m_deviceIdx);
+ m_minVolume = reply;
+ return true;
+ }
+@@ -165,7 +173,7 @@ void GenericMonitor::displayVolume()
+
+ // If we got this far, the DCOP communication with kmix works,
+ // so we don't have to test the result.
+- kmixClient->send("setAbsoluteVolume", 0, m_volume);
++ kmixClient->send("setAbsoluteVolume", m_deviceIdx, m_volume);
+
+ // if mute then unmute
+ if (m_mute)
+diff --git a/kmilo/generic/generic_monitor.h b/kmilo/generic/generic_monitor.h
+index 7a0ba51..d04274f 100644
+--- a/kmilo/generic/generic_monitor.h
++++ b/kmilo/generic/generic_monitor.h
+@@ -74,6 +74,7 @@ private:
+
+ DCOPRef *kmixClient, *kmixWindow;
+
++ int m_deviceIdx;
+ int m_progress;
+ long m_volume, m_oldVolume;
+ bool m_mute;
+--
+1.5.3.4
+
diff --git a/kde-base/kmilo/kmilo-3.5.8-r1.ebuild b/kde-base/kmilo/kmilo-3.5.8-r1.ebuild
new file mode 100644
index 000000000000..ce01f97c0be3
--- /dev/null
+++ b/kde-base/kmilo/kmilo-3.5.8-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/kde-base/kmilo/kmilo-3.5.8-r1.ebuild,v 1.1 2007/11/20 12:50:43 philantrop Exp $
+
+KMNAME=kdeutils
+MAXKDEVER=$PV
+KM_DEPRANGE="$PV $MAXKDEVER"
+inherit kde-meta eutils
+
+DESCRIPTION="kmilo - a kded module that can be extended to support various types of hardware
+input devices that exist, such as those on keyboards."
+KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+IUSE="kdehiddenvisibility pbbuttonsd"
+DEPEND="pbbuttonsd? ( app-laptop/pbbuttonsd )"
+RDEPEND="${DEPEND}"
+
+PATCHES="${FILESDIR}/${P}-198015_XF86Audio.patch"
+
+src_compile() {
+ local myconf="$(use_with pbbuttonsd powerbook)"
+
+ kde-meta_src_compile
+}