From 3e842eada4a99762da2b5864d8d5eccbf46d9bf3 Mon Sep 17 00:00:00 2001 From: Lucian Branescu Mihaila Date: Mon, 05 Jul 2010 18:24:18 +0000 Subject: Add visible scrollbars, small fixes. --- diff --git a/browser.py b/browser.py index e2d2419..95878a9 100644 --- a/browser.py +++ b/browser.py @@ -58,6 +58,7 @@ class TabbedView(gtk.Notebook): def new_tab(self, uri=None): browser = Browser() self._append_tab(browser) + if uri: browser.load_uri(uri)# or self.HOME_PAGE) @@ -68,6 +69,9 @@ class TabbedView(gtk.Notebook): #set stylesheets settings = browser.get_settings() + # improves browsing on some buggy websites + settings.set_property('enable-site-specific-quirks', True) + #if os.path.exists(self.AGENT_SHEET): # # used to disable flash movies until you click them. # settings.set_property('user-stylesheet-uri', 'file:///' + @@ -76,12 +80,14 @@ class TabbedView(gtk.Notebook): settings.set_property('user-stylesheet-uri', 'file:///' + self.USER_SHEET) - # improves browsing on some buggy websites - settings.set_property('enable-site-specific-quirks', True) - - self.append_page(browser, label) + sw = gtk.ScrolledWindow() + sw.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC) + sw.add(browser) browser.show() + self.append_page(sw, label) + sw.show() + self.set_current_page(-1) self.props.show_tabs = self.get_n_pages() > 1 @@ -91,7 +97,7 @@ class TabbedView(gtk.Notebook): self.props.show_tabs = self.get_n_pages() > 1 def _get_current_browser(self): - return self.get_nth_page(self.get_current_page()) + return self.get_nth_page(self.get_current_page()).get_child() current_browser = gobject.property(type=object, getter=_get_current_browser) @@ -99,7 +105,7 @@ class TabbedView(gtk.Notebook): def get_session(self): tab_sessions = [] for index in xrange(0, self.get_n_pages()): - browser = self.get_nth_page(index) + browser = self.get_nth_page(index).get_child() tab_sessions.append(browser.get_session()) return tab_sessions @@ -163,17 +169,18 @@ class TabLabel(gtk.HBox): def __browser_loaded_cb(self, browser, load_status): browser.connect('notify::uri', self.__location_changed_cb) - browser.connect('notify::title', self.__title_changed_cb) + browser.connect('title-changed', self.__title_changed_cb) - def __location_changed_cb(self, browser, uri): - sefl._label.set_text(uri) + def __location_changed_cb(self, browser, paramspec): + self._label.set_text(browser.props.uri) - def __title_changed_cb(self, browser, title): + def __title_changed_cb(self, browser, frame, title): self._label.set_text(title) class Browser(webkit.WebView): __gtype_name__ = 'Browser' + # TODO scrollbars def __init__(self): webkit.WebView.__init__(self) diff --git a/webtoolbar.py b/webtoolbar.py index 1503cb6..a8b43e6 100644 --- a/webtoolbar.py +++ b/webtoolbar.py @@ -16,6 +16,7 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +import logging from gettext import gettext as _ import gobject @@ -67,7 +68,7 @@ class WebEntry(AddressEntry): recognize changes caused directly by user actions""" self.handler_block(self._change_hid) try: - self.props.text = text + self.props.text = text # TODO fix for webkit finally: self.handler_unblock(self._change_hid) self.set_position(-1) @@ -313,7 +314,7 @@ class PrimaryToolbar(ToolbarBox): 'notify::uri', self.__location_changed_cb) self._loading_changed_hid = self._browser.connect( 'load-finished', self.__loading_finished_cb) - # cannot use notify::load-status until PyGI+webkitgtk + # cannot use notify::load-status until webkitgtk 1.1.7+ self._loading_started_hid = self._browser.connect( 'load-started', self.__loading_started_cb) self._progress_changed_hid = self._browser.connect( @@ -340,7 +341,7 @@ class PrimaryToolbar(ToolbarBox): gobject.idle_add(self._reload_session_history, current_page_index) def __location_changed_cb(self, frame): - self._set_address(frame.props.uri) + self._set_address(frame.get_uri()) self._update_navigation_buttons() filepicker.cleanup_temp_files() @@ -373,8 +374,8 @@ class PrimaryToolbar(ToolbarBox): browser = self._tabbed_view.props.current_browser history = browser.get_back_forward_list() - self._back.props.sensitive = history.get_back_length > 0 - self._forward.props.sensitive = history.get_forward_length > 0 + self._back.props.sensitive = history.get_back_length() > 0 + self._forward.props.sensitive = history.get_forward_length() > 0 def _entry_activate_cb(self, entry): browser = self._tabbed_view.props.current_browser @@ -382,12 +383,10 @@ class PrimaryToolbar(ToolbarBox): browser.grab_focus() def _go_back_cb(self, button): - browser = self._tabbed_view.props.current_browser - browser.get_back_forward_list().go_back() + self._tabbed_view.props.current_browser.go_back() def _go_forward_cb(self, button): - browser = self._tabbed_view.props.current_browser - browser.get_back_forward_list().go_forward() + self._tabbed_view.props.current_browser.go_forward() def _title_changed_cb(self, frame, title, user_data): self._set_title(title) @@ -452,7 +451,7 @@ class PrimaryToolbar(ToolbarBox): def _history_item_activated_cb(self, menu_item, index): browser = self._tabbed_view.props.current_browser history = browser.get_back_forward_list() - + history.go_to_item(history.get_nth_item(index)) def _link_add_clicked_cb(self, button): -- cgit v0.9.1