userChrome.js Scripte für den Fuchs (Diskussion)


  • Hallo Stoiker,


    ich hatte ingesamt 3 ausprobiert. Das "AutoCopy (WebExtension)" hat bei mir gar nicht funktioniert. Das "Copy On Select" hat zwar funktioniert, aber mir fehlt da ein Button um es mal schnell deaktivieren/aktivieren zu können.
    Ich hab mich jetzt für das "AutocopySelection2Clipboard" entschieden. Das kommt eigentlich dem original AutoCopy ziemlich nah. Das hat sogar noch mehr Funktionen als das originale AutoCopy. (Eigentlich funktionall fast schon wieder zu aufgebläht :D )


    Auch dir vielen Dank für die Tipps! :)


  • 1.) revertaddonbarstatusbar
    Die Statusbar bzw. das Skript funktioniert zwar, allerdings sind die Buttons auf der linken Seite. Sobald ich versuche die Buttons nach rechts zu ziehen, bleiben sie da nicht, sondern wandern wieder nach links. Mach ich da was falsch bzw. wäre es möglich, dass die Buttons wieder auf der rechten Seite bleiben?



    Ich habe mir dafür aus dem Anpassenfenster den flexiblen Leerraum mehrmals eingefügt, bis die Icons ganz rechts waren.


    Es geht viel einfacher. Es gibt sogar mehrere Varianten, die (mindestens) im langen Thread Statusleiste von mir und auf jeden Fall auch von EffPeh vorgestellt wurden. Ich selbst nutze diese Regel in der userChrome.css:

    Code
    1. #bottom-toolbar toolbarspring {
    2. max-width: 100% !important;
    3. }


    Damit reicht es, einen einzigen flexiblen Leerraum einzufügen. Alle Buttons, die nach rechts sollen, müssen dann auch rechts des Leerraums einsortiert werden. Zu beachten ist, dass im Anpass-Modus der Leerraum nicht auf die neue Maximalbreite ausgedehnt wird (sondern vermutlich auf die intern vorgesehene).

  • Code
    1. #bottom-toolbar toolbarspring {
    2. max-width: 100% !important;
    3. }


    Damit reicht es, einen einzigen flexiblen Leerraum einzufügen.


    Hallo Speravir,


    danke für Deine Antwort. Ich habe deine Lösung getestet und leider funktioniert sie bei mir nicht. Ich habe ja in der "userChrome.css" schon die Anpaasung für das Skript " Mehrzeilige Tableiste (MultiRowTabLiteforFx.uc.js)". Ich habe Deinen Code da einfach am Ende hinten dran gehängt. Vielleicht hab ich da auch was falsch gemacht.


  • danke für Deine Antwort. Ich habe deine Lösung getestet und leider funktioniert sie bei mir nicht. Ich habe ja in der "userChrome.css" schon die Anpaasung für das Skript " Mehrzeilige Tableiste (MultiRowTabLiteforFx.uc.js)". Ich habe Deinen Code da einfach am Ende hinten dran gehängt. Vielleicht hab ich da auch was falsch gemacht.


    Ja, das sollte eigentlich funktionieren, spätestens nach einem Neustart.


    Du hast bei dir im Skript RevertAddonBarStatusBar eine Zeile mit diesem Inhalt (ziemlich weit oben, bei mir Z. 9):

    Code
    1. toolbar.id = 'bottom-toolbar';


    (wichtig ist vor allem der Teil nach dem Gleichheitszeichen)?
    Mit „Anpassung für das Skript” meinst Du den Code, der dort in der Readme zu lesen ist und auch als mehrzeilige-Tableiste.css heruntergeladen werden kann?


    Wenn ja zu beidem, wie genau hast Du „meine“ Regel eingebaut? Kopiere doch einmal den Teil inklusive umgebender Zeilen davor und danach deine userChrome.css. Meistens ist so etwas auf Syntaxfehler zurückzuführen.


  • Du hast bei dir im Skript RevertAddonBarStatusBar eine Zeile mit diesem Inhalt (ziemlich weit oben, bei mir Z. 9):

    Code
    1. toolbar.id = 'bottom-toolbar';


    (wichtig ist vor allem der Teil nach dem Gleichheitszeichen)?[/code]


    Ja, das steht bei mir auch im Skript in der Zeile 9.


    Ich hab das jetzt noch mal getestet und es ist so:
    Die Anpassungen für die "mehrzeilige Tableiste" (Skript "MultiRowTabLiteforFx.uc.js") stehen bei mir in der "userChrome.css". Wenn ich die Datei in "mehrzeilige-Tableiste.css" umbenenne, funktioniert das Skript "MultiRowTabLiteforFx.uc.js" nicht mehr.
    Wenn ich Deinen Code

    Code
    1. #bottom-toolbar toolbarspring {
    2. max-width: 100% !important;
    3. }

    für das Skript "RevertAddonBarStatusBar.uc.js" alleine in der "userChrome.css" habe, funktioniert es auch. Die Icons sind dann alle, nach dem ich anpassen abgeschlossen habe, auf der rechten Seite. Wenn ich aber die Anpassung für beide Skripte in eine "userChrome.css" packe, funktioniert Dein Skript für die "RevertAddonBarStatusBar.uc.js" nicht mehr.


    Edit um 15:15:
    Ich habe jetzt Deinen Teil für das Skript ""RevertAddonBarStatusBar.uc.js"" ganz an den Anfang der "userChrome.css" gestellt und unmittelbar danach (ohne Leerzeile) die Einstellungen für die mehrzeilige Tableiste und jetzt funktionieren beide Skripte - hervorragend! :):D


    Vielen Dank für Deine Hilfe, Speravir! :)


  • Ich habe jetzt Deinen Teil für das Skript ""RevertAddonBarStatusBar.uc.js"" ganz an den Anfang der "userChrome.css" gestellt und unmittelbar danach (ohne Leerzeile) die Einstellungen für die mehrzeilige Tableiste und jetzt funktionieren beide Skripte - hervorragend! :):D


    Es sollte eigentlich egal sein, ob Du eine, keine oder mehrere Leerzeilen einfügst.


    Hierzu hätte ich noch eine Anmerkung:

    Zitat


    Wenn ich die Datei in "mehrzeilige-Tableiste.css" umbenenne, funktioniert das Skript "MultiRowTabLiteforFx.uc.js" nicht mehr.


    Du kannst diese Datei von Endor separat lassen bzw. den Code wieder dorthin überführen und dann in die userChrome.css an den Anfang (das ist wirklich ein Muss, es sei denn, du hast schon ein @charset enthalten) Folgendes eintragen:

    Code
    1. @import url("mehrzeilige-Tableiste.css");


    wobei der Pfad anzupassen wäre; hier oben wird vorausgesetzt, dass beide Dateien im selben Verzeichnis liegen.


    Ach so, mir fällt gerade noch eine, dass dafür auch eine verkürzte Syntax erlaubt ist:

    Code
    1. @import "mehrzeilige-Tableiste.css";


    Edit: Syntax repariert, vgl. Moglis folgende Antwort

  • Code
    1. @import url("mehrzeilige-Tableiste.css")


    wobei der Pfad anzupassen wäre; hier oben wird vorausgesetzt, dass beide Dateien im selben Verzeichnis liegen.


    Hab ich so gemacht, ging erst nicht. Erst als ich zum Schluss noch ein ; gesetzt habe, hat es funktioniert! :)


  • Hab ich so gemacht, ging erst nicht. Erst als ich zum Schluss noch ein ; gesetzt habe, hat es funktioniert! :)


    Upps, genau richtig und von mir oben repariert. Das ist genau so ein Syntaxfehler, wie ich ihn weiter oben meinte. „Sehr gern“ genommen werden auch Komma- und Klammerfehler.

  • Hallo @all...


    mit dem heutigen Update vom Nightly funktioniert dieses Script nicht mehr:


    Das heißt, es lässt sich kein Lesezeichen mehr öffnen durch einfaches anklicken.
    Rechtsklick..Öffnen im neuen Tab hingegen funktioniert.


    Kann das jemand bestätigen?


    Vielen Dank wie immer für jegliche Hilfe.


    PS:
    Sollte es am Script liegen wäre meine nächste Frage:
    Kann das dann bitte jemand anpassen :wink:


    Edit:
    Mit den möglichen Änderungen in about:config ist das Script eigentlich unnötig geworden.
    Es wird nach den Änderungen alles in einem neuen Tab geöffnet hier.


    Mit browser.urlbar.openintab auf true wird auch die Suche aus der Adressleiste jetzt in einem neuen Tab geöffnet.

  • Hallo Andreas,
    ich kann das von Dir beschrieben verhalten bestätigen.
    Ich hatte auch vorher schon browser.urlbar.openintab auf true gesetzt, aber erst nach löschen des Scripts funktioniert es wie es soll.
    Alles wird in einem neuen Tab geöffnet.

    Gruß
    EDV-Oldi

  • Folgendes betrifft alle Skripte:


    Ab Fx 59 gibt es gPrefService und gAppInfo nicht mehr.


    gPrefService kann ersetzt werden durch

    Code
    1. Services.prefs


    und gAppInfo durch

    Code
    1. Services.appinfo
  • Bei mir auch nicht.


    Wenn ich Zeile 34:


    Code
    1. window.openUILinkIn('about:addons', 'tab');


    ändere auf:


    Code
    1. window.openUILinkIn('about:addons', 'tab', {});


    funktioniert es bei mir wieder.

  • Siehe auch Fehlermeldung in der Browserkonsole:
    "Required argument triggeringPrincipal missing within openUILinkIn"


    Das hängt mit dieser Änderung zusammen:
    https://bugzilla.mozilla.org/show_bug.cgi?id=1374741


    Das Problem lässt sich auch beheben, indem man


    Code
    1. window.openUILinkIn('about:addons', 'tab');


    durch den folgenden Code ersetzt:


    Code
    1. window.openTrustedLinkIn('about:addons', 'tab');


    Auf die Weise hat es Mozilla im eigenen Code angepasst, ist daher vermutlich der korrektere Fix. ;)