GNOME Bugzilla – Bug 332079
Use OSX/Totem/Rhythmbox-style click-drag volume bar
Last modified: 2015-09-26 04:53:47 UTC
In current Rhythmbox and Totem, you can click and then drag the volume icon to change the volume. But not in the one in the panel - you need to release the button, and reclick the slider. Any reason this hasn't already been implemented? The code is already written in RB/Totem.
Yes, the answer is explanied by the author himself in comment #30 [1] of bug #163313. [1] - http://bugzilla.gnome.org/show_bug.cgi?id=163313#c30
Well, yes - when pressed the mouse would be outside the slider, but what about pressing and sliding the mouse down? What is there stopping the mouse from catching the slider if the button is still pressed? I think both mac and potential stylus users would appreciate it.
Just studied a bit closer how exactly OSX does it, and in deed it could work for GNOME. When clicking the volume icon in the panel, the current level slider thumb¹ is NOT attached to the mouse immediately. It is attached to the mouse ONLY the moment the mouse passes the slider thumb, and ONLY if the mouse is headed away from the window edge. After that, the slider button is attached to the mouse and follows it vertically just like it already does in Totem/RB. This way you press the mouse button over the volume icon, hold it down, drag it down untill you reach the actual thumb, and then you can drag it do adjust the volume to your liking exactly. No need to change the UI for the widget, and voila, we have replaced Click-Click-Drag with just Click-Drag ¹ With thumb here I mean the little thingy in the middle you use to drag. Not 100% sure what the actual term is. Do you see anything hindering this in GNOME? Not of _huge_ importance, but would be nice with click-and-drag volume switching even with the current layout. One of the things that OSX Just Does Right (tm), IMHO.
I can look at the OS X thing, I got it myself here. :-). Anyway, I'll have a look, maybe it's possible. The totem/RB volume widget wasn't incredibly hard.