Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/activities
diff options
context:
space:
mode:
authorMarco 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)
commit79c4bde2b473956bebe53c56c8d27d9dc70b5bce (patch)
treea01439c6bda59ec1a578237aab1a5c5356253533 /activities
parentf7a04ed3d3df5f82b6b3f69ba93a209dc3bfd2e1 (diff)
Some infrastructure for scrolling. Based on epiphany extension.
Diffstat (limited to 'activities')
-rw-r--r--activities/web/webactivity.py5
-rw-r--r--activities/web/webbrowser.py13
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)