diff options
author | Yann Leboulanger <asterix@lagaule.org> | 2010-02-19 00:05:07 +0300 |
---|---|---|
committer | Yann Leboulanger <asterix@lagaule.org> | 2010-02-19 00:05:07 +0300 |
commit | e3ae80b0e2a1cb942ccbcf6688e9a9df2e9e2c0d (patch) | |
tree | 81e3bb9e1806599fd41f9ab52bb159eb3a172910 | |
parent | 29afa521666a17910b1f48fc23480a7d5a358a47 (diff) |
fix CTRL+C with non-latin keyboard. Fixes #1503
-rw-r--r-- | src/chat_control.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/chat_control.py b/src/chat_control.py index 4e0fc5d96..a1a6c4c97 100644 --- a/src/chat_control.py +++ b/src/chat_control.py @@ -525,7 +525,11 @@ class ChatControlBase(MessageControl, ChatCommandProcessor, CommandTools): self.connect_style_event(widget, opts[0], opts[1]) def _conv_textview_key_press_event(self, widget, event): - if (event.state & gtk.gdk.CONTROL_MASK and event.keyval in (gtk.keysyms.c, + # translate any layout to latin_layout + keymap = gtk.gdk.keymap_get_default() + keycode, group, level = keymap.get_entries_for_keyval(event.keyval)[0] + keycodec, group, level = keymap.get_entries_for_keyval(gtk.keysyms.c)[0] + if (event.state & gtk.gdk.CONTROL_MASK and event.keyval in (keycodec, gtk.keysyms.Insert)) or (event.state & gtk.gdk.SHIFT_MASK and \ event.keyval in (gtk.keysyms.Page_Down, gtk.keysyms.Page_Up)): return False |