Bug#262004: rhythmbox: text entry fields don't honor gnome keybindings, at least emacs ones
Loïc Minier
Loïc Minier , 262004@bugs.debian.org
Wed, 13 Oct 2004 17:37:55 +0200
Nick Mitchell <firepile@speakeasy.net> - Wed, Oct 13, 2004:
> for example, in gnome-control-center, the openbox window preferences,
> there's a text entry widget, and all the normal emacs keys function as
> expected (meaning: every emacs control-key cursor navigation command
> works as expected)
Sorry I could not reproduce that, I can launch control-center, then
launch window preferences, but I see not text entry widget in there!
Screenshot: <http://joule.via.ecp.fr/~lool/window-preferences.png>
> but in rhythmbox and sound-juicer, only some of them work; control-b,
> which should be a backspace --- well, instead of the control-b being
> intercepted by the text entry (it, after all, has the focus), is instea=
d
> passed through as an application-global keypress, and interpreted as
> things like "show/hide browser"; in sound-juicer, control-a, which
> should be "go to beginning of line", is instead interpreted as an
> appplication-global "select all tracks"
Rhythmbox has too many keybindings requirements, and they end up
filling the keybinding space. But I really can't understand your
request, it seems you want something you have seen working in other
GTK/GNOME apps, where I didn't.
For example, in a shell, you can type ^A ^E ^U and ^W to go to beginning
of line, end of line, delete a line and a word. This is not possible
in GTK text entry widgets, as proves the Run dialog. They simply
behave differently. This like asking for abiword or gedit to have a
vim-like input mode. While this is technically feasible, such a
feature necessarily compete with keybindings provided in the
applications emulated. For example, almost all keys are bound in vim,
emulating vim input mode would mean that no keybinding would remain for
rhythmbox.
> i have no problem with control-a being "seelct all tracks" when the
> focus isn't in a text widget;
I heard they are rewriting the keybinding part in current rhythmbox to
be more global than it is right now, so things are going to be worse I
fear.
> similar bug: i'm typing this in thunderbird; i hit control-a and
> control-e: while in the text entry widget, they work as emacs keys (eve=
n
> though they have different meanings in an application-global focus);
> however, control-p and control-b, and control-f always fire the global
> handlers (respectively "print", "toggle boldface", and "find")
So you've got the problem with thunderbird, and I can tell you that ^A,
^E and others simply don't work in the Galeon URL input field, and they
probably never will. I think you're expecting something that has been
included by design in GTK.
> at the very least, these applcations should be consistent, one way or
> the other: do we owner *all* or *none* of the emacs keybindings; as it
> is, depending on the application, it's a random assortment!!
I think the designers of the applications you mention never tried to
have something similar to emacs, but either something effected by the
random user. Maybe they inspired from Windows, I tend to see similar
behavior in widgets.
To summarize a bit, I think you would like a new mode of input for all
text entry fields in all gtk applications that would behave as emacs
does for text input and override the application keybindings
temporarily. Did I understand your wish correctly?
Regards,
--
Loïc Minier <lool@dooz.org>