oder ist das wieder eine Andere?
Das ist ein verändertes Skript. Diese Version zeigt jetzt die Anzahl der Links und Ordner auch im Ordner Weitere Lesezeichen an, falls du den verwendest. Der wird in der Lesezeichenleiste nur angezeigt, wenn in ihm auch etwas enthalten ist.
Außerdem gab es mit der Version aus Beitrag #23 noch das Problem, dass sich die Anzahl nicht sofort aktualisierte, wenn man einen neuen Eintrag oder einen neuen Ordner anlegte. Das Problem ist in der Version aus Beitrag #35 behoben.
Du musst aber noch in die Version aus Beitrag #35 noch etwas hineinkopieren - nämlich die Zeilen 63 bis 72 aus der Version in Beitrag #23 in die Zeilen 66 bis 73 von Beitrag #35. Du musst dabei die Kommentarzeichen überschreiben.
let label = menuitemCount + " Link";
if (menuitemCount != 1) {
label += "s";
}
label += " / " + menuCount + " Ordner."
if (menuitemCount == 1) {
label += " -> Link in Tab öffnen."
} else if (menuitemCount > 1) {
label += " -> Links in Tabs öffnen."
}
aborix hat den Inhalt der Zeilen 66 bis 73 für mich und meine sorbische Version ausgelassen.
Hier doch noch das vollständige Skript:
(function() {
if (!window.gBrowser)
return;
function setFunction() {
PlacesViewBase.prototype._mayAddCommandsItems =
function PVB__mayAddCommandsItems(aPopup) {
let hasMultipleURIs = false;
let menuitemCount = 0;
let menuCount = 0;
if (aPopup._placesNode.childCount > 0) {
for (let item of aPopup.children) {
if (item._placesNode) {
if (item.localName == 'menuitem') {
menuitemCount++;
} else if (item.localName == 'menu') {
menuCount++;
}
}
}
if (menuitemCount > 0 || menuCount > 0) {
hasMultipleURIs = true;
}
}
if (!hasMultipleURIs) {
aPopup.setAttribute("nofooterpopup", "true");
if (aPopup._endOptOpenAllInTabs) {
aPopup.removeChild(aPopup._endOptOpenAllInTabs);
aPopup._endOptOpenAllInTabs = null;
aPopup.removeChild(aPopup._endOptSeparator);
aPopup._endOptSeparator = null;
}
return;
}
aPopup.removeAttribute("nofooterpopup");
if (!aPopup._endOptOpenAllInTabs) {
aPopup._endOptSeparator = document.createXULElement("menuseparator");
aPopup._endOptSeparator.className = "bookmarks-actions-menuseparator";
aPopup.insertBefore(aPopup._endOptSeparator, aPopup.firstChild);
aPopup._endOptOpenAllInTabs = document.createXULElement("menuitem");
aPopup._endOptOpenAllInTabs.className = "openintabs-menuitem";
if (typeof this.options.extraClasses.entry == "string") {
aPopup._endOptOpenAllInTabs.classList.add(
this.options.extraClasses.entry
);
}
if (typeof this.options.extraClasses.footer == "string") {
aPopup._endOptOpenAllInTabs.classList.add(
this.options.extraClasses.footer
);
}
aPopup._endOptOpenAllInTabs.setAttribute(
"oncommand",
"PlacesUIUtils.openMultipleLinksInTabs(this.parentNode._placesNode, event, " +
"PlacesUIUtils.getViewForNode(this));"
);
aPopup._endOptOpenAllInTabs.setAttribute(
"onclick",
"checkForMiddleClick(this, event); event.stopPropagation();"
);
aPopup.insertBefore(aPopup._endOptOpenAllInTabs, aPopup.firstChild);
}
let label = menuitemCount + " Link";
if (menuitemCount != 1) {
label += "s";
}
label += " / " + menuCount + " Ordner."
if (menuitemCount == 1) {
label += " -> Link in Tab öffnen."
} else if (menuitemCount > 1) {
label += " -> Links in Tabs öffnen."
}
aPopup._endOptOpenAllInTabs.setAttribute("label", label);
}
}
let intId = setInterval(function() {
if (window.PlacesViewBase) {
clearInterval(intId);
setFunction();
}
}, 500);
})();
Alles anzeigen