Some infrastructure for scrolling. Based on epiphany extension.

This commit is contained in:
Marco Pesenti Gritti
2006-10-17 21:53:29 +02:00
parent f7a04ed3d3
commit 79c4bde2b4
10 changed files with 440 additions and 3 deletions
+5
View File
@@ -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)
+13
View File
@@ -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)