diff --git a/src/groupchat_control.py b/src/groupchat_control.py index 267c2917e..cd8b7d905 100644 --- a/src/groupchat_control.py +++ b/src/groupchat_control.py @@ -688,7 +688,7 @@ class GroupchatControl(ChatControlBase): ag = gtk.accel_groups_from_object(self.parent_win.window)[0] change_nick_menuitem.add_accelerator('activate', ag, gtk.keysyms.n, - gtk.gdk.CONTROL_MASK, gtk.ACCEL_VISIBLE) + gtk.gdk.CONTROL_MASK | gtk.gdk.SHIFT_MASK, gtk.ACCEL_VISIBLE) change_subject_menuitem.add_accelerator('activate', ag, gtk.keysyms.t, gtk.gdk.MOD1_MASK, gtk.ACCEL_VISIBLE) bookmark_room_menuitem.add_accelerator('activate', ag, gtk.keysyms.b, @@ -760,7 +760,7 @@ class GroupchatControl(ChatControlBase): # destroy accelerators ag = gtk.accel_groups_from_object(self.parent_win.window)[0] change_nick_menuitem.remove_accelerator(ag, gtk.keysyms.n, - gtk.gdk.CONTROL_MASK) + gtk.gdk.CONTROL_MASK | gtk.gdk.SHIFT_MASK) change_subject_menuitem.remove_accelerator(ag, gtk.keysyms.t, gtk.gdk.MOD1_MASK) bookmark_room_menuitem.remove_accelerator(ag, gtk.keysyms.b, diff --git a/src/message_window.py b/src/message_window.py index ae9fcc44e..82417fd34 100644 --- a/src/message_window.py +++ b/src/message_window.py @@ -101,8 +101,8 @@ class MessageWindow(object): self.handlers[id_] = self.window keys=['f', 'g', 'h', 'i', - 'l', 'L', 'n', 'u', - 'b', 'Tab', 'Tab', 'F4', + 'l', 'L', 'n', 'u', + 'b', 'F4', 'w', 'Page_Up', 'Page_Down', 'Right', 'Left', 'd', 'c', 'm', 't', 'Escape'] + \ [''+str(i) for i in xrange(10)] @@ -352,19 +352,12 @@ class MessageWindow(object): control._on_contact_information_menuitem_activate(None) elif keyval == gtk.keysyms.l or keyval == gtk.keysyms.L: # CTRL + l|L control.conv_textview.clear() - elif control.type_id == message_control.TYPE_GC and \ - keyval == gtk.keysyms.n: # CTRL + n - control._on_change_nick_menuitem_activate(None) elif keyval == gtk.keysyms.u: # CTRL + u: emacs style clear line control.clear(control.msg_textview) elif control.type_id == message_control.TYPE_GC and \ keyval == gtk.keysyms.b: # CTRL + b control._on_bookmark_room_menuitem_activate(None) # Tab switch bindings - elif keyval == gtk.keysyms.ISO_Left_Tab: # CTRL + SHIFT + TAB - self.move_to_next_unread_tab(False) - elif keyval == gtk.keysyms.Tab: # CTRL + TAB - self.move_to_next_unread_tab(True) elif keyval == gtk.keysyms.F4: # CTRL + F4 self.remove_tab(control, self.CLOSE_CTRL_KEY) elif keyval == gtk.keysyms.w: # CTRL + w @@ -383,6 +376,11 @@ class MessageWindow(object): event.keyval = int(keyval) self.notebook.emit('key_press_event', event) + if modifier & gtk.gdk.SHIFT_MASK: + # CTRL + SHIFT + if control.type_id == message_control.TYPE_GC and \ + keyval == gtk.keysyms.n: # CTRL + SHIFT + n + control._on_change_nick_menuitem_activate(None) # MOD1 (ALT) mask elif modifier & gtk.gdk.MOD1_MASK: # Tab switch bindings