diff --git a/suite/browser/tabbrowser.xml b/suite/browser/tabbrowser.xml
index bc9595abd45..bb025957c77 100644
--- a/suite/browser/tabbrowser.xml
+++ b/suite/browser/tabbrowser.xml
@@ -69,7 +69,7 @@
onclick="if (event.button != 1 || event.target.localName != 'tab') return; this.parentNode.parentNode.parentNode.removeTab(event.target);"
ondragover="nsDragAndDrop.dragOver(event, this.parentNode.parentNode.parentNode); event.stopPropagation();"
ondragdrop="nsDragAndDrop.drop(event, this.parentNode.parentNode.parentNode); event.stopPropagation();">
-
+
@@ -124,6 +124,7 @@
mTabBrowser: aTabBrowser,
mTab: aTab,
mBlank: aStartsBlank,
+ mIcon: "",
onProgressChange : function (aWebProgress, aRequest,
aCurSelfProgress, aMaxSelfProgress,
@@ -156,7 +157,9 @@
aStateFlags & nsIWebProgressListener.STATE_IS_NETWORK) {
this.mTab.setAttribute("busy", "true");
this.mTab.label = this.mTabBrowser.mStringBundle.getString("tabs.loading");
-
+ this.mTab.removeAttribute("image");
+ this.mIcon = "";
+
if (this.mTabBrowser.mCurrentTab == this.mTab)
this.mTabBrowser.mIsBusy = true;
}
@@ -164,14 +167,22 @@
aStateFlags & nsIWebProgressListener.STATE_IS_NETWORK) {
if (this.mBlank)
this.mBlank = false;
- else {
- this.mTab.removeAttribute("busy");
- if (this.mTab.label == this.mTabBrowser.mStringBundle.getString("tabs.loading"))
- this.mTab.label = this.mTabBrowser.mStringBundle.getString("tabs.untitled")
- if (this.mTabBrowser.mCurrentTab == this.mTab)
- this.mTabBrowser.mIsBusy = false;
+ this.mTab.removeAttribute("busy");
+
+ var location = aRequest.QueryInterface(nsIChannel).URI;
+ if (this.mIcon) {
+ this.mTab.setAttribute("image", this.mIcon);
+ mIcon = "";
}
+ else if (pref.getBoolPref("browser.chrome.site_icons") && location && (location.schemeIs("http") || location.schemeIs("https")))
+ this.mTab.setAttribute("image", this.mTabBrowser.buildFavIconString(location));
+
+ if (this.mTab.label == this.mTabBrowser.mStringBundle.getString("tabs.loading"))
+ this.mTab.label = this.mTabBrowser.mStringBundle.getString("tabs.untitled")
+
+ if (this.mTabBrowser.mCurrentTab == this.mTab)
+ this.mTabBrowser.mIsBusy = false;
}
if (!oldBlank && this.mTabBrowser.mCurrentTab == this.mTab) {
@@ -232,6 +243,16 @@