diff options
author | Marco Pesenti Gritti <marco@localhost.localdomain> | 2006-10-17 19:53:29 (GMT) |
---|---|---|
committer | Marco Pesenti Gritti <marco@localhost.localdomain> | 2006-10-17 19:53:29 (GMT) |
commit | 79c4bde2b473956bebe53c56c8d27d9dc70b5bce (patch) | |
tree | a01439c6bda59ec1a578237aab1a5c5356253533 /activities | |
parent | f7a04ed3d3df5f82b6b3f69ba93a209dc3bfd2e1 (diff) |
Some infrastructure for scrolling. Based on epiphany extension.
Diffstat (limited to 'activities')
-rw-r--r-- | activities/web/webactivity.py | 5 | ||||
-rw-r--r-- | activities/web/webbrowser.py | 13 |
2 files changed, 18 insertions, 0 deletions
diff --git a/activities/web/webactivity.py b/activities/web/webactivity.py index 1329147..bcd6000 100644 --- a/activities/web/webactivity.py +++ b/activities/web/webactivity.py @@ -39,6 +39,7 @@ class WebActivity(Activity): logging.debug('Starting the web activity') self.set_title(_('Web Activity')) + self.connect('key-press-event', self._key_press_event_cb) vbox = gtk.VBox() @@ -66,6 +67,10 @@ class WebActivity(Activity): self._browser.load_url(_HOMEPAGE) + def _key_press_event_cb(self, window, event): + if event.keyval == gtk.keysyms.F11: + self._browser.toggle_scroll() + def _setup_links_controller(self): links_controller = LinksController(self._service, self._links_model) self._toolbar.set_links_controller(links_controller) diff --git a/activities/web/webbrowser.py b/activities/web/webbrowser.py index 12126b6..18c149a 100644 --- a/activities/web/webbrowser.py +++ b/activities/web/webbrowser.py @@ -15,8 +15,10 @@ # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA import gobject +import gtk from _sugar import Browser +from _sugar import PushScroller class _PopupCreator(gobject.GObject): __gsignals__ = { @@ -77,6 +79,17 @@ class WebBrowser(Browser): def __init__(self): Browser.__init__(self) + self._push_scroller = PushScroller() + self._scrolling = False + + def toggle_scroll(self): + if self._scrolling: + self._push_scroller.stop(gtk.get_current_event_time()) + self._scrolling = False + else: + self._push_scroller.start(self, 0, 0) + self._scrolling = True + def do_create_window(self): popup_creator = _PopupCreator(self.get_toplevel()) popup_creator.connect('popup-created', self._popup_created_cb) |