Skip to content

Commit

Permalink
#2560 if we don't find a match using shift+mode or shift+mode+group, …
Browse files Browse the repository at this point in the history
…then try with just shift state - still better than the fall-through case

git-svn-id: https://xpra.org/svn/Xpra/trunk@25073 3bb7dfac-3a0b-4e04-842a-767bc560f471
  • Loading branch information
totaam committed Jan 24, 2020
1 parent da97ff2 commit 402f508
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 2 deletions.
1 change: 1 addition & 0 deletions src/content-type/50_class.conf
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ class-instance:tkdiff=text
class-instance:xxdiff=text
class-instance:emacs=text
class-instance:gvim=text
class-instance:mate-terminal=text

class-instance:vlc=video

Expand Down
8 changes: 6 additions & 2 deletions src/xpra/x11/server_keyboard_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -431,11 +431,15 @@ def do_get_keycode(self, client_keycode, keyname, pressed, modifiers, group):
if group:
levels.append(level+4)
levels.append(level)
for i in range(4):
level = int(shift) + i*2
if level not in levels:
levels.append(level)
for level in levels:
keycode = self.keycode_translation.get((keyname, level))
if keycode:
log("get_keycode(%s, %s, %s, %s)=%i (level=%i)",
client_keycode, keyname, modifiers, group, keycode, level)
log("get_keycode(%s, %s, %s, %s)=%i (level=%i, shift=%s, mode=%i)",
client_keycode, keyname, modifiers, group, keycode, level, shift, mode)
break
if keycode is None:
keycode = self.keycode_translation.get(keyname, client_keycode)
Expand Down

0 comments on commit 402f508

Please sign in to comment.