diff options
Diffstat (limited to 'terminal.py')
-rw-r--r-- | terminal.py | 23 |
1 files changed, 4 insertions, 19 deletions
diff --git a/terminal.py b/terminal.py index ee46fdc..6de7500 100644 --- a/terminal.py +++ b/terminal.py @@ -380,30 +380,15 @@ class TerminalActivity(activity.Activity): vt.fork_command("/bin/su", ('/bin/su', '-')) def __key_press_cb(self, window, event): - """Route some keypresses directly to the vte and then drop them. - - This prevents Sugar from hijacking events that are useful in - the vte. - - """ - - def event_to_vt(event): + # Escape keypresses are routed directly to the vte and then dropped. + # This hack prevents Sugar from hijacking them and canceling + # fullscreen mode. + if gtk.gdk.keyval_name(event.keyval) == 'Escape': current_page = self._notebook.get_current_page() vt = self._notebook.get_nth_page(current_page).vt vt.event(event) - - key_name = gtk.gdk.keyval_name(event.keyval) - - # Escape is used in Sugar to cancel fullscreen mode. - if key_name == 'Escape': - event_to_vt(event) return True - elif event.get_state() & gtk.gdk.CONTROL_MASK: - if key_name in ['z', 'q']: - event_to_vt(event) - return True - return False def read_file(self, file_path): |