Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--browser.py27
-rw-r--r--webtoolbar.py19
2 files changed, 26 insertions, 20 deletions
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):