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. FuchsFan

Beiträge von FuchsFan

  • Mehrzeilige Tableiste für aktuelle Firefox-Versionen

    • FuchsFan
    • 20. August 2022 um 12:16
    Zitat von Mira_Belle

    Das kann dann auf dem eigenen Rechner werkeln.

    Danke, habe ich mal geladen, und werde probieren.

  • Mehrzeilige Tableiste für aktuelle Firefox-Versionen

    • FuchsFan
    • 19. August 2022 um 22:39
    Zitat von 2002Andreas

    Lässt sich auf dieser Webseite gut erkennen:

    Danke, Andreas, das hat funktioniert. :thumbup: :)

  • Mehrzeilige Tableiste für aktuelle Firefox-Versionen

    • FuchsFan
    • 19. August 2022 um 22:23

    BrokenHeart

    Ich grüße Dich! :)

    Macht es sehr viel Mühe, wenn Du die gemachten Änderungen hier veröffentlichst?

    Es würde mir sehr helfen, weil ich im Script doch einige Anpassungen gemacht habe, dann bräuchte ich nur die betreffenden Teile nachbessern.

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

    • FuchsFan
    • 16. August 2022 um 17:03
    Zitat von Dharkness

    Nein, bei Dir besteht ein Problem mit dem von oben in die URL zu fahren, um die URL kopieren zu können

    Das Problem besteht allerdings. An diesem Verhalten RE: userChrome.js Scripte für den Fuchs (Diskussion) hat sich auch nichts geändert. Denn das passiert dann immer --- dann verschiebt sich die Adresse ganz nach links, und lässt sich nicht mehr markieren. ---

    Erst wenn wieder ein Klick auf eine freie Stelle der Seite erfolgt, dann erscheint wieder die volle Adresse linksbündig mit http/https . Dann beginnt das Spiel erneut, wenn von oben mit der Maus in die Url-Bar gefahren wird.

    Nun sage mir bitte, woran das liegt. :/

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

    • FuchsFan
    • 16. August 2022 um 09:22
    Zitat von Speravir

    Hier auch, so ist es ja auch gedacht.

    Danke für die Bestätigung, dann arbeitet das Script hier auch fehlerfrei.

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

    • FuchsFan
    • 15. August 2022 um 09:18
    Zitat von Dharkness

    Dafür hat das Script vorgesehen, das Du mit der Maus von oben in die Adressleiste fährst und zwar eher etwas langsamer.

    Das funktioniert hier aber nur, wenn vorher auf der Seite schon einmal eine Markierung vorgenommen wurde.

    Beim Aufruf einer Seite, deren Link über die ganze verfügbare Breite (und länger) der Urlbar verläuft, so habe ich nur zwei Möglichkeiten eine Markierung zu machen.

    1. Ein Linksklick auf http/https

    2. Ein Rechtsklick in die Urlbar (egal wohin), öffnet gleichzeitig das Popup zur Auswahl.

    Ist es denn bei Dir anders?

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

    • FuchsFan
    • 14. August 2022 um 19:36
    Zitat von Endor

    Nur als Info, von diesem Script gibt es eine neuere Version:

    Endor

    Danke, Endor, habe es übernommen.

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

    • FuchsFan
    • 14. August 2022 um 13:33

    2002Andreas / Dharkness

    Ich bedanke mich für Eure Unterstützung. :thumbup:

    Nach dem Versuch deines Scriptes, Andreas, trat der selbe Fehler hier auf. Den Verursacher habe ich jetzt raus gefunden.

    CSS
    /****** Adressen in Url-Bar werden gekürzt *****************************************/ 
    
    @-moz-document url-prefix("chrome://browser/content/browser.xhtml") {  
       
    #urlbar[textoverflow="end"]:not([focused]) > #urlbar-input-container > .urlbar-input-box > #urlbar-input {
      mask-image: linear-gradient(to left, transparent, black 0em) !important;
    }
       
    }

    Ohne diesen Code funktionieren beide Scripte (aus #3066 und auch aus #3077)

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

    • FuchsFan
    • 14. August 2022 um 10:47

    Für eine farbige Adresse in der Url-Bar nutze ich das Script:

    CSS
    // ==UserScript==
    // @name                 dav_LinkifiesLocationBar
    // @version              1.0
    // @description          dav_LinkifiesLocationBar
    // @shutdown        dav_LinkifiesLocationBar.globalShutdown();
    // ==/UserScript==
    
    /*
    Idea based on
    https://addons.mozilla.org/en-US/firefox/addon/locationbar%C2%B2/
    https://github.com/simonlindholm/locationbar2
    */
    setTimeout(function() {
        if (location.href != 'chrome://browser/content/browser.xhtml') return;
    
        const colorizeExtensionFile = false,
            selectUrlbarText = true;
    
        function getWindow(){
            return window;
        }
        function getMostRecentWindow(){
            var win = Components.classes["@mozilla.org/appshell/window-mediator;1"]
                .getService(Components.interfaces.nsIWindowMediator)
                .getMostRecentWindow("navigator:browser");
            return win;
        }
        var localWindow = getWindow();
        localWindow.dav_LinkifiesLocationBar = {};
    
        var style = `
            @namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
    
            .claseLocationBar{
               display: block;
               position: absolute;
               height: 24px;
               width: 100%;
               line-height: 24px;
               white-space:nowrap;
               overflow:hidden;
            }
            .claseLocationBar span{
                position: relative;
               margin: 0 1px;
               display: inline-block;
            }
            .claseLocationBar span:hover{
                text-decoration: underline;
                cursor: pointer;
            }
            .claseLocationBar span.pathname{
               padding-left:9px;
               margin: 0 2px;
            }
            .claseLocationBar .pathname:after{
              content:' ';
              display: block;
              position: absolute;
              border-style: solid;
              border-width: 4px 4px 4px 7px;
              border-color: transparent transparent transparent #6fa880;
              top: 10px;
              left: 0px;
            }
            .claseLocationBar .label_pathname{
               display: none;
            }
            /*************************************
            *************** COLORS ***************
            *************************************/
            .claseLocationBar span.protocol{
               font-weight: normal;
               color: #777777;
               margin-right: -1px;
            }
            .claseLocationBar .subdomain {
               font-weight: bold;
               color: #C68007;
            }
            .claseLocationBar span.hostname{
               font-weight: bold;
               color: #d50f25;
            }
            .claseLocationBar span.port{
               color: #5F58A3;
            }
            .claseLocationBar span.pathname{
               color: black;
            }
            .claseLocationBar span.hash{
               color: #1054C9;
               margin-left: -1px;
            }
            .claseLocationBar span.search{
               color: #03AA03;
               margin-left: -1px;
            }
            .claseLocationBar .extension{
                color: rgb(96,86,143);
            }
    
            /*************************************
            ***************  font-family: monospace; ***************
            *************************************/
            /*
            .urlbar-input-box[dav_LinkifiesLocationBar]{
              font-family: monospace;
                line-height: 24px;
            }
            .claseLocationBar{
             line-height: 28px;
            }
            .claseLocationBar .pathname:after{
              top: 10px;
            }
            .claseLocationBar span.port{
                margin-left: -1px;
            }
            .claseLocationBar .subdomain {
              margin-right: -1px;
            }
            .claseLocationBar span.hostname{
              margin-right: 1px;
            }
            */
            /*.claseLocationBar label {
                margin-block: unset !important;
                margin-inline: unset !important;
            }*/
            locationBarTag{
              display: inline;
            }
        `;
    
        var stylexul = `
            .urlbar-input-box[dav_LinkifiesLocationBar] #urlbar-input:focus ~ .claseLocationBar{
               display: none !important;
            }
            .urlbar-input-box[dav_LinkifiesLocationBar]  #urlbar-input:focus{
               opacity: 1;
            }
            .urlbar-input-box[dav_LinkifiesLocationBar]  #urlbar-input{
               opacity: 0;
            }
        `;
    
    /*
    AGENT_SHEET: 0
    USER_SHEET: 1
    AUTHOR_SHEET: 2
    */
        var CSS_Loader = {
            sss: Components.classes["@mozilla.org/content/style-sheet-service;1"].getService(Components.interfaces.nsIStyleSheetService),
            load: function(cssCode) {
                this.unload(cssCode);
                var uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent(cssCode), null, null);
                this.sss.loadAndRegisterSheet(uri, this.sss.AGENT_SHEET);
            },
            unload: function(cssCode) {
                var uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent(cssCode), null, null);
                if (this.sss.sheetRegistered(uri,this.sss.AGENT_SHEET))
                {
                    this.sss.unregisterSheet(uri,this.sss.AGENT_SHEET);
                }
            }
        }
    
        const CLIKS = {
            left: 0,
            middle: 1,
            right: 2
        }
    
        function extend() {
            var copy, target = {};
            for (var i = 0, l = arguments.length; i < l; i++) {
                var options = arguments[i];
                for (var name in options) {
                    copy = options[name];
                    if (copy !== undefined) {
                        target[name] = copy;
                    }
                }
            }
            return target;
        }
    
        var styleString = (style) => {
            return Object.keys(style).reduce((prev, curr) => {
                return `${prev += curr.split(/(?=[A-Z])/).join('-').toLowerCase()}:${style[curr]};`
            }, '');
        };
    
        function createElement(elto) {
            elto = extend({
                attrArray: {},
                evtListener: [],
                estilos: {}
            }, elto);
    
            var node = getWindow().document.createXULElement(elto.type);
    
            Object.keys(elto.attrArray).forEach(key => {
                if(key == "innerHTML"){
                    node.innerHTML = encodeHTML(elto.attrArray[key]);
                }
                else {
                    node.setAttribute(key, elto.attrArray[key]);
                }
            });
    
            elto.evtListener.forEach(evt => {
                node.addEventListener(evt.type, evt.funcion, false);
            });
    
            let estilo = styleString(elto.estilos);
            if (estilo) {
                node.setAttribute("style", estilo);
            }
    
            return node;
        }
    
        function encodeHTML(text) {
            return decodeURI(text).replace(/&/g, '&amp;')
                .replace(/</g, '&lt;')
                .replace(/>/g, '&gt;')
                .replace(/"/g, '&quot;')
                .replace(/'/g, '&apos;');
        }
    
        function appendPart(text, clase) {
            if (!text) return;
    
            if(clase == "pathname")
            {
                let sp = createElement({
                    type: "label",
                    attrArray: {
                        class: "label_pathname",
                        innerHTML:"/"
                    }
                });
                divLocationBar.appendChild(sp);
            }
            let sp = createElement({
                type: "span",
                attrArray: {
                    class: clase,
                    innerHTML:text
                },
                evtListener: [{
                    type: "click",
                    funcion: clickPart
                }]
            });
            divLocationBar.appendChild(sp);
            sp.setAttribute("href", divLocationBar.textContent);
            return sp;
        }
    
        function clickPart(evt) {
            if (evt.button == CLIKS.right) return;
    
            let target = evt.target;
            if (target.className != "protocol") {
                let href = target.getAttribute("href");
                var where = evt.button == CLIKS.middle || evt.ctrlKey ? "tab" : "current";
                evt.view.openLinkIn(href, where, {
                    allowThirdPartyFixup: true,
                    targetBrowser: gBrowser.selectedBrowser,
                    indicateErrorPageLoad: true,
                    allowPinnedTabHostChange: true,
                    disallowInheritPrincipal: true,
                    allowPopups: false,
                    triggeringPrincipal: Services.scriptSecurityManager.getSystemPrincipal()
                });
    
                evt.stopPropagation();
            }
        }
    
        function borraPrevio() {
            var divPrevio = localWindow.document.querySelector(".claseLocationBar");
            if (divPrevio) {
                divPrevio.parentNode.removeChild(divPrevio)
            }
        }
    
        var debounce = (fn, ms = 0) => {
          let timeoutId;
          return function(...args) {
            clearTimeout(timeoutId);
            timeoutId = setTimeout(() => fn.apply(this, args), ms);
          };
        };
    
        var pintaLocation = debounce(pintaLocation_, 50);
    
        function pintaLocation_() {
            divLocationBar.innerHTML = '';
    
            var urlBarInput = getWindow().document.querySelector("#urlbar-input").value;
            var urlGBrowser = gBrowser.currentURI.displaySpec;
    
            if(urlGBrowser.startsWith("about")){
                divLocationBar.innerHTML = encodeHTML(urlBarInput);
                return;
            }
    
            var url = urlGBrowser.indexOf(urlBarInput) != -1 ? urlGBrowser : urlBarInput;
    
            try {
                var { protocol, hostname, port, pathname, hash, search } = new URL(url);
            } catch (e) {
                divLocationBar.innerHTML = encodeHTML(urlBarInput);
                return;
            }
    
            var partido = hostname.split(".");
            var subdomain;
            if(partido.length > 2 && !partido.every( v => v == v-0 ))//chequeamos que no sean todos numeros, porque entonces es una IP
            {
                subdomain = partido.splice(0, partido.length-2).join(".");
                hostname= partido.join(".");
            }
    
            appendPart(protocol + "//", "protocol");
            if (subdomain) {
                appendPart(subdomain+".", "subdomain");
            }
            appendPart(hostname, "hostname");
            if (port) {
                appendPart(":" + port, "port");
            }
            var arrayPathname = pathname.split("/");
            var arrayPathnameLength = arrayPathname.length;
            arrayPathname.forEach((elto, index) => {
                if (elto) {
                    let sp = appendPart(elto, "pathname");
                    if(colorizeExtensionFile && index == arrayPathnameLength-1)
                    {
                        let arrayDot = elto.split(".");
                        if(arrayDot.length > 1)
                        {
                            let extension = arrayDot.pop();
                            sp.innerHTML = "";
                            sp.appendChild(createElement({
                                type: "locationBarTag",
                                attrArray: {
                                    href:sp.getAttribute("href"),
                                    innerHTML: arrayDot.join(".")
                                }
                            }));
                            sp.appendChild(createElement({
                                type: "locationBarTag",
                                attrArray: {
                                    class: "extension",
                                    href:sp.getAttribute("href"),
                                    innerHTML: "."+extension
                                }
                            }));
                        }
                    }
                }
            });
            appendPart(search, "search");
            appendPart(hash, "hash");
        }
    
        /******************* INIT ***************************/
        var urlbarInput = getWindow().document.querySelector("#urlbar-input");
        var timeMouseMove = -1;
        function hideDivLocatonBar(){
            urlbarInput.focus();
        }
        var divLocationBar = createElement({
            type: "div",
            attrArray: {
                class: "claseLocationBar"
            },
            evtListener: [{
                type: "click",
                funcion: function(evt) {
                    hideDivLocatonBar()
                    if(selectUrlbarText){
                        urlbarInput.select();
                    }
                }
            },{
                type: "mouseenter",
                funcion: function(evt) {
                    //esto es el ratón entrando por encima
                    if(evt.screenY == divLocationBar.screenY)
                    {
                        timeMouseMove = setTimeout(hideDivLocatonBar, 500);
                    }
                }
            },{
                type: "mouseleave",
                funcion: function(evt) {
                    clearTimeout(timeMouseMove);
                }
            }]
        });
    
        borraPrevio();
        urlbarInput.parentNode.appendChild(divLocationBar);
        urlbarInput.parentNode.setAttribute("dav_LinkifiesLocationBar", true);
        urlbarInput.addEventListener("blur", pintaLocation);
        pintaLocation();
    
        var last_displaySpec = "";
        var intevalID = setInterval(function(){
            //console.log("setInterval", intevalID,  localWindow == window, localWindow == getMostRecentWindow());
            let actual_displaySpec = gBrowser.currentURI.displaySpec;
            if(last_displaySpec != actual_displaySpec){
                last_displaySpec = actual_displaySpec;
                pintaLocation();
            }
        }, 50);
        CSS_Loader.load(style);
        CSS_Loader.load(stylexul);
        /******************* END INIT ***************************/
        dav_LinkifiesLocationBar.shutdown = function(win){
            borraPrevio();
            clearTimeout(intevalID);
            urlbarInput.parentNode.removeAttribute("dav_LinkifiesLocationBar");
            CSS_Loader.unload(style);
            CSS_Loader.unload(stylexul);
            urlbarInput.removeEventListener("blur", pintaLocation);
        }
    
        dav_LinkifiesLocationBar.globalShutdown = function(){
            var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"]
                        .getService(Components.interfaces.nsIWindowMediator);
            var ws = wm.getEnumerator(null);
            while(ws.hasMoreElements()) {
                var w = ws.getNext();
                w.dav_LinkifiesLocationBar.shutdown(w);
            }
        }
    }, 10);
    Alles anzeigen

    Versuche ich die Adresse zu markieren, dann funktioniert das eigentlich nur, wenn ich im ganz linken Bereich hineinklicke. Gehe ich mit der Maus ganz nach rechts, und bewege dort die Maus (ohne zu klicken) über der Adresse hoch und runter, dann verschiebt sich die Adresse ganz nach links, und lässt sich nicht mehr markieren.

    Gibt es eine Möglichkeit dieses Verhalten zu verhindern, und über das Script eine Markierung einzubauen?

  • Altes Theme aus Farbgebungen löschen

    • FuchsFan
    • 9. August 2022 um 19:07
    Zitat von clio

    Hm, hast Du denn meinen Hinweis wenigstens mal ausprobiert ehe man ein Restore macht?

    Das würde jetzt ausarten, wenn ich Dir berichten würde, was ich noch alles unternommen habe. Ich bin soweit gegangen, dass ich den Inhalt des Ordners extensions gesichert habe, damit er total leer war. Neustart, Theme aufgerufen, und das erwähnte Theme war trotzdem da. Da müssen ja noch andere Informationen vorliegen, denn sonst könnte es ja nicht geladen werden.

    Ich danke Dir auch dafür, dass Du mir Deine Hilfe angeboten hast. :thumbup:

    So, dann Backup eingespielt, einige Nachbesserungen, und der "normale" Zustand ist wieder hergestellt.

  • Altes Theme aus Farbgebungen löschen

    • FuchsFan
    • 8. August 2022 um 21:37
    Zitat von AngelOfDarkness

    Dooferweise hattest du als Firefox Version die 103.0 angegeben, deswegen war ich verwundert.

    Gebe ich zu, wenn ich aus dem 103 das Thema eröffne, dann wird bei mir automatisch die Version angezeigt. Werde ich in Zukunft drauf achten.

  • Altes Theme aus Farbgebungen löschen

    • FuchsFan
    • 8. August 2022 um 21:25
    Zitat von AngelOfDarkness

    Was soll das für eine Sektion sein? So was finde ich nicht in meinem Firefox 103.0, unter "Einstellungen --> Erweiterungen und Themes --> Themes".

    Ist nur im Nightly zu finden.

  • Altes Theme aus Farbgebungen löschen

    • FuchsFan
    • 8. August 2022 um 21:14
    Zitat von Dharkness

    dort steht unter addon-id=" die ID die Du brauchst.

    Danach habe ich gesucht, ist nicht zu finden

    Wir machen es jetzt so, Thema ist hiermit beendet, es wird ein Backup geladen.

    Danke, für alle Hilfsangebote.

  • Altes Theme aus Farbgebungen löschen

    • FuchsFan
    • 8. August 2022 um 20:42
    Zitat von Dharkness

    Das kannst Du mittels der Browser-Werkzeuge ermitteln

    Ja, das habe ich ja auch schon gemacht, aber wie kann ich das jetzt weiter machen.

  • Altes Theme aus Farbgebungen löschen

    • FuchsFan
    • 8. August 2022 um 20:02
    Zitat von clio

    Du könntest in Dein Profil im Ordner extensions schauen und dort das Theme manuell löschen.

    Würde ich ja gern machen, aber das erst mal raus finden. Ich glaube da mache ich mehr Schaden, oder hast Du noch einen Rat, wie ich die richtige Datei ermitteln kann.

  • Altes Theme aus Farbgebungen löschen

    • FuchsFan
    • 8. August 2022 um 19:48
    Zitat von Dharkness

    Hast Du den Nightly Fx nochmal neu gestartet?

    Bleibt ohne Wirkung.

  • Altes Theme aus Farbgebungen löschen

    • FuchsFan
    • 8. August 2022 um 18:41
    Zitat von 2002Andreas

    Kannst du kein anderes Theme aktivieren?

    Das geht natürlich, aber das Theme landet dann in der neuen Sektion Farbwelten. Könnte ich ausblenden, möchte ich aber nicht. Nur das Theme sollte wieder weg.

  • Altes Theme aus Farbgebungen löschen

    • FuchsFan
    • 8. August 2022 um 18:24

    Unter about:addons in der Sektion Themes wurde eine Zeit lang bei Farbgebungen unterschiedliche Themes angeboten. Versuchsweise hatte ich immer noch eines im Nightly in Verwendung. Nun gibt es die Sektion Farbgebungen nicht mehr, und ich bekomme das ausgewählte Theme nicht mehr gelöscht, weil nur der Button Verwalten angeboten wird.

    Wie kann ich das Theme löschen?

  • Popup-Menü der Ordner aus Lesezeichen-Symbolleiste anpassen

    • FuchsFan
    • 2. August 2022 um 17:29
    Zitat von Dharkness

    Magst Du mir ein paar Icons

    Kannst Du haben.

         

  • Popup-Menü der Ordner aus Lesezeichen-Symbolleiste anpassen

    • FuchsFan
    • 2. August 2022 um 14:47
    Zitat von Mira_Belle

    Kannst Du mir bitte mal ein Bildchen dazu machen?

    Mit meinem restlichen Code sieht es dann so aus ( Code aus userShadow.css und userChrome.css).

Unterstütze uns!

Jährlich (2025)

108,6 %

108,6% (705,72 von 650 EUR)

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