summaryrefslogtreecommitdiff
path: root/grc/gui/NotebookPage.py
diff options
context:
space:
mode:
Diffstat (limited to 'grc/gui/NotebookPage.py')
-rw-r--r--grc/gui/NotebookPage.py13
1 files changed, 10 insertions, 3 deletions
diff --git a/grc/gui/NotebookPage.py b/grc/gui/NotebookPage.py
index 2c1fd7c3b3..6614649c89 100644
--- a/grc/gui/NotebookPage.py
+++ b/grc/gui/NotebookPage.py
@@ -26,9 +26,6 @@ from Constants import MIN_WINDOW_WIDTH, MIN_WINDOW_HEIGHT
from DrawingArea import DrawingArea
import os
-############################################################
-## Notebook Page
-############################################################
class NotebookPage(gtk.HBox):
"""A page in the notebook."""
@@ -79,6 +76,7 @@ class NotebookPage(gtk.HBox):
self.scrolled_window = gtk.ScrolledWindow()
self.scrolled_window.set_size_request(MIN_WINDOW_WIDTH, MIN_WINDOW_HEIGHT)
self.scrolled_window.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
+ self.scrolled_window.connect('key-press-event', self._handle_scroll_window_key_press)
self.drawing_area = DrawingArea(self.get_flow_graph())
self.scrolled_window.add_with_viewport(self.get_drawing_area())
self.pack_start(self.scrolled_window)
@@ -88,6 +86,15 @@ class NotebookPage(gtk.HBox):
def get_drawing_area(self): return self.drawing_area
+ def _handle_scroll_window_key_press(self, widget, event):
+ """forward Ctrl-PgUp/Down to NotebookPage (switch fg instead of horiz. scroll"""
+ is_ctrl_pg = (
+ event.state & gtk.gdk.CONTROL_MASK and
+ event.keyval in (gtk.keysyms.Page_Up, gtk.keysyms.Page_Down)
+ )
+ if is_ctrl_pg:
+ return self.get_parent().event(event)
+
def get_generator(self):
"""
Get the generator object for this flow graph.