diff --git a/mozilla/themes/classic/communicator/bookmarks/bookmarks.css b/mozilla/themes/classic/communicator/bookmarks/bookmarks.css
index 6bdf61fd29a..b278d6544da 100644
--- a/mozilla/themes/classic/communicator/bookmarks/bookmarks.css
+++ b/mozilla/themes/classic/communicator/bookmarks/bookmarks.css
@@ -67,3 +67,16 @@ outlinerbody:-moz-outliner-image(Name) {
list-style-image: url("chrome://communicator/skin/bookmarks/bookmark-item-updated.gif") !important;
}
+.bookmark-item > .toolbarbutton-box > .toolbarbutton-icon
+{
+ list-style-image: inherit;
+ width: 16px;
+ height: 16px;
+}
+
+.tree-cell-icon, .tree-cell-primary-icon {
+ list-style-image: inherit;
+ height: 16px;
+ max-width: 32px; /* 32 pixel hack to get too-large favicons to show; fix when tree becomes outliner */
+ max-height: 16px;
+}
diff --git a/mozilla/themes/classic/global/mac/classicBindings.xml b/mozilla/themes/classic/global/mac/classicBindings.xml
index 00281f8df8d..fe6a89d241a 100644
--- a/mozilla/themes/classic/global/mac/classicBindings.xml
+++ b/mozilla/themes/classic/global/mac/classicBindings.xml
@@ -194,7 +194,7 @@
-
+
@@ -203,7 +203,7 @@
-
+
diff --git a/mozilla/themes/classic/global/mac/menu.css b/mozilla/themes/classic/global/mac/menu.css
index 016e3f34fa8..6362ab9f04e 100644
--- a/mozilla/themes/classic/global/mac/menu.css
+++ b/mozilla/themes/classic/global/mac/menu.css
@@ -228,3 +228,9 @@ menuitem[checked="true"][menuactive="true"]
margin-left: -6px;
list-style-image: url("chrome://global/skin/columnselect.gif");
}
+
+.menu-iconic-icon {
+ width: 16px;
+ height: 16px;
+ list-style-image: inherit;
+}
diff --git a/mozilla/themes/classic/global/win/menu.css b/mozilla/themes/classic/global/win/menu.css
index aa9784c4d49..06e88850d8e 100644
--- a/mozilla/themes/classic/global/win/menu.css
+++ b/mozilla/themes/classic/global/win/menu.css
@@ -89,8 +89,6 @@ popup > menuitem[menuactive="true"]
{
color : inherit;
margin : 0px 4px 0px 3px;
- width : 16px;
- list-style-image : inherit;
}
.menubar-left
@@ -243,4 +241,11 @@ menuitem[checked="true"][type="radio"][menuactive="true"]
{
margin-left: -4px;
list-style-image: url("chrome://global/skin/columnselect.gif");
- }
\ No newline at end of file
+ }
+
+ .menu-iconic-icon
+ {
+ width: 16px;
+ height: 16px;
+ list-style-image: inherit;
+ }
diff --git a/mozilla/themes/modern/communicator/bookmarks/bookmarks.css b/mozilla/themes/modern/communicator/bookmarks/bookmarks.css
index c250137cf7e..db7084da2be 100644
--- a/mozilla/themes/modern/communicator/bookmarks/bookmarks.css
+++ b/mozilla/themes/modern/communicator/bookmarks/bookmarks.css
@@ -53,3 +53,16 @@
list-style-image: url("chrome://communicator/skin/icons/loading.gif") !important;
}
+.bookmark-item > .toolbarbutton-box > .toolbarbutton-icon
+{
+ list-style-image: inherit;
+ width: 16px;
+ height: 16px;
+}
+
+.tree-cell-icon, .tree-cell-primary-icon {
+ list-style-image: inherit;
+ height: 16px;
+ max-width: 32px; /* 32 pixel hack to get too-large favicons to show; fix when tree becomes outliner */
+ max-height: 16px;
+}
diff --git a/mozilla/themes/modern/global/menu.css b/mozilla/themes/modern/global/menu.css
index 1b273a3db20..86042464853 100644
--- a/mozilla/themes/modern/global/menu.css
+++ b/mozilla/themes/modern/global/menu.css
@@ -68,16 +68,17 @@ menuitem[menuactive="true"][disabled="true"] {
padding-right: 14px;
}
-.menu-iconic-left {
- width: 16px;
- list-style-image: inherit;
-}
-
.menu-iconic-accel {
margin-left: 4px;
padding-right: 14px;
}
+.menu-iconic-icon {
+ width: 16px;
+ height: 16px;
+ list-style-image: inherit;
+}
+
/* ..... menu arrow box ..... */
.menu-right {
diff --git a/mozilla/xpfe/browser/resources/content/navigator.js b/mozilla/xpfe/browser/resources/content/navigator.js
index 6aad91b1254..f8f41e6fad7 100644
--- a/mozilla/xpfe/browser/resources/content/navigator.js
+++ b/mozilla/xpfe/browser/resources/content/navigator.js
@@ -121,6 +121,19 @@ function UpdateBookmarksLastVisitedDate(event)
}
}
+function HandleBookmarkIcon(iconURL, addFlag)
+{
+ var url = _content.location.href;
+ if (url) {
+ // update URL with new icon reference
+ if (!gBookmarksService)
+ gBookmarksService = Components.classes["@mozilla.org/browser/bookmarks-service;1"]
+ .getService(Components.interfaces.nsIBookmarksService);
+ if (addFlag) gBookmarksService.UpdateBookmarkIcon(url, iconURL);
+ else gBookmarksService.RemoveBookmarkIcon(url, iconURL);
+ }
+}
+
function UpdateInternetSearchResults(event)
{
// XXX This somehow causes a big leak, back to the old way
diff --git a/mozilla/xpfe/browser/resources/content/navigator.xul b/mozilla/xpfe/browser/resources/content/navigator.xul
index 3e2bff78341..55914854947 100644
--- a/mozilla/xpfe/browser/resources/content/navigator.xul
+++ b/mozilla/xpfe/browser/resources/content/navigator.xul
@@ -189,8 +189,8 @@ Contributor(s): ______________________________________. -->
ondraggesture="PageProxyDragGesture(event);"/>
+ onload="this.parentNode.selectedIndex = 1; event.stopPropagation(); event.preventBubble(); HandleBookmarkIcon(this.src, true);"
+ onerror="gBrowser.addToMissedIconCache(this.src); HandleBookmarkIcon(this.src, false);"/>
@@ -484,7 +484,7 @@
-
+
@@ -501,7 +501,7 @@
-
+
@@ -528,7 +528,7 @@
extends="chrome://global/content/bindings/tree.xml#tree-base">
-
+
@@ -541,7 +541,7 @@
extends="chrome://global/content/bindings/tree.xml#tree-base">
@@ -552,7 +552,7 @@
extends="chrome://global/content/bindings/tree.xml#tree-base">