Status: Unconfirmed
Owner: ----
Labels: Type-Bug Pri-2 OS-All Area-Misc

New issue 24095 by jonasbernoulli: XKB redirection causes multiple key  
events
http://code.google.com/p/chromium/issues/detail?id=24095

Chrome Version       : 4.0.221.7 (Developer Build 28103)
URLs (if applicable) :
Other browsers tested:
   Firefox 3.5: FAIL, https://bugzilla.mozilla.org/show_bug.cgi?id=500674

What steps will reproduce the problem?
0. setxkbmap -print  # so the current configuration can later be restored

1. cd /path/to/xkb/configuration # likely /usr/share/X11/xkb
2. patch -p5 --backup < us-redirect.2.diff
3. setxkbmap -layout us
4. start chromium, load a page with a text area
4.1 enter some text, move around with "C-j"->"left" and "C-l"->"right"
4.2 enter a j, k or l -> char is insert, but some other actions occurs also

5. setxkbmap -layout "the one from above"

What is the expected result?

Pressing <char> when Control-<char> is redirected (using xkb) to some other
key should just insert <char> and not in addition call whatever function is
bound to Control-<char>.

What happens instead?

Pressing <char> when Control-<char> is redirected inserts <char> but also
performs the function bound to Control-<char>.


In X11 using the X keyboard extension (xkb) it is possible to redirect one
key to another. For example I have redirected "Control+j" to "left",
"Control+l" to "right" and likewise other keys.

So when I press "j" while control is pressed this is supposed to redirect
to another key and release all modifier state before doing so. So all
applications should see/handle is the resulting "left" without a modifier
set. This works correctly in Chromium; when I press Control+j the cursor
moves left.

However if I press just "j" in a text area "j" is inserted but then
chrome://downloads/ is also opened (what C-j) is supposed to do. In the
address bar pressing "j" behaves as expected.

This is rather strange, while one might expect "C-j" not to correctly be
redirected to "j" one would not expect "j" to cause any problems. The only
other application (firefox - what bad luck) I could find that is not able
to handle redirected keys, only misbehaves in case of "C-j"->"left" not "j".

Ps: Unless this is going to be fixed quickly, please tell me where the
bindings for C-j, C-l ... are made in the source, so that I can comment
them out as a workaround. Thx.

--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings

--~--~---------~--~----~------------~-------~--~----~
Automated mail from issue updates at http://crbug.com/
Subscription options: http://groups.google.com/group/chromium-bugs
-~----------~----~----~----~------~----~------~--~---

Reply via email to