Neuer Lesezeichenbutton in die Ecke oben links

  • Hallo,

    eben auf die neuste Aurora aktualisiert mit dem neuen Skin und habe eine etwas durchwachsene Erfahrung (manche Addons wie FoxyProxy werden nirgends angezeigt zB).

    Aber nungut das Hauptproblem für mich ist, dass ich am Anfang der Lesezeichenleiste einen größeren Button hatte, mit dem ich die Lesezeichenliste öffnen konnte - das Standardding aus FF, halt dahin geschoben. Nun ist dieser Button aber neu (aka schlechter) designt und ist nun ein Doppelbutton mit dem Stern zum Lesezeichen erstellen und daneben der eigentliche Button, den ich möchte. Problem ist, das Ding ist nun kleiner und das Zielen mit der Maus wird schwerer.

    Meine ideale Abhilfe: Ich möchte ganz oben links im FF Fenster, dort wo früher der FF Button war mit dem man so schön schnell in alle Menüs kam (bevor das auch 'optimiert' wurde) einen Button für Lesezeichen haben. Also genau links vom ersten Tab, so dass ich das Lesezeichenmenü in einem Bruchteil einer Sekunde erreichen kann. Momentan ist die 'aktive Ecke' ja komplett nutzlos.

    Gibt es ein passendes Addon/ wie würde man soetwas schreiben?

    Danke

    EDIT: Hier ein Bild.
    Oben: alt - brauchbar
    Mitte: neu - unbrauchbar
    Unten: Wunsch

  • Hallo!

    Mit der Erweiterung userChromeJS lässt sich das vielleicht machen.

    Ausführliche Informationen dazu stehen hier:
    https://github.com/ardiman/userCh…aster/README.md
    und hier: https://www.camp-firefox.de/forum/viewtopic.php?f=16&t=105645

    Teste das folgende Skript.
    Ich will zunächst wissen, ob der Button richtig funktioniert.
    Um sein Aussehen kümmern wir uns dann später.

  • Wow danke, das funktioniert und der Button erscheint und funktioniert.
    Sieht ganz ok aus - ist etwas heller als die Leiste aber auch nicht so schlimm.

    Da ich etwas mit dem Code gespielt habe um zu schauen, was die einzelnen Teile machen hier eine Frage.

    Für was braucht man das Folgende - wenn ich es einfach auskommentiere funktioniert das Skript weiterhin normal:

    Code
    var elements = button.getElementsByTagName('*');   
       for (let i=0; i<elements.length; i++) {      
          if (elements[i].id)
              elements[i].id = 'extraBMbutton-' + elements[i].id;
       };

    Andere Frage; wie finde ich raus, wie zB die Lesezeichensymbolleiste heißt?
    Habe versucht ihn testweise in diese Leiste zu schieben, aber so genau konnte ich nicht rausfinden, wie die Leiste heißt.
    Habe dazu in jar:file:///C:/Program%20Files%20%28x86%29/Aurora/browser/omni.ja!/chrome/browser/content/browser/browser.css nachgeschaut und irgendwie (u.a.) an
    document.getElementById('PlacesToolbar').insertBefore(button, document.getElementById('PlacesToolbarItems'));
    gedacht aber das geht so nicht.
    Gibt es einen einfachen Weg herauszufinden, wie ein Element (z.B. diese Leiste) heißt außer in dieser .css (für die mir die Übung fehlt sie zu lesen)?

    Danke

  • Zum herausfinden wie die einzelnen Teile heißen, geht am besten die Erweiterung Dom-inspector:
    https://addons.mozilla.org/de/firefox/add…622/?src=search

    und dazu noch die Erweiterung InspectThis
    https://addons.mozilla.org/de/firefox/add…his/?src=search

    damit geht das immer recht praktisch.
    Die Lesezeichenleiste heißt übrigens: #PersonalToolbar

    Mfg.
    Endor

    Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:132.0) Gecko/20100101 Firefox/132.0
    OS: Windows 10 pro 64 bit und Windows 10 Home 64 bit
    Meine Scripte Sammlung: https://github.com/Endor8/userChrome.js
    Kein Support per PN. Fragen bitte im Forum stellen!

  • Zitat von geius

    Für was braucht man das Folgende - wenn ich es einfach auskommentiere funktioniert das Skript weiterhin normal:

    var elements = button.getElementsByTagName('*');
    for (let i=0; i<elements.length; i++) {
    if (elements[i].id)
    elements[i].id = 'extraBMbutton-' + elements[i].id;
    };


    Das LZ-Menü, das beim Klick auf den Button erscheint, ist eine Kopie des LZ-Menüs der Menüleiste.
    Es hat den gleichen Inhalt, aber es besteht aus anderen Elementen. Das kann man im DOM-Inspector sehen. Viele, nicht alle, dieser Elemente haben eine id. Beim Kopieren wurden die ids vom Originalmenü mitkopiert. Jede id darf es aber in einem Dokument nur einmal geben. Darum wird an die ids der kopierten Elemente vorne ''extraBMbutton-" angehängt.
    Wenn es eine id mehrmals gibt, können wahrscheinlich Fehlfunktionen auftreten.

    Zum DOM-Inspector und der id siehe auch https://www.camp-firefox.de/forum/viewtopic.php?f=16&t=105645.

    Die Grafik des Buttons habe ich aus deinem Screenshot kopiert.
    Hänge an deinen nächsten Beitrag eine Grafik deiner Wahl an und ich baue sie ein.
    Das Format soll PNG oder GIF sein, JPG nicht.

    Falls du es selbst versuchen möchtest:

    Die Grafik wird in Base64-Code kodiert, z.B. hier:
    http://www.askapache.com/online-tools/b…mage-converter/

    Der Code kommt dann im Skript in die Zeile
    const buttonIcon = ...

  • Ok, habe es geschafft, den Button zB in die Lesezeichenleiste zu packen :)

    Nun ist mir eingefallen, dass man Buttons ja verschieben kann, also habe ich versucht den Button verschiebbar einzufügen (ist jetzt nicht notwendig aber aus Spaß am Herausfinden, wie etwas funktioniert ;) ).

    EDIT: Was so ein kleines button.setAttribute("removable", "true"); so alles schafft; immerhin habe ich es nun beweglich mit dem Originalscript - allerdings nur bis zu einem Neustart.


    Beitrag vor Edit:
    ---------------------------------------------------

    Habe diverse Codeteile auf Stackoverflow etc angeschaut aber keines davon scheint zu funktionieren.

    Ich habe mich u.a. an dashier gehalten: https://developer.mozilla.org/en-US/Add-ons/…ppets%2FToolbar

    Mein Code den ich dann hatte:
    Geändert ist:
    Unten, wo der Button vom Originalscript eingefügt wird -> auskommentiert
    Codeblock darunter eingefügt.
    In diesem Codeblock sind drei auskommentierte Zeilen, das ist eine andere Methode, aber die geht auch nicht...

    Problem ist, es erscheint kein Button.

  • Bis Fx 28 lassen sich verschiebbare Buttons nach diesem Muster erstellen:
    https://www.camp-firefox.de/forum/viewtopi…=904017#p904017
    Möglicherweise ist vom letzten Codeteil etwas überflüssig, ich habe das nie getestet.

    Ab Fx 29 ist der Button in einem neuen Fenster und nach einem Neustart verschwunden.
    Erst nach einem Zurücksetzen im Anpassen-Fenster ist er wieder da, bis zum nächsten Neustart dann.

    Mit der Erweiterung Custom Buttons lassen sich ebenfalls verschiebbare Buttons erstellen.

    Damit funktioniert das Erzeugen eines verschiebbaren LZ-Menü-Buttons im Aurora!

    Das ist zu tun:

    Der folgende Code kommt in das Feld "Initialisierungscode".
    Die ids der mit der Erweiterung erzeugten Buttons enthalten eine Nummer in der Reihenfolge ihrer Erzeugung: custombuttons-button0, custombuttons-button1, usw.
    Der Code geht davon aus, daß unser Button der erste ist; sonst muß die id in Zeile 1 entsprechend geändert werden.


    Bei "Kodieren" wird nichts eingetragen.