I second Rob D's comment, I also don't get the "Error grabbing key" message.
Furthermore, I confirmed the keys are "grab-able" with the following test:
1. Open quodlibet
2. Try using multimedia keys to control quodlibet -- no effect
3. Without closing quodlibet, open Rhythmbox
4. Try using multimedia keys to control Rhythmbox -- works fine
The full output of quodlibet when run from the terminal is as follows (up-to-date Ubuntu Feisty Fawn system:)
fraser@ged:~$ quodlibet
Supported formats: mod, mp3, mp4, mpc, trueaudio, wav, wavpack, xiph
Loaded song library.
Opening audio device.
/usr/share/quodlibet/qltk/dbus_.py:11: DeprecationWarning: The dbus_bindings module is deprecated and will go away soon.
dbus-python 0.80 provides only a partial emulation of the old
dbus_bindings, which was never meant to be public API.
Most uses of dbus_bindings are applications catching the exception
dbus.dbus_bindings.DBusException. You should use dbus.DBusException
instead (this is compatible with all dbus-python versions since 0.40.2).
If you need additional public API, please contact the maintainers via
<email address hidden>.
from dbus.dbus_bindings import DBusException
Traceback (most recent call last):
File "/usr/share/quodlibet/plugins/events.py", line 95, in _load
try: obj = Kind()
File "/usr/share/quodlibet/plugins/events/gajim_status.py", line 53, in __init__
self.interface = dbus.Interface(dbus.SessionBus().get_object('org.gajim.dbus', '/org/gajim/dbus/RemoteObject'), 'org.gajim.dbus.RemoteInterface')
File "/var/lib/python-support/python2.5/dbus/_dbus.py", line 410, in get_object
follow_name_owner_changes=follow_name_owner_changes)
File "/var/lib/python-support/python2.5/dbus/proxies.py", line 230, in __init__
_dbus_bindings.UInt32(0))
File "/var/lib/python-support/python2.5/dbus/proxies.py", line 169, in __call__
reply_message = self._connection.send_message_with_reply_and_block(message, timeout)
DBusException: org.freedesktop.DBus.Error.ServiceUnknown: The name org.gajim.dbus was not provided by any .service files
/usr/share/quodlibet/plugins/events/trayicon.py:15: DeprecationWarning: the module egg.trayicon is deprecated; equivalent functionality can now be found in pygtk 2.10
import egg.trayicon as trayicon
Traceback (most recent call last):
File "/usr/share/quodlibet/plugins/events.py", line 128, in __invoke
try: handler(*args)
File "/usr/share/quodlibet/plugins/events/autorating.py", line 20, in plugin_on_song_ended
rating = song["~#rating"]
TypeError: 'NoneType' object is unsubscriptable
I second Rob D's comment, I also don't get the "Error grabbing key" message.
Furthermore, I confirmed the keys are "grab-able" with the following test:
1. Open quodlibet
2. Try using multimedia keys to control quodlibet -- no effect
3. Without closing quodlibet, open Rhythmbox
4. Try using multimedia keys to control Rhythmbox -- works fine
The full output of quodlibet when run from the terminal is as follows (up-to-date Ubuntu Feisty Fawn system:)
fraser@ged:~$ quodlibet quodlibet/ qltk/dbus_ .py:11: DeprecationWarning: The dbus_bindings module is deprecated and will go away soon.
Supported formats: mod, mp3, mp4, mpc, trueaudio, wav, wavpack, xiph
Loaded song library.
Opening audio device.
/usr/share/
dbus-python 0.80 provides only a partial emulation of the old
dbus_bindings, which was never meant to be public API.
Most uses of dbus_bindings are applications catching the exception bindings. DBusException. You should use dbus.DBusException
dbus.dbus_
instead (this is compatible with all dbus-python versions since 0.40.2).
If you need additional public API, please contact the maintainers via
<email address hidden>.
from dbus.dbus_bindings import DBusException quodlibet/ plugins/ events. py", line 95, in _load quodlibet/ plugins/ events/ gajim_status. py", line 53, in __init__ dbus.SessionBus ().get_ object( 'org.gajim. dbus', '/org/gajim/ dbus/RemoteObje ct'), 'org.gajim. dbus.RemoteInte rface') python- support/ python2. 5/dbus/ _dbus.py" , line 410, in get_object name_owner_ changes= follow_ name_owner_ changes) python- support/ python2. 5/dbus/ proxies. py", line 230, in __init__ bindings. UInt32( 0)) python- support/ python2. 5/dbus/ proxies. py", line 169, in __call__ n.send_ message_ with_reply_ and_block( message, timeout) .DBus.Error. ServiceUnknown: The name org.gajim.dbus was not provided by any .service files quodlibet/ plugins/ events/ trayicon. py:15: DeprecationWarning: the module egg.trayicon is deprecated; equivalent functionality can now be found in pygtk 2.10 quodlibet/ plugins/ events. py", line 128, in __invoke quodlibet/ plugins/ events/ autorating. py", line 20, in plugin_ on_song_ ended
Traceback (most recent call last):
File "/usr/share/
try: obj = Kind()
File "/usr/share/
self.interface = dbus.Interface(
File "/var/lib/
follow_
File "/var/lib/
_dbus_
File "/var/lib/
reply_message = self._connectio
DBusException: org.freedesktop
/usr/share/
import egg.trayicon as trayicon
Traceback (most recent call last):
File "/usr/share/
try: handler(*args)
File "/usr/share/
rating = song["~#rating"]
TypeError: 'NoneType' object is unsubscriptable