Add Ctrl+MouseWheel Zoom in/out and Shift+MouseWheel page scroll up/down
This commit is contained in:
parent
e4193aa828
commit
a1ff320121
|
@ -320,6 +320,7 @@ class Terminal(gtk.VBox):
|
||||||
|
|
||||||
self.vte.connect('key-press-event', self.on_keypress)
|
self.vte.connect('key-press-event', self.on_keypress)
|
||||||
self.vte.connect('button-press-event', self.on_buttonpress)
|
self.vte.connect('button-press-event', self.on_buttonpress)
|
||||||
|
self.vte.connect('scroll-event', self.on_mousewheel)
|
||||||
self.vte.connect('popup-menu', self.popup_menu)
|
self.vte.connect('popup-menu', self.popup_menu)
|
||||||
|
|
||||||
srcvtetargets = [("vte", gtk.TARGET_SAME_APP, self.TARGET_TYPE_VTE)]
|
srcvtetargets = [("vte", gtk.TARGET_SAME_APP, self.TARGET_TYPE_VTE)]
|
||||||
|
@ -879,6 +880,26 @@ class Terminal(gtk.VBox):
|
||||||
|
|
||||||
return(False)
|
return(False)
|
||||||
|
|
||||||
|
def on_mousewheel(self, widget, event):
|
||||||
|
"""Handler for modifier + mouse wheel scroll events"""
|
||||||
|
if event.state & gtk.gdk.CONTROL_MASK == gtk.gdk.CONTROL_MASK:
|
||||||
|
# Ctrl + mouse wheel up/down
|
||||||
|
if event.direction == gtk.gdk.SCROLL_UP:
|
||||||
|
self.zoom_in()
|
||||||
|
return (True)
|
||||||
|
elif event.direction == gtk.gdk.SCROLL_DOWN:
|
||||||
|
self.zoom_out()
|
||||||
|
return (True)
|
||||||
|
if event.state & gtk.gdk.SHIFT_MASK == gtk.gdk.SHIFT_MASK:
|
||||||
|
# Shift + mouse wheel up/down
|
||||||
|
if event.direction == gtk.gdk.SCROLL_UP:
|
||||||
|
self.scroll_by_page(-1)
|
||||||
|
return (True)
|
||||||
|
elif event.direction == gtk.gdk.SCROLL_DOWN:
|
||||||
|
self.scroll_by_page(1)
|
||||||
|
return (True)
|
||||||
|
return(False)
|
||||||
|
|
||||||
def popup_menu(self, widget, event=None):
|
def popup_menu(self, widget, event=None):
|
||||||
"""Display the context menu"""
|
"""Display the context menu"""
|
||||||
menu = TerminalPopupMenu(self)
|
menu = TerminalPopupMenu(self)
|
||||||
|
|
Loading…
Reference in New Issue