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

  • Ich auch nicht so wirklich, nur bestimmte Sachen.

    Es ist aus meiner Sicht besser, keine vorgefertigten Sammelcodes zu verwenden, wo du letztendlich nicht weißt, was da gemacht wird und die möglicherweise auch überdimensiert sind. Es ist besser Codes aus dem Forum zu übernehmen und immer schön mit Kommentaren zu versehen, wenn da noch keine Kommentare angegeben sind. Wenn du einen Kommentar geschrieben hast, dann weißt du wahrscheinlich schon für die Zukunft, was der Code macht, ohne dass du den Kommentar jemals wieder lesen musst. :) Das ist ähnlich wie mit Spickzetteln - wenn du die geschrieben hast, brauchst du sie nicht mehr und kommst auch ohne sie bestens durch eine Prüfung. :)

    Übersetzer für Obersorbisch und Niedersorbisch auf pontoon.mozilla.org u.a. für Firefox, Firefox für Android, Firefox für iOS, Firefox Klar/Focus für iOS und Android, Thunderbird, Pootle, Django, LibreOffice, LibreOffice Onlinehilfe, WordPress

  • Es ist aus meiner Sicht besser, keine vorgefertigten Sammelcodes zu verwenden,

    Du magst Recht haben, aber diesen Code von Aris verwende ich schon seit ich hier Laufen lernte. Er macht das, was er soll, Ausnahmen machen viele Scripte, da kann ich ihm aber keinen Vorwurf machen.

    Grüße vom FuchsFan

  • Du magst Recht haben, aber diesen Code von Aris verwende ich schon seit ich hier Laufen lernte.

    Du weißt aber dann nicht, wieso das Laufen klappt. Du siehst nur, dass das Laufen klappt. Und wenn das Laufen irgendwann nicht mehr klappt, hast du keine Ahnung, wie du wieder laufen kannst.

    Da kann ich ihm aber keinen Vorwurf machen

    Warum auch? Aris bietet etwas an, da kann man ihm auch keinen Strick draus drehen. Es geht mir hier nur um dich (und andere), die sich da selbständiger machen müssen.

    Übersetzer für Obersorbisch und Niedersorbisch auf pontoon.mozilla.org u.a. für Firefox, Firefox für Android, Firefox für iOS, Firefox Klar/Focus für iOS und Android, Thunderbird, Pootle, Django, LibreOffice, LibreOffice Onlinehilfe, WordPress

  • Und wenn das Laufen irgendwann nicht mehr klappt, hast du keine Ahnung, wie du wieder laufen kannst.

    Dann habe ich hoffentlich dich, sonst falle ich noch hin. ;) :)

    Es geht mir hier nur um dich (und andere), die sich da selbständiger machen müssen.

    Danke, für deine Fürsorge, aber es ist wohl irgendwann jeder mal auf Hilfe angewiesen. Und ich hoffe, dass du sie mir nicht ausschlagen wirst.

    Grüße vom FuchsFan

  • Hallo,

    im Fx 90, aber schon eine Weile vorher, funktioniert die toggle-Funktion im Skript UserCSSLoader nicht mehr, also die Funktion, mit der man mit der mittleren Maustaste CSS-Dateien an- und ausschalten kann, ohne dass sich das Menü schließt. Im Gegensatz dazu schließt sich das Menü, wenn man eine Datei mit der linken Maustaste an- oder ausschaltet.

    (In Thunderbird 78 funktioniert das noch.)

    Hier meine aktuelle Version des Skripts (mit der hier Nightly 92 - Alle Scripte funktionieren nicht mehr beschriebenen Aktualisierung):

  • Hallo bege.

    Ich kann das bestätigen ist hier schon eine Weile so.
    Leider weiß ich auch nicht wie man das reparieren könnte.

    Vielleicht kann aborix sich das mal anschauen und eventuell
    reparieren.

    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!

    Einmal editiert, zuletzt von Endor (8. August 2021 um 12:21)

  • Moin,

    in Zeile 212 im Beitrag #2788 befindet sich folgende Zeile.

    Code
                 let toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbaritem');

    Nur für mich zum Verständnis:

    Angesprochen wird das Element mit http:// und endet mit .xul

    Warum wird hier nicht https:// und .xhtml angesprochen??

    Freundliche Grüße
    Barbara

    ____________

  • Warum wird hier nicht https:// und .xhtml angesprochen??

    Ja, das ist die URL des XUL-Namensraums und die lautet so. Ich weiß nicht, warum da http:// verwendet wurde (diese URL ist aber auch ziemlich alt). In .xhtml kann man das nicht einfach umbenennen, denn XHTML-Dateien haben eine ganz andere URL für den Namensraum:

    http://www.w3.org/1999/xhtml

    Wie du siehst, wird hier immer noch http:// verwendet.

    Übersetzer für Obersorbisch und Niedersorbisch auf pontoon.mozilla.org u.a. für Firefox, Firefox für Android, Firefox für iOS, Firefox Klar/Focus für iOS und Android, Thunderbird, Pootle, Django, LibreOffice, LibreOffice Onlinehilfe, WordPress

  • Ich will es auch nicht umgenenne. Es soll auch niemand anderes machen. Der Hintergrund war mir nur nicht ganz klar. Habe nach Sörens Erklärung mal ein wenig recherchiert und nun die Zusammenhänge verstanden.

    Danke auch für Deinen Kommentar dazu.

    Freundliche Grüße
    Barbara

    ____________

  • im Fx 90, aber schon eine Weile vorher, funktioniert die toggle-Funktion im Skript UserCSSLoader nicht mehr, also die Funktion, mit der man mit der mittleren Maustaste CSS-Dateien an- und ausschalten kann, ohne dass sich das Menü schließt.

    Testet bitte:

    Nach dieser Zeile, in der Version aus #2788 hat sie die Nr. 310:

    JavaScript
                menuitem.setAttribute("onclick", "UCL.itemClick(event);");

    fügt ein:

    JavaScript
                menuitem.setAttribute("onmouseup", "if (event.button == 1) event.preventDefault();");

    Einmal editiert, zuletzt von aborix (9. August 2021 um 19:18)

  • Testet bitte:

    Nach Zeile 310:

    Hallo,

    habe zwar keine Zeile 310 mit entsprechendem Eintrag "menuitem" in meinem Script, jedoch den Eintrag "if (!menuitem)" mit mehreren

    Zeilen "menuitem.setAttribute" darunter. Nach Einfügen obiger Zeile funktioniert die Funktion "Mittelklick" auch wieder. Prima! :thumbup:

    Gruß,
    D. Büssen

    Firefox 133.0 + Nightly 135 (WIN 10 - 64 bit)

  • Testet bitte:

    Nach dieser Zeile, in der Version aus #2788 hat sie die Nr. 310:

    JavaScript
                menuitem.setAttribute("onclick", "UCL.itemClick(event);");

    fügt ein:

    JavaScript
                menuitem.setAttribute("onmouseup", "if (event.button == 1) event.preventDefault();");

    Super, vielen Dank aborix .

    Ich habe es auch mal in mein für Thunderbird angepasstes Skript eingebaut, das ja in der bisherigen Version 78 noch funktioniert, und auch dort funktioniert es mit dieser Ergänzung. Ich vermute mal, dass es in einer neuen Version 90+ dort auch nicht mehr funktionieren würde.

  • Nach langer Pröbelei komme ich wieder mal nicht weiter. Wie kann man in einem Script prüfen, ob eine Datei existiert? Kopieren und Umbenennen klappt problemlos mit

    Code
    var css = Services.dirsvc.get('UChrm', Ci.nsIFile);
    css.append('userContent.css');
    var css2 = Services.dirsvc.get('UChrm', Ci.nsIFile);
    css.moveTo(css2,'userContent.temp');

    css.isfile klingt geeignet, ist aber immer false. Einer der (vielen) anderen Versuche war

    Code
    var Path = this.getPrefDirectoryPath("UChrm") + this.getDirSep() + "userContent.css";
    var file = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsIFile);
    file.initWithPath(Path);
    if (file.exists()) alert("alert file exists");

    aber da läuft das Script gar nicht.

    Offenbar habe ich ein Brett vorm Kopf - das kann doch nicht so schwer sein??

    (Edit: in der Frage Umbenennen/FileExist verwechselt)

    Einmal editiert, zuletzt von David44 (14. September 2021 um 10:09)