Mir ist nicht ganz klar wie - aber mit einer wilden Mixtur aus Infos aus dem Forum hätte ich ( vielleicht ) hier eine potentiell funktionierende vertikale Toolbar in reduzierter Form .
Die auch den Browserinhalt anpasst beim Schliessen !
Vielleicht kann mir jemand mit mehr Kompetenz einen oder 2 Tips Tip geben, um weiterzukommen ohne zu viel Zeit mit meinem Amateurgepfusche zu verschwenden .
Zu erledigen # 1 : Im Symbolleiste anpassen Fenster ist die Zusatzleiste nicht sichtbar ; bei mir sind die Leseichensymbole nur drin weil ich sie in einer früheren Version schon reingepflanzt hatte ; in eine unsichtbare Leiste kann man eben nichts reinschieben oder rausnehmen .
Das wäre der allerwichtigste nächste Schritt .
#2 : Die Lesezeichen als Inhalt der Zusatzleiste werden nur im ersten geöffneten Firefox Fenster dargestellt; in jedem weiteren Fenster bleibt die Liste leer ( Anhang 1 erstes Fenster , Anhang 2 neues Fenster ) .
Andere Buttons aus dem Symbolleiste anpassen Fenster haben das Problem nicht - nur ausgerechnet die Lesezeichen Symbole machen Ärger ... Und um die geht's mir ja hauptsächlich ...
#3 : Beim Einklappen der seitlichen Leiste gibt es das gleiche Problem wie beim Aris Script; der Browserinhalt 'zuckt' etwas für einen Moment, auf der rechten Seite und besonders die Scrollbar , bevor er sich komplett in der Breite angepasst hat .
Wäre auch nett wenn man einen weichen Übergang haben könnte .
Und hier der Code; sehr grob noch und mit mehr Sturheit als Verstand zu Laufen gebracht :
Script für seitliche Toolbar :
/* new_toolbar.us.js */
(function() {
if (location != AppConstants.BROWSER_CHROME_URL)
return;
var tb = document.createXULElement('toolbar');
tb.id = 'new-toolbar-2';
tb.setAttribute('customizable', "true");
tb.setAttribute("class","toolbar-primary chromeclass-toolbar browser-toolbar customization-target");
tb.setAttribute('mode', 'icons');
tb.setAttribute("toolboxid","navigator-toolbox");
tb.setAttribute("orient","vertical");
tb.setAttribute("flex","1");
tb.setAttribute("context","toolbar-context-menu");
tb.setAttribute("toolbarname", "new-toolbar-2_label");
tb.setAttribute("label", "new-toolbar-2_label");
tb.setAttribute("defaultset","spring");
var parentE = document.getElementById('sidebar-box').parentNode;
var childE = document.getElementById('sidebar-box');
parentE.insertBefore( tb , childE );
CustomizableUI.registerArea('new-toolbar-2', {legacy: true});
CustomizableUI.registerToolbarNode(tb);
})();
Alles anzeigen
CSS, -moz-box-ordinal-group kann bestimmt auch in's Script, aber bis dahin braucht man das zur Positionierung .
#new-toolbar-2 {
background-color: orange !important;
color: red !important;
border: 2px solid red !important;
min-height: 180px !important;
width: 180px !important;
max-width: 180px !important;
-moz-box-ordinal-group: 1 !important;
}
/* Bookmarks vertical */
#PlacesToolbarItems {
display: flex;
flex-direction: column;
}
Alles anzeigen
Button zum Ein-/ Ausklappen :
// JavaScript Document
//Toggle new-toolbar-2
(function ptbut() {
if (location != 'chrome://browser/content/browser.xul' && location != 'chrome://browser/content/browser.xhtml')
return;
try {
CustomizableUI.createWidget({
id: 'NewToolbar-button',
type: 'custom',
defaultArea: CustomizableUI.AREA_NAVBAR,
onBuild: function(aDocument) {
var toolbaritem = aDocument.createXULElement('toolbarbutton');
var currentProfileDirectory = Services.dirsvc.get("ProfD", Ci.nsIFile).path.replace(/\\/g, "/");
var buttonicon = "newtoolbar.png"
var props = {
id: 'NewToolbar-button',
class: 'toolbarbutton-1 chromeclass-toolbar-additional',
removable: true,
label: 'Toggle New Toolbar',
tooltiptext: 'Toggle New toolbar',
style: 'list-style-image: url("' + ("file:" + currentProfileDirectory + "/chrome/icons/" + buttonicon) +'");',
};
for(var p in props)
toolbaritem.setAttribute(p, props[p]);
return toolbaritem;
}
});
CustomizableUI.registerToolbarNode(tb);
} catch(e) { };
document.getElementById('NewToolbar-button').addEventListener( "click", onClick );
document.addEventListener('keydown', (event) => {
var keyName = event.key;
// Mac : Funktion wird ausgeführt, wenn Cmd + < gedrückt wird
if (event.metaKey && keyName == '<') {
onClick(event);
}
}, false
);
function onClick(aEvent) {
var d2 = document.getElementById('new-toolbar-2');
if (d2.style.visibility == "") {
d2.style.visibility = "collapse";
} else if (d2.style.visibility == "visible") {
d2.style.visibility = "collapse";
} else if (d2.style.visibility == "collapse") {
d2.style.visibility = "visible";
}
}
})();
Alles anzeigen
Erwartet wird hier ein Icon in einem Ordner namens icons im chrome Ordner , genannt newtoolbar.png ( hängt an ) .
Ansonsten ist der Button da, aber nur bei hover erkennbar .
Kommentare, Hilfe und viel benötigte Verbesserungsvorschläge wie immer herzlich willkommen !