From d433ab72110c66d5a599491b6f7740741d6bbe96 Mon Sep 17 00:00:00 2001 From: Antoine Martin Date: Wed, 4 Oct 2017 08:54:31 +0000 Subject: [PATCH] #1568: fix keyboard handling (usual strings vs bytes..) git-svn-id: https://xpra.org/svn/Xpra/trunk@17095 3bb7dfac-3a0b-4e04-842a-767bc560f471 --- src/xpra/server/server_base.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/xpra/server/server_base.py b/src/xpra/server/server_base.py index 12614f973e..40f2555c3e 100644 --- a/src/xpra/server/server_base.py +++ b/src/xpra/server/server_base.py @@ -2832,6 +2832,8 @@ def _process_key_action(self, proto, packet): ss = self._server_sources.get(proto) if ss is None: return + keyname = bytestostr(keyname) + modifiers = tuple(bytestostr(x) for x in modifiers) self.ui_driver = ss.uuid self.set_keyboard_layout_group(group) keycode = self.get_keycode(ss, client_keycode, keyname, modifiers) @@ -2934,6 +2936,8 @@ def _process_key_repeat(self, proto, packet): ss = self._server_sources.get(proto) if ss is None: return + keyname = bytestostr(keyname) + modifiers = tuple(bytestostr(x) for x in modifiers) keycode = ss.get_keycode(client_keycode, keyname, modifiers) #key repeat uses modifiers from a pointer event, so ignore mod_pointermissing: ss.make_keymask_match(modifiers)