From 3d61712d393ea0c849081bee607e416ed855ed88 Mon Sep 17 00:00:00 2001 From: Wulf Krueger Date: Tue, 20 Nov 2007 12:50:44 +0000 Subject: 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) --- kde-base/kmilo/ChangeLog | 11 ++- kde-base/kmilo/files/digest-kmilo-3.5.8-r1 | 3 + .../kmilo/files/kmilo-3.5.8-198015_XF86Audio.patch | 84 ++++++++++++++++++++++ kde-base/kmilo/kmilo-3.5.8-r1.ebuild | 23 ++++++ 4 files changed, 120 insertions(+), 1 deletion(-) create mode 100644 kde-base/kmilo/files/digest-kmilo-3.5.8-r1 create mode 100644 kde-base/kmilo/files/kmilo-3.5.8-198015_XF86Audio.patch create mode 100644 kde-base/kmilo/kmilo-3.5.8-r1.ebuild (limited to 'kde-base/kmilo') 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 + +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 +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 +} -- cgit v1.2.3-65-gdbad