After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 104537 - Rhythmbox needs to work with ACME
Rhythmbox needs to work with ACME
Status: RESOLVED FIXED
Product: rhythmbox
Classification: Other
Component: general
unspecified
Other All
: Normal enhancement
: ---
Assigned To: Sean Harshbarger
Sean Harshbarger
Depends on:
Blocks:
 
 
Reported: 2003-01-27 16:37 UTC by John Meuser
Modified: 2004-12-22 21:47 UTC
See Also:
GNOME target: ---
GNOME version: Unversioned Enhancement


Attachments
The attached patch adds basic ACME functionality, with the Pause / Play / Prev / Next functions added to the rb-player code. (2.76 KB, patch)
2003-01-31 23:45 UTC, Mark Humphreys
none Details | Review
Patch for the 0.4.4.99.4 branch (4.48 KB, patch)
2003-02-09 13:12 UTC, Mark Humphreys
none Details | Review
Patch for CVS HEAD. (5.64 KB, patch)
2003-02-11 00:26 UTC, Mark Humphreys
none Details | Review
Patch against net-rb head (09/05/03) (5.22 KB, patch)
2003-05-09 11:34 UTC, Mark Humphreys
none Details | Review
Patch against the latest rhythmbox HEAD (4.47 KB, patch)
2003-05-11 11:59 UTC, Mark Humphreys
none Details | Review
Slightly fixed version of previous patch (4.92 KB, patch)
2003-05-11 12:05 UTC, Mark Humphreys
none Details | Review
This patch grabs the keys so that the rhythmbox window doesn't need to have the focus. (5.41 KB, patch)
2003-08-16 13:10 UTC, Jan Arne Petersen
none Details | Review

Description John Meuser 2003-01-27 16:37:29 UTC
ACME is a great multimedia key mapping program, but right now the only
program that works with it is totem.  I think Rhythmbox support will make
both programs much more useful.
Comment 1 Mark Humphreys 2003-01-29 11:55:20 UTC
ACME has the following functions that are applicable ...

- Volume keys (Mute, Volume Down, Volume Up)

These change the global settings, but could be changed to do so in rb
if it is present (will need to be changed in ACME I think). rb should
probably allow these functions anyway.

- Play, Pause, Stop, Previous and Next, and Refresh (see News below)

See also ..

http://bugzilla.gnome.org/show_bug.cgi?id=99376
Comment 2 Bastien Nocera 2003-01-29 12:05:43 UTC
There's nothing to change in ACME to support these keys with
Rhythmbox. ACME is application agnostic on purpose. All it does is
associate the keys with the keysym.

Rhythmbox just needs to catch keycodes like totem does. For example:

static gboolean
totem_action_handle_key (Totem *totem, guint keyval)
{
        gboolean retval = TRUE;
                                                                     
          
        switch (keyval) {
        case XF86XK_AudioPlay:
        case XF86XK_AudioPause:
        case GDK_p:
        case GDK_P:
                totem_action_play_pause (totem);
                break;
etc.
Comment 3 Mark Humphreys 2003-01-29 21:33:31 UTC
Cool, in which case, I'll have look at what totem does.
Comment 4 Mark Humphreys 2003-01-29 23:17:24 UTC
Cheers for the gentle nudge. ACME is really cool, and I should've read
the README! 

Only problem is that when I try to trap the key presses for
'XF86XK_AudioLowerVolume', 'XF86XK_AudioRaiseVolume' and
'XF86XK_AudioMute', these are intercepted by ESD (or something). Are
these keys preset, or is it a 'first-come', 'first-served' basis? 
Comment 5 John Meuser 2003-01-30 01:27:38 UTC
I'm not sure, you may want to contact the ACME maintainer:
hadess@hadess.net
Comment 6 Bastien Nocera 2003-01-30 09:11:13 UTC
They work just the same way normal keys would.

'XF86XK_AudioLowerVolume', 'XF86XK_AudioRaiseVolume' and
'XF86XK_AudioMute' aren't bound by ACME.

All the other ones should work properly.
Comment 7 Mark Humphreys 2003-01-31 23:45:44 UTC
Created attachment 14009 [details] [review]
The attached patch adds basic ACME functionality, with the Pause / Play   / Prev / Next functions added to the rb-player code.
Comment 8 Bastien Nocera 2003-02-02 11:13:13 UTC
Mark: use diff -u, don't use C++ style comments, check for modifiers
and don't forget to add checks for the keysyms header in configure.in
(see acme CVS' configure.in).
Comment 9 Mark Humphreys 2003-02-09 13:11:57 UTC
I've worked on a patch for the 0.4.4.99.4 branch of the code, which
fixes most of the above.
Comment 10 Mark Humphreys 2003-02-09 13:12:53 UTC
Created attachment 14216 [details] [review]
Patch for the 0.4.4.99.4 branch
Comment 11 Mark Humphreys 2003-02-11 00:26:19 UTC
Created attachment 14247 [details] [review]
Patch for CVS HEAD.
Comment 12 Mark Humphreys 2003-02-11 00:27:28 UTC
The patch to the HEAD (above) probably needs some work to detect
whether the NEXT and PREV functionality should be called, to avoiding
going beyond the bounds of the current 'selection'.
Comment 13 Mark Humphreys 2003-05-09 11:34:11 UTC
Created attachment 16388 [details] [review]
Patch against net-rb head (09/05/03)
Comment 14 Mark Humphreys 2003-05-11 11:59:15 UTC
Created attachment 16423 [details] [review]
Patch against the latest rhythmbox HEAD
Comment 15 Mark Humphreys 2003-05-11 12:05:28 UTC
Created attachment 16424 [details] [review]
Slightly fixed version of previous patch
Comment 16 Sean Harshbarger 2003-08-03 11:14:53 UTC
Assigning to me.

-harshy
Comment 17 Jan Arne Petersen 2003-08-16 13:10:26 UTC
Created attachment 19264 [details] [review]
This patch grabs the keys so that the rhythmbox window doesn't need to have the focus.
Comment 18 Sean Harshbarger 2003-08-16 22:50:04 UTC
Patch in cvs, Thanks!