1. Nachrichten
  2. Forum
    1. Unerledigte Themen
    2. Forenregeln
  3. Spenden
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. camp-firefox.de
  2. Horstmann

Beiträge von Horstmann

  • Selektor für kleinen Pfeil in CSS-Code zum extra-config-menü.uc.js ab v139

    • Horstmann
    • 3. Mai 2025 um 22:26
    Zitat von FuchsFan
    Zitat von Horstmann

    eine kurze Verzögerung zwischen hover Status (keine Funktion) und dem Moment in dem ein Popup dann aufgeht

    Ja, ist mir sofort aufgefallen, aber ist ja nur ein Päuschen.

    Wenn du Laune hast, probier mal das hier, würd mich interessieren ob's a) geht und b) die Pause entfernt:

    CSS
    #ExtraConfigMenu-popup [id^="submenu-"]:is(:hover,[open])::after { Code hier }

    Ansonsten sollten auch beide Funktionen klappen (keine Verzögerung) mit dem hier:

    CSS
    #ExtraConfigMenu-popup [id^="submenu-"]:hover::after,
    #ExtraConfigMenu-popup [id^="submenu-"][open]::after { Code hier }

    Bei dem Script ist es scheint's nicht nötig, aber vermutlich nur weil hier jedes [id^="submenu-"] Element versucht ein Submenu/Popup zu öffnen, auch wenn keines da ist.

  • Selektor für kleinen Pfeil in CSS-Code zum extra-config-menü.uc.js ab v139

    • Horstmann
    • 3. Mai 2025 um 21:45
    Zitat von .DeJaVu

    Die 115 ESR ist eh dabei aussen vor, weil schlichtweg zu alt - falls noch genutzt.

    Ist noch genutzt, zwangsweise, hab aber eine Testmaschine mit aktuellem Fx für komplexe Fälle.
    Mit der Code Lingo halte ich mich aber auf dem Laufenden, keine Sorge. ;)

    Was ich meinte war :open als Pseudoklasse wie :hover und :active, meiner Erinnerung nach hat das noch nie gegriffen, kann mich aber täuschen.


    Zitat von milupo

    Weil es open als Pseudoklasse nun mal in CSS nicht gibt. Und wenn Mozilla sie erfände, müsste sie dann :-moz-open heißen, da sie dann proprietär wäre.

    Hmm... ;)
    Ok, erst seit 136 in FX, also - jetzt!

  • Selektor für kleinen Pfeil in CSS-Code zum extra-config-menü.uc.js ab v139

    • Horstmann
    • 3. Mai 2025 um 21:37
    Zitat von FuchsFan

    jetzt funktioniert es wie gewünscht, und zwar mit diesem String.

    #ExtraConfigMenu-popup :is([id^="submenu-"][open])::after {    

    Prima! :)

    Die hover Funktion hast du nur damit (und der Version von Sören) nicht mehr, aber das zeigt sich in diesem Fall/Script wohl nur durch eine kurze Verzögerung zwischen hover Status (keine Funktion) und dem Moment in dem ein Popup dann aufgeht (open Funktion).

  • Selektor für kleinen Pfeil in CSS-Code zum extra-config-menü.uc.js ab v139

    • Horstmann
    • 3. Mai 2025 um 21:30
    Zitat von .DeJaVu

    Ersteres ist ein Selektor, dann folgt noch ein (Unter-)Selektor., usw. Das Element, was genau alle Selektoren erfüllt, wird angesprochen.

    Denke du hast recht damit, mit den Attribut Selektoren tue ich ich mich manchmal schwer.
    Leider frisst Firefox :open anscheinend nicht als Pseudoklasse, dann wär's etwas einfacher.:/

  • Selektor für kleinen Pfeil in CSS-Code zum extra-config-menü.uc.js ab v139

    • Horstmann
    • 3. Mai 2025 um 19:41
    Zitat von Sören Hentzschel

    Das hat immer noch das überflüssige :is() mit drin. Kürzer:

    CSS
    #ExtraConfigMenu-popup [id^="submenu-"][open]::after { }

    Ich glaube der Code ist so oder so etwas Murks, auch wenn er oberflächlich funktioniert.
    Wird [id^="submenu-"] überhaupt wahrgenommen in dem Zusammenhang, oder nur [open] (= Verkettung von Attributen, geht das überhaupt)?

  • Mehrzeilige Tableiste für aktuelle Firefox-Versionen

    • Horstmann
    • 3. Mai 2025 um 17:32
    Zitat

    Wer Rechtschreib-, oder Grammatikfehler findet, darf sie gern behalten

    Ich bin reich! ;)

  • Selektor für kleinen Pfeil in CSS-Code zum extra-config-menü.uc.js ab v139

    • Horstmann
    • 3. Mai 2025 um 14:32
    Zitat von .DeJaVu

    Da ist jetzt noch nix mit hofer und after drin.

    Aber ich selbst würde :hover und ::after nicht zusammelegen wollen, weil mWn ::after nur für das :hover gilt, aber nicht ohne :hover. Also braucht es schon wieder zwei Definition.

    ::after
    :hover::after

    Man braucht aber eh eine Definition für sowohl mit als auch ohne :hover, da sparst du nix. :/
    Den Code zu straffen, nesten und zu minimieren ist was anderes, aber die beiden Zustände musst du so oder so getrennt angeben.

    In diesem Fall macht mE der Attribut Selektor von Sören eine Menge Sinn, schlank und einfach.

  • Selektor für kleinen Pfeil in CSS-Code zum extra-config-menü.uc.js ab v139

    • Horstmann
    • 3. Mai 2025 um 12:38
    Zitat von FuchsFan

    Bei Hover wird zwar das Icon angezeigt, das Submenü öffnet sich, aber sofern mit der Maus das Popup berührt wird verschwindet es .

    Ich bin so schwach...;)

    Ein [open] könnte man noch irgendwo mit reinquetschen; aber weil ich nicht meine Nightly Testmaschine anwerfen möchte, hier nur grob geraten, weiss nicht ob das mit ::after klappt:

    CSS
    #ExtraConfigMenu-popup [id^="submenu-"]:hover::after,
    #ExtraConfigMenu-popup :is([id^="submenu-"][open])::after {	}
  • userChrome.js Scripte für den Fuchs (Diskussion)

    • Horstmann
    • 2. Mai 2025 um 22:10
    Zitat von milupo
    Zitat von Horstmann

    Deine Version(en) funktionieren bei mir nur das für bzw. in dem bei Programmstart geöffneten Fenster, also das erste "Original" Fenster.

    Ich bin froh, dass ich Skripte halbwegs anpassen kann. Und mein Eindruck ist, dass doch sehr wenige die Skripte über mehrere Fenster hinweg verwenden. Zur Zeit sind es zwei, drei Nutzer.

    Mehr kann ich auch nicht, und bin genauso froh darum.;)
    Es ist nur ein minimaler Unterschied zwischen den beiden Varianten, und gleich einfach umzusetzen, also warum nicht die bessere Variante benutzen?

    Bei mir am Mac ist es sehr auffällig, weil hier Firefox nicht beendet wird beim Schliessen aller Fenster, also habe ich oft eine aktive, aber fensterlose Fx App im Dock; ich vermute sehr viele User stolpern eventuell mal über das Problem, ohne es zu melden oder nachvollziehen zu können.

    Nicht zu vergessen dass mehrere Fenster sehr wohl benutzt werden, gerade auch in einem Setup mit mehr als einem Monitor; in dem Fall kann es ganz schnell Ärger geben mit einem Script das nicht alle Fenster - wie im Einzelfall gewünscht - bedienen kann.

    Letztlich ist es aber auch einfach ein Fehler im Script, ich glaube dieser krummnasige Spacken fing damit an, und wurde dann korrigiert von diesem gutaussehenden Genie. 8)

    Edit:
    Zum Vergleich, hier nochmal ein Beispiel am aktuellen Script; die Fix #1 und Fix #2 Codeblöcke sind kinderleicht gegeneinander auszutauschen.
    Wie gesagt, das Ganze gilt nur für diese Art von Aufbau bzw. Buttonimplentierung.

    JavaScript
    (function() {
      if (location != 'chrome://browser/content/browser.xhtml') return;
        try {
                CustomizableUI.createWidget({
                id: 'Profilordner',
                type: 'custom',
                defaultArea: CustomizableUI.AREAS,
                onBuild: function(aDocument) {
                   var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbarbutton');
                   var props = {
                        id: 'Profilordner',
                        class: 'toolbarbutton-1 chromeclass-toolbar-additional',
                        removable: true,
                    // Name im AnpassungFenster
                        label: 'zum Aktuellen Profilordner',
                    // Name bei MausHover wenn in Symbolleiste
                       tooltiptext: 'zum Aktuellen Profilordner',
                         style: 'list-style-image: url(file:///C:/Users/DBI/AppData/Roaming/Mozilla/Firefox/Profiles/zvjpsewu.DBI/chrome/icon/userProfil.ico)',
    
                      //  Alte inline Version, obsolet
                      //  oncommand: "Services.dirsvc.get('ProfD', Ci.nsIFile).launch();"
                   };
                   for (var p in props)
                      toolbaritem.setAttribute(p, props[p]);
    
                      // Fix #1 nur für original Fenster
                      //toolbaritem.addEventListener('click', event => {
    					        //     if (event.button == 0) {
                      //          Services.dirsvc.get("ProfD", Ci.nsIFile).launch();
                      //               }
    			      //  	});
    			      // Fix #1 Ende
    
                   return toolbaritem;
                    }
                 });
              } catch(e) { };
    
               // Fix #2
               document.getElementById('Profilordner').addEventListener('click', event => {
                      if (event.button === 0) {
                          Services.dirsvc.get("ProfD", Ci.nsIFile).launch();
                   }
               });
               // Fix #2 Ende
    
    })();
    Alles anzeigen
  • userChrome.js Scripte für den Fuchs (Diskussion)

    • Horstmann
    • 2. Mai 2025 um 20:59
    Zitat von milupo

    Erst einmal zum Profilordner-Skript. Probiere mal diese Version:

    Ich wollte nur nochmal darauf hinweisen.
    Deine Version(en) funktionieren bei mir nur das für bzw. in dem bei Programmstart geöffneten Fenster, also das erste "Original" Fenster.

    ZB: Firefox starten, zweites Fenster öffnen, erstes "Original" Fenster schliessen -> kein Script mit dieser Methode (Fix 1 in den Scripts im Link) funktioniert dann mehr, zumindest hier, obwohl der Button erzeugt wird.

    Das gilt nur für Scripts mit diesem Aufbau.

  • Und noch ein kleines Script, was nicht mehr geht

    • Horstmann
    • 2. Mai 2025 um 18:57
    Zitat von mkpcxxl

    geht es jetzt

    Prima! :)

  • Selektor für kleinen Pfeil in CSS-Code zum extra-config-menü.uc.js ab v139

    • Horstmann
    • 2. Mai 2025 um 15:30
    Zitat von FuchsFan
    Zitat von Horstmann

    Unglaublich ....

    Tief Luft holen bringt den Puls wieder in Ordnung. Nun hör bitte auf damit, seid ihr alle unfehlbar?

    Oh ja, ich höre auf damit.
    Den Pfad habe ich gefunden, aber den kann dir evtl. jemand anders vorlesen, der die Browser Werkzeuge anwerfen möchte. ;)


    Zitat von .DeJaVu

    is() fand ich gar nicht mal so schlecht, wenn es nicht anwendbar ist - andere Baustelle. bitte stehen lassen

    Du brauchst dann immer noch den spezifischen Context zur Eingrenzung, sonst baust du das ganze UI um.:/

  • Selektor für kleinen Pfeil in CSS-Code zum extra-config-menü.uc.js ab v139

    • Horstmann
    • 2. Mai 2025 um 15:02
    Zitat von .DeJaVu
    Zitat von Horstmann

    mit oder ohne > ...

    Das > bezeichnet ein direktes Child. Ohne sind es alle Elemente unterhalb des Mutter-Elements, also auch in 2./3./usw Ebene

    Exakt, und das war auch das generelle Problem mit meinem Ansatz weiter oben.
    Aber ohne Script - was jetzt endlich da ist - weiss ich ja nicht was ein Child von was ist, und wo #ExtraConfigMenu-popup eingefügt wird.
    Ein ::after Element ist zudem kein Child in dem Sinne, also kann man dafür keinen direkten Combinator verwenden.

  • Selektor für kleinen Pfeil in CSS-Code zum extra-config-menü.uc.js ab v139

    • Horstmann
    • 2. Mai 2025 um 14:56
    Zitat von FuchsFan
    Zitat von Mira_Belle

    Wurdest Du nicht aufgefordert ganze Skripte zu posten?

    Nun fangt doch nicht schon wieder damit an, das nervt ja langsam. Aber du hast ja nicht ganz Unrecht, bitteschön.

    Unglaublich ....

  • Selektor für kleinen Pfeil in CSS-Code zum extra-config-menü.uc.js ab v139

    • Horstmann
    • 2. Mai 2025 um 14:49
    Zitat von FuchsFan

    Ich bitte in der Sache nochmals um Hilfe. Im Beitrag #1 ist der zweite Codee für Hoover vorhanden, was bis zur Version 138 für jeden einzelnen Button den roten Pfeil bringt. Sieht dann so aus:

    In Version 139/140 will mir das nicht gelingen, es auch dort so einzurichten. Wenn ich z.B. diesen Code dafür einsetze, so werden alle Button gleichzeitig angesprochen.

    CSS
    /*rechts der kleine Pfeil bei hoover*/
    #ExtraConfigMenu-popup:hover > menu::after {
      content: "" !important;
      background-image: url("..//icons/down2.png") !important;
      margin-right: 12px !important; 
      display: block !important;
      background-repeat: no-repeat !important;
      background-position: 0px 3px !important;
      background-size: 14px 14px !important;
    }

    Was dann so aussieht:

    Witzig, sowas in der Art habe ich erwartet.
    Das hat vielleicht etwas mit CSS Selektoren/Combinators zu tun; aber zum Glück findet sich die Lösung an jeder Ecke. ;)

    Einfach das Combinator Dingens googeln, wie das geht mit Pseudoelelementen oder eben nicht, und in den Browserwerkzeugen schauen was die CSS Pfade etc. sind für den ganzen Kram.
    Das Script einzustellen hälst du ja für unnötig, also selber ran! :thumbup:

    Oder mal sowas wie #ExtraConfigMenu-popup > menu:hover menu::after testen, mit oder ohne > ... 8)

  • about:about Button

    • Horstmann
    • 2. Mai 2025 um 13:56
    Zitat von Mira_Belle
    Zitat von Horstmann

    Script aus #2

    Aber es funktioniert in der Nightly.

    Danke für's Testen! :):thumbup:

    Dass deine Version in verschiedenen Fenstern klappt, ohne das beschriebene Problem, ist seltsam; bei mir könnte es ja ein Mac Problem sein, aber die jüngsten Meldungen dazu kamen von Windows Usern.:/


    Zitat von geldhuegel

    2002Andreas : das Bild liegt bei mir C:\Users\geldh\AppData\Roaming\Mozilla\Firefox\Profiles\rq9bmbv4.xxxxxxxx\chrome\Icons\A.png

    Das einzige was mir zusätzlich zu den obigen Kommentaren noch einfällt, ist dass Icons bei dir mit grossem I geschrieben ist, als Name des Icon Ordners; im Script ist es icons kleingeschrieben.

    Wobei das nicht in jedem Fall ein Problem sein muss, ich meine mich zu erinnern dass hier am Mac Dateipfade nicht case-sensitive sind, oder sind es nur Dateinamen? :/

  • about:about Button

    • Horstmann
    • 2. Mai 2025 um 13:00
    Zitat von Mira_Belle

    Oder, Dein Skript "repariert".

    Nur aus Neugierde, ist da etwas anders als in meinem Script aus #2, oder hatte ich da einen Fehler drin?
    Sieht für meinen Eindruck eigentlich gleich aus.:/

    Und hast du das in der Release, und auch in der berüchtigten Nightly =O getestet? ;)

  • about:about Button

    • Horstmann
    • 2. Mai 2025 um 12:17
    Zitat von geldhuegel

    Horstmann : leider keine Funktion

    Mira_Belle : leider kein Button

    Hast du mit Mira's Version die Funktion, nur evtl. einen unsichtbaren Button?

  • Und noch ein kleines Script, was nicht mehr geht

    • Horstmann
    • 2. Mai 2025 um 12:01

    Siehe hier.

    Mal testen bitte:

    JavaScript
    // buttonCloseTab.uc.js - Button > Firefox Tabs schliessen
    
      (function() {
    
      if (!window.gBrowser) return;
    
        try {
            CustomizableUI.createWidget({
                id: 'fp-closetabs',
                type: 'custom',
                defaultArea: CustomizableUI.AREA_NAVBAR,
                onBuild: function(aDocument) {
                    var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbarbutton');
                    var props = {
                        id: 'fp-closetabs',
                        class: 'toolbarbutton-1 chromeclass-toolbar-additional',
                        label: 'Aktuellen Tab schließen',
                        tooltiptext: 'Aktuellen Tab schließen',
                        style: 'list-style-image: url(\'data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" color="dodgerblue" width="12" height="12" viewBox="0 0 16 16"><path fill="currentColor" fill-opacity="context-fill-opacity" d="M9.414 8l5.293-5.293a1 1 0 0 0-1.414-1.414L8 6.586 2.707 1.293a1 1 0 0 0-1.414 1.414L6.586 8l-5.293 5.293a1 1 0 1 0 1.414 1.414L8 9.414l5.293 5.293a1 1 0 0 0 1.414-1.414z"></path></svg>\')',
                       // onclick: 'if (event.button == 0) { \
                            //    BrowserCommands.closeTabOrWindow();\
                              //       }; '
                    };
                    for (var p in props)
                        toolbaritem.setAttribute(p, props[p]);
    					//toolbaritem.addEventListener('click', event => {
    					//if (event.button == 0) {
                        //       BrowserCommands.closeTabOrWindow();
                        //      };
    					//});
                    return toolbaritem;
                }
            });
        } catch(e) { };
    
        // Fix #2
        document.getElementById('fp-closetabs').addEventListener('click', event => {
            if (event.button === 0) {
                 BrowserCommands.closeTabOrWindow();
             }
         });
    
    })();
    Alles anzeigen
  • Mehrzeilige Tableiste für aktuelle Firefox-Versionen

    • Horstmann
    • 2. Mai 2025 um 09:48
    Zitat von GermanFreme82



    jetzt werden die TABS oben zu weit reingeschoben irgendwie.
    Der Abstand zwischen den TABs ist auch noch zu weit
    unten paßt das perfekt !

    Kannst du mir bitte sagen wo du da was geändert hast, damit ich die zahlen mal versuchen kann ?

    Alles anzeigen

    Falls die Antwort für mich bestimmt war (?):

    Damit könnste spielen, im gleichen CSS Code den du vorher mit diesem CSS probiert hast.
    Funktioniert nicht mit dem neuen Komplett-CSS von #1008, das du stattdessen auch testen kannst.

    CSS
    /* Abstand zw. Tabs anpassen */
    .tabbrowser-tab:not([pinned]) {
        padding-inline: 2px !important;
    }
    
    /* Abstand Tabs top:oben bottom:unten anpassen */
    .tab-background {
        margin-top: 2px !important;
        margin-bottom: 1px !important;
    }
    Zitat

    aber die Höhe ist hier normal eigentlich nur 35px

    Höhe normal: 36px .:/

Unterstütze uns!

Jährlich (2025)

92,9 %

92,9% (604,17 von 650 EUR)

Jetzt spenden
  1. Kontakt
  2. Datenschutz
  3. Impressum
Community-Software: WoltLab Suite™
Mastodon