Bug 387138: set livemark attribute on toolbar entries. r=mak a=dolske

This commit is contained in:
Richard Newman 2011-02-25 19:06:00 -08:00
parent f5c2aab04e
commit 47f17f8c22

View File

@ -443,7 +443,7 @@ PlacesViewBase.prototype = {
elt.setAttribute("scheme", PlacesUIUtils.guessUrlSchemeForUI(aURIString));
},
nodeIconChanged: function PT_nodeIconChanged(aPlacesNode) {
nodeIconChanged: function PVB_nodeIconChanged(aPlacesNode) {
let elt = aPlacesNode._DOMElement;
if (!elt)
throw "aPlacesNode must have _DOMElement set";
@ -466,9 +466,8 @@ PlacesViewBase.prototype = {
nodeAnnotationChanged:
function PVB_nodeAnnotationChanged(aPlacesNode, aAnno) {
// Ensure the changed annotation is a livemark one.
if (/^livemark\//.test(aAnno) &&
PlacesUtils.nodeIsLivemarkContainer(aPlacesNode)) {
// All livemarks have a feedURI, so use it as our indicator.
if (aAnno == "livemark/feedURI") {
let elt = aPlacesNode._DOMElement;
if (!elt)
throw "aPlacesNode must have _DOMElement set";
@ -483,7 +482,7 @@ PlacesViewBase.prototype = {
},
nodeTitleChanged:
function PM_nodeTitleChanged(aPlacesNode, aNewTitle) {
function PVB_nodeTitleChanged(aPlacesNode, aNewTitle) {
let elt = aPlacesNode._DOMElement;
if (!elt)
throw "aPlacesNode must have _DOMElement set";
@ -539,7 +538,7 @@ PlacesViewBase.prototype = {
},
nodeReplaced:
function PBV_nodeReplaced(aParentPlacesNode, aOldPlacesNode, aNewPlacesNode, aIndex) {
function PVB_nodeReplaced(aParentPlacesNode, aOldPlacesNode, aNewPlacesNode, aIndex) {
let parentElt = aParentPlacesNode._DOMElement;
if (!parentElt)
throw "aParentPlacesNode node must have _DOMElement set";
@ -1144,6 +1143,32 @@ PlacesToolbar.prototype = {
PlacesViewBase.prototype.nodeMoved.apply(this, arguments);
},
nodeAnnotationChanged:
function PT_nodeAnnotationChanged(aPlacesNode, aAnno) {
let elt = aPlacesNode._DOMElement;
if (!elt)
throw "aPlacesNode must have _DOMElement set";
if (elt == this._rootElt)
return;
// We're notified for the menupopup, not the containing toolbarbutton.
if (elt.localName == "menupopup")
elt = elt.parentNode;
if (elt.parentNode == this._rootElt) {
// Node is on the toolbar.
// All livemarks have a feedURI, so use it as our indicator.
if (aAnno == "livemark/feedURI") {
elt.setAttribute("livemark", true);
}
return;
}
PlacesViewBase.prototype.nodeAnnotationChanged.apply(this, arguments);
},
nodeTitleChanged: function PT_nodeTitleChanged(aPlacesNode, aNewTitle) {
let elt = aPlacesNode._DOMElement;
if (!elt)