[Sugar-devel] [PATCH Browse v2] Display 'Loading...' message in the tab title while the page is loading #3550
Manuel Kaufmann
humitos at gmail.com
Fri May 4 08:27:31 EDT 2012
First of all, we don't need to open "about:blank" when we create a new
tab, this was making the history to save that "page" and allowing to
go back to it.
That is related with this PATCH because we are checking the browser
"load-status" property to know what title put in the tab label. Now,
we check for the "load-status" property and set the title according to
the load progress: if WebKit is loading the page we put "Loading..."
or the page's title otherwise with the exception of "about:blank" page
that has no title, so we put "Untitled".
Signed-off-by: Manuel Kaufmann <humitos at gmail.com>
---
browser.py | 11 ++++++++++-
1 files changed, 10 insertions(+), 1 deletions(-)
diff --git a/browser.py b/browser.py
index c0bb7bc..6b744a3 100644
--- a/browser.py
+++ b/browser.py
@@ -190,7 +190,6 @@ class TabbedView(BrowserNotebook):
else:
self._append_tab(browser)
self.emit('focus-url-entry')
- browser.load_uri('about:blank')
return browser
def _insert_tab_next(self, browser):
@@ -354,6 +353,7 @@ class TabLabel(Gtk.HBox):
GObject.GObject.__init__(self)
browser.connect('notify::title', self.__title_changed_cb)
+ browser.connect('notify::load-status', self.__load_status_changed_cb)
self._label = Gtk.Label(label=_('Untitled'))
self._label.set_ellipsize(Pango.EllipsizeMode.END)
@@ -392,6 +392,15 @@ class TabLabel(Gtk.HBox):
if widget.props.title:
self._label.set_text(widget.props.title)
+ def __load_status_changed_cb(self, widget, param):
+ status = widget.get_load_status()
+ if WebKit.LoadStatus.PROVISIONAL <= status \
+ < WebKit.LoadStatus.FINISHED:
+ self._label.set_text(_('Loading...'))
+ elif status == WebKit.LoadStatus.FINISHED:
+ if widget.props.title == None:
+ self._label.set_text(_('Untitled'))
+
class Browser(WebKit.WebView):
__gtype_name__ = 'Browser'
--
1.7.7.6
More information about the Sugar-devel
mailing list