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

Beiträge von Mira_Belle

  • Firefox ist Standard-Browser, aber beim Klick auf Links öffnet sich Edge

    • Mira_Belle
    • 9. Mai 2026 um 18:17

    Windows 11, ja klar!
    Windows ignoriert das! Also das klicken auf einen Link in einer E-Mail, wenn diese mit Outlook oder dieses 365
    geöffnet wurde.
    Es gibt da aber ein Tool dafür, dass einen Standardbrowser auch wirklich zu einem Standardbrowser macht.
    Und man kann den Edge auch insoweit "kastrieren", dass er gar keinen muks mehr von sich gibt.
    Muss aber nicht sein.

    GitHub - rcmaehl/MSEdgeRedirect: A Tool to Redirect News, Search, Widgets, Weather and More to Your Default Browser
    A Tool to Redirect News, Search, Widgets, Weather and More to Your Default Browser - rcmaehl/MSEdgeRedirect
    github.com

    oder

    GitHub - da2x/EdgeDeflector: A tiny helper application to force Windows 10 to use your preferred web browser instead of ignoring the setting to promote Microsoft Edge. Only runs for a microsecond when needed.
    A tiny helper application to force Windows 10 to use your preferred web browser instead of ignoring the setting to promote Microsoft Edge. Only runs for a…
    github.com
  • Diverse Scripte funktionieren nicht mehr in Nightly

    • Mira_Belle
    • 6. Mai 2026 um 13:53

    Jetzt habe ich doch glatt meinen Kaffee verschüttet! :D

    Aber es hat sich ja geklärt und ich habe ausnahmsweise mal keinen Fehler gemacht. :saint:


    Zitat von Boersenfeger

    Ich verstehe es nicht... wenn ich in #26 das Script anschaue, ist in Zeile 60 kein "openTrustedLinkIn(link, 'tab');" zu sehen,
    Ich sehe da "openTrustedLink(link, 'tab');"

    Vielleicht bin ich ja auch nur alt und blind 😀

    Doch, doch, das steht da!
    Du bist definitiv blind, ob alt kann ich nicht beurteilen. ^^


    Direkt da rauskoppiert:

    Code
            // DER WRAPPER: Prüft erst documentGlobal (Neu), dann ownerGlobal (Alt)
            const win = event.target.documentGlobal || event.target.ownerGlobal;
    
            // Aufruf über das erkannte Fenster-Objekt
            win.openTrustedLinkIn(link, 'tab');
  • Diverse Scripte funktionieren nicht mehr in Nightly

    • Mira_Belle
    • 5. Mai 2026 um 20:55

    Beispiele!

    JavaScript
    // Button_for_Profilfolder.us.js
    // Das Script erstellt einen Button, der direkt den "Profilordner" öffnet.
    
    // Source file https://www.camp-firefox.de/forum/thema/140072/?postID=1282691#post1282691
    
    /* ----------------------------------------------------------------------------------- */
    /*     Zu beachten ist, dass die Grafiken sich im richtigen Ordner befinden müssen     */
    /*            %appdata%\Mozilla\Firefox\Profiles\"Profilname"\chrome\icons             */
    /* ----------------------------------------------------------------------------------- */
    
    (function() {
    
      if (!window.gBrowser)
        return;
    
      const
      // ■■ START UserConfiguration ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
               id = 'profilefolder-ToolBarButton', // Id des Buttons
            label = 'Profil-Ordner öffnen', // Bezeichnung des Buttons
      tooltiptext = 'Profil-Ordner öffnen',
      // Icon-------------------------------------------------------
             icon = 'user.svg',  // [Name.Dateiendung] des Symbols
         iconPath = '/chrome/icons/', // Pfad zum Ordner der das Icon beinhaltet
      // ■■ END UserConfiguration ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
      curProfDir = PathUtils.toFileURI(PathUtils.join(PathUtils.profileDir));
    
    	if (Services.prefs.getBoolPref('svg.context-properties.content.enabled') == false) {
    		Services.prefs.setBoolPref('svg.context-properties.content.enabled', true );
    	}
      //BUTTON
    	try {
        CustomizableUI.createWidget({
          id: id,
          defaultArea: CustomizableUI.AREA_NAVBAR,
          label: label,
          tooltiptext: tooltiptext,
    
          onCreated: (button) => {
            button.style.MozContextProperties = 'fill, stroke, fill-opacity';
            button.style.listStyleImage = 'url("' + curProfDir + iconPath + icon + '")';
            button.style.minWidth = 'fit-content';
          //  button.style.color = '#ff5a79'; // Farbe für das SVG-Icon setzen    
          }
        });
    	} catch(e) {};
    
      (function click_button() {
        const button = document.getElementById(id);
        if (button) {
          button.style.fill = '#ff5a79';  // hier die Farbe setzen
          /* Oder diese Lösung wenn ganz sicher nur das Icon-Element angesprochen werden soll */ 
          /*
          let iconNode = button.querySelector('.toolbarbutton-icon');
          if (iconNode) {
            iconNode.style.fill = '#ff5a79';
          } */
          // click
          button.addEventListener('click', (event) => {
            if (event.button === 0) {
              // DER WRAPPER: Prüft erst documentGlobal (Neu), dann ownerGlobal (Alt)
              const win = event.target.documentGlobal || event.target.ownerGlobal;
    
              // Aufruf über das erkannte Fenster-Objekt
              win.Services.dirsvc.get("ProfD", Ci.nsIFile).launch();
            }
          });
        } else {
          // Wenn der Button noch nicht existiert, später nochmal probieren
          setTimeout(click_button, 100);
        }
      })();
    
    })();
    Alles anzeigen

    oder

    JavaScript
    // QuickLinkButton-about-config.uc.js
    // Das Script erstellt einen Button, der einen Tab mit "About:Config" öffnet.
    
    // Source file https://www.camp-firefox.de/forum/thema/140072/?postID=1282691#post1282691
    
    /* ----------------------------------------------------------------------------------- */
    /*     Zu beachten ist, dass die Grafiken sich im richtigen Ordner befinden müssen     */
    /*            %appdata%\Mozilla\Firefox\Profiles\"Profilname"\chrome\icons             */
    /* ----------------------------------------------------------------------------------- */
    
    /* ----------------------------------------------------------------------------------- */
    /*  IMPORTANT!               This script was created using AI                          */
    /* ----------------------------------------------------------------------------------- */
    
    (function() {
    
      if (!window.gBrowser)
        return;
    
      const
      // ■■ START UserConfiguration ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
               id = 'aboutconfig_button', // Id des Buttons
             link = 'about:config', // Linkziel des Buttons
            label = 'Quicklink: about:config', // Bezeichnung des Buttons
      tooltiptext = 'Quicklink:\nabout:config',
      // Icon-------------------------------------------------------
             icon = 'skull-crossbones.svg',  // [Name.Dateiendung] des Symbols
         iconPath = '/chrome/icons/', // Pfad zum Ordner der das Icon beinhaltet
      // ■■ END UserConfiguration ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
      curProfDir = PathUtils.toFileURI(PathUtils.join(PathUtils.profileDir));
    
    	if (Services.prefs.getBoolPref('svg.context-properties.content.enabled') == false) {
    		Services.prefs.setBoolPref('svg.context-properties.content.enabled', true );
    	}
      // Button erstellen
    	try {
        CustomizableUI.createWidget({
          id: id,
          defaultArea: CustomizableUI.AREA_NAVBAR,
          label: label,
          tooltiptext: tooltiptext,
    
          onCreated: (button) => {
            // Optik
            button.style.MozContextProperties = 'fill, stroke, fill-opacity';
            button.style.listStyleImage = 'url("' + curProfDir + iconPath + icon + '")';
          //  button.style.listStyleImage = 'url("chrome://global/skin/icons/heart.svg")';  // ist nur zum testen !!
            button.style.minWidth = 'fit-content';  
            button.style.fill = '#ffff00';  // hier die Farbe setzen
          }
        });
    	} catch(e) {};
    
      //click
      (function click_button() {
    
        const button = document.getElementById(id);
        if (button) {
      //    button.style.fill = '#ffff00';  // oder hier die Farbe setzen
    
          button.addEventListener('click', (event) => {
            if (event.button === 0) {
              // DER WRAPPER: Prüft erst documentGlobal (Neu), dann ownerGlobal (Alt)
              const win = event.target.documentGlobal || event.target.ownerGlobal;
              
              // Aufruf über das erkannte Fenster-Objekt
              win.openTrustedLinkIn(link, "tab");
            }
          });
        } else {
          // Wenn der Button noch nicht existiert, später nochmal probieren
          setTimeout(click_button, 100);
        }
      })();
    
    })();
    Alles anzeigen

    oder

    JavaScript
    // Addons-UpDate-Check.uc.js
    // Das Script erstellt einen Button, der einen UpDate-Check ausführt und dies in einem neuen Tab anzeigt.
    
    // Source file https://www.camp-firefox.de/forum/thema/140072/?postID=1282691#post1282691
    
    /* ----------------------------------------------------------------------------------- */
    /*     Zu beachten ist, dass die Grafiken sich im richtigen Ordner befinden müssen     */
    /*            %appdata%\Mozilla\Firefox\Profiles\"Profilname"\chrome\icons             */
    /* ----------------------------------------------------------------------------------- */
    
    (function() {
    
      if (!window.gBrowser)
    	return;
    
       const
       // ■■ START UserConfiguration ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
                id = 'addons-update-button', // Id des Buttons
              link = 'about:addons', // Linkziel des Buttons            
             label = 'Add-ons Update', // Bezeichnung des Buttons
       tooltiptext = 'Add-ons aktualisieren',
       // Icon-------------------------------------------------------
              icon = 'sync.svg',  // [Name.Dateiendung] des Symbols
          iconPath = '/chrome/icons/', // Pfad zum Ordner der das Icon beinhaltet
       // ■■ END UserConfiguration ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
       curProfDir = PathUtils.toFileURI(PathUtils.join(PathUtils.profileDir));
    
    	if (Services.prefs.getBoolPref('svg.context-properties.content.enabled') == false) {
    		Services.prefs.setBoolPref('svg.context-properties.content.enabled', true );
    	}
       //BUTTON
    	try {
          CustomizableUI.createWidget({
             id: id,
             defaultArea: CustomizableUI.AREA_NAVBAR,
             label: label,
             tooltiptext: tooltiptext,
    
             onCreated: (button) => {
                button.style.MozContextProperties = 'fill, stroke, fill-opacity';
                button.style.listStyleImage = 'url("' + curProfDir + iconPath + icon + '")';
                button.style.minWidth = 'fit-content';
                button.style.color = '#ffe10f'; // Farbe für das SVG-Icon setzen
             }
          });
    	} catch(e) {};
    
    // click
      (function click_button() {
        const button = document.getElementById(id);
        if (button) {
          button.addEventListener('click', (event) => {
            if (event.button !== 0) {
              return;
            }
            // DER WRAPPER: Prüft erst documentGlobal (Neu), dann ownerGlobal (Alt)
            const win = event.target.documentGlobal || event.target.ownerGlobal;
    
            // Aufruf über das erkannte Fenster-Objekt
            win.openTrustedLinkIn(link, 'tab');
    
            window.addEventListener('pageshow', function onPageshow(e) {
              const doc = e.target;
              if (doc.URL !== 'about:addons') {
                return;
              }
              window.removeEventListener('pageshow', onPageshow);
              doc.querySelector('addon-page-options panel-item[action="view-recent-updates"]').click();
              doc.querySelector('addon-page-options panel-item[action="check-for-updates"]').click();
              content.setTimeout(function () {
                const categories = doc.getElementById('categories');
                categories
                  .querySelector('button[viewid="addons://updates/recent"]')
                  .click();
                categories
                  .querySelector('button[viewid="addons://updates/available"]')
                  .click();
              }, 1500);
            });
          });
        } else {
          setTimeout(click_button, 100);
        }
      })();
    
    })();
    Alles anzeigen
  • Diverse Scripte funktionieren nicht mehr in Nightly

    • Mira_Belle
    • 5. Mai 2026 um 20:23

    Danke milupo

    Ich habe dann mal weiter mit dieser KI gearbeitet und es kam dabei ein Wrapper raus!
    Also eine Abfrage ob "event.target.ownerGlobal" bzw. "event.target.documentGlobal." genutzt wird!

    Vorher:

    Code
          button.addEventListener('click', (event) => {
            if (event.button === 0) {
              event.target.ownerGlobal.openTrustedLinkInopenTrustedLinkIn(link, "tab");
            //  event.target.documentGlobal.openTrustedLinkInopenTrustedLinkIn(link, "tab");   ab Version 152
            }
          });

    Nachher:

    Code
          button.addEventListener('click', (event) => {
            if (event.button === 0) {
              // DER WRAPPER: Prüft erst documentGlobal (Neu), dann ownerGlobal (Alt), dann Fallback
              const win = event.target.documentGlobal || event.target.ownerGlobal || window;
              
              // Aufruf über das erkannte Fenster-Objekt
              win.openTrustedLinkIn(link, "tab");
            }
          });

    Somit funktionieren die Skripte jetzt und auch später, und ich muss dann nicht mehr basteln.

  • Diverse Scripte funktionieren nicht mehr in Nightly

    • Mira_Belle
    • 5. Mai 2026 um 18:12

    Mal eine Frage so in die Runde!

    Muss das "event.target.ownerGlobal" bzw. "event.target.documentGlobal." überhaupt sein?

    Ich frage, weil beim Durchforsten meiner genutzten Skripte auch welche dabei waren,
    da fehlte dies!
    Diese Skripte funktionierten sowohl in der aktuellen 150.01 als auch im Nightly 152.
    Ergänzte ich diese Skripte um "event.target.ownerGlobal." bzw. "event.target.documentGlobal." ,
    änderte sich das.
    Entweder funktionierten sie in der aktuellen Versin oder eben im Nightly.

    Also, kann man "event.target.ownerGlobal" bzw. "event.target.documentGlobal." nicht einfach weglassen?

  • Diverse Scripte funktionieren nicht mehr in Nightly

    • Mira_Belle
    • 5. Mai 2026 um 15:39

    Danke!
    Habe in allen Scripten ownerGlobal durch documentGlobal ersetzt.

    Wobei so ein Script auch ohne " event.target.ownerGlobal" bzw. "event.target.documentGlobal." funktioniert.

  • Neue Quicklink-Button

    • Mira_Belle
    • 5. Mai 2026 um 15:13

    Update:!:

    Für die aktuelle Nightly 152.0a1 (2026-05-05) (64-Bit)
    Ein paar Scripte aktualisiert.

    1. Button_for_Profilfolder.us.js
    2. Button_for_Chromefolder.us.js
    3. Addons-UpDate-Check.uc.js
    4. Downloadbutton.uc.js
    5. Button_for_QuickLinks-about.uc.js
  • Diverse Scripte funktionieren nicht mehr in Nightly

    • Mira_Belle
    • 5. Mai 2026 um 14:17

    2002Andreas Ja, schon gut, ich habe das Updaten vergessen und war noch bei einer älteren Version!

  • Diverse Scripte funktionieren nicht mehr in Nightly

    • Mira_Belle
    • 5. Mai 2026 um 14:10
    Zitat von 2002Andreas

    Funktioniert nicht im aktuellem Nightly.

    :?:

    Komisch, bei mir schon.

  • Diverse Scripte funktionieren nicht mehr in Nightly

    • Mira_Belle
    • 5. Mai 2026 um 13:42

    Boersenfeger
    Nur für den Fall, dass Du die Ursache für das nicht funktionieren des UpdateSkripts findest,
    hätte ich da eine Alternative.
    Muss halt nur das Symbol ausgetauscht werden!

    JavaScript
    // Addons-UpDate-Check.uc.js
    // Das Script erstellt einen Button, der einen UpDate-Check ausführt und dies in einem neuen Tab anzeigt.
    
    // Source file https://www.camp-firefox.de/forum/thema/140072/?postID=1282691#post1282691
    
    /* ----------------------------------------------------------------------------------- */
    /*     Zu beachten ist, dass die Grafiken sich im richtigen Ordner befinden müssen     */
    /*            %appdata%\Mozilla\Firefox\Profiles\"Profilname"\chrome\icons             */
    /* ----------------------------------------------------------------------------------- */
    
    (function() {
    
      if (!window.gBrowser)
    	return;
    
       const
       // ■■ START UserConfiguration ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
                id = 'addons-update-button', // Id des Buttons
             label = 'Add-ons Update', // Bezeichnung des Buttons
       tooltiptext = 'Add-ons aktualisieren',
       // Icon-------------------------------------------------------
              icon = 'sync.svg',  // [Name.Dateiendung] des Symbols
          iconPath = '/chrome/icons/', // Pfad zum Ordner der das Icon beinhaltet
       // ■■ END UserConfiguration ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
       curProfDir = PathUtils.toFileURI(PathUtils.join(PathUtils.profileDir));
    
    	if (Services.prefs.getBoolPref('svg.context-properties.content.enabled') == false) {
    		Services.prefs.setBoolPref('svg.context-properties.content.enabled', true );
    	}
       //BUTTON
    	try {
          CustomizableUI.createWidget({
             id: id,
             defaultArea: CustomizableUI.AREA_NAVBAR,
             label: label,
             tooltiptext: tooltiptext,
    
             onCreated: (button) => {
                button.style.MozContextProperties = 'fill, stroke, fill-opacity';
                button.style.listStyleImage = 'url("' + curProfDir + iconPath + icon + '")';
                button.style.minWidth = 'fit-content';
                button.style.color = '#ffe10f'; // Farbe für das SVG-Icon setzen
             }
          });
    	} catch(e) {};
    
    // click
      (function click_button() {
        const button = document.getElementById(id);
        if (button) {
          button.addEventListener('click', (event) => {
            if (event.button !== 0) {
              return;
            }
            event.target.ownerGlobal.openTrustedLinkIn('about:addons', 'tab');
            window.addEventListener('pageshow', function onPageshow(e) {
              const doc = e.target;
              if (doc.URL !== 'about:addons') {
                return;
              }
              window.removeEventListener('pageshow', onPageshow);
              doc.querySelector('addon-page-options panel-item[action="view-recent-updates"]').click();
              doc.querySelector('addon-page-options panel-item[action="check-for-updates"]').click();
              content.setTimeout(function () {
                const categories = doc.getElementById('categories');
                categories
                  .querySelector('button[viewid="addons://updates/recent"]')
                  .click();
                categories
                  .querySelector('button[viewid="addons://updates/available"]')
                  .click();
              }, 1500);
            });
          });
        } else {
          setTimeout(click_button, 100);
        }
      })();
    
    })();
    Alles anzeigen
  • Fx 150 > Searchbar Popup nicht bei focus öffnen

    • Mira_Belle
    • 24. April 2026 um 19:35

    2002Andreas eine Kleinigkeit noch!
    Das Adressfeld verhält sich ja genau so, aber mit ....

    CSS
    #urlbar[focused] vbox.urlbarView {
        display: none !important;
    }
    #urlbar[focused][usertyping] vbox.urlbarView {
        display: block !important;
    }

    ... kann man auch das ändern. ;)

  • Fx 150 > Searchbar Popup nicht bei focus öffnen

    • Mira_Belle
    • 23. April 2026 um 18:15

    Du gibst "f" ein, "suchst" und löschst dann das "f" wieder?

  • Fx 150 > Searchbar Popup nicht bei focus öffnen

    • Mira_Belle
    • 23. April 2026 um 16:13

    Einen ersten Ansatz hätte ich! Nur ob es das Gewünschte ist?

    Es wird dieses "Menü" nicht mehr angezeigt.

    CSS
    #searchbar-results {
      display: none !important;
    }

    2002Andreas Und magst Du mal testen, wenn Du im Skript die Zeile
    let searchbar = document.getElementById('searchbar-new');
    gegen
    let searchbar = document.getElementById('searchbar-results');
    austauschst?

  • Fx 150 > Searchbar Popup nicht bei focus öffnen

    • Mira_Belle
    • 23. April 2026 um 11:35
    Zitat von 2002Andreas

    Nachtrag:

    Dann funktioniert leider dieses Skript nicht mehr: ...

    Muss dann eventuell nur der Selektor für das Eingabefeld geändert werden?

    Ist nur so ein Schuß ins Blaue,

    kann es gerade nicht ausbrobieren.

  • Fx 150 > Searchbar Popup nicht bei focus öffnen

    • Mira_Belle
    • 23. April 2026 um 10:41

    FuchsFan Treffer!
    Das scheint es zu sein.

  • Fx 150 > Searchbar Popup nicht bei focus öffnen

    • Mira_Belle
    • 23. April 2026 um 10:20
    Zitat von 2002Andreas

    Hallo Mira, danke für die Hilfe :)

    Leider hilft mir das nicht weiter. Ich kann zwar die Einträge entfernen:

    Ah, ich denke, ich habe es verstanden.
    Seit Version 150 legt Firefox also eine "Suchchronik" an, deshalb erscheint da auch dieses "Menü" (Popup).
    Du möchtest aber, wenn ich das richtig verstehe, dass erst gar keine "Suchchronik" angelegt wird und
    infolgedessen auch das "Menü" (Popup) gar nicht erscheint.
    Richtig?


    Mh, ich habe das mal in einem neuen Testprofil ausprobiert!
    Wenn ich im Suchfeld auf die "Lupe" klicke, kommt das "Menü" zur Auswahl der Suchmaschine.
    Erst wenn ich direkt ins Suchfeld klicke, bekomme ich das "Menü" der letzten Sucheingaben.
    Wie ich es verhindern kann, dass diese "Suchchronik" überhaupt erst angelegt wird,
    da bin ich auch noch nicht dahinter gekommen.
    Denn egal was ich auch unter Einstellungen/Suche aktiviere, deaktiviere,
    es wird immer etwas angezeigt. :/

  • Fx 150 > Searchbar Popup nicht bei focus öffnen

    • Mira_Belle
    • 22. April 2026 um 21:14

    Hilft Dir das weiter?
    Anpassung der Einstellungen von Firefox Suggest | Hilfe zu Firefox

  • Kann auf https://www.melitta.de die Bestellung nicht abschließen!

    • Mira_Belle
    • 11. April 2026 um 22:09

    .DeJaVu Danke für den Link!
    die beiden erstgenannten schauen doch recht gut aus
    und kommen für mich als Ersatz für "meine" Erweiterung durchaus in Betracht.

    Speed Dial – Holen Sie sich diese Erweiterung für 🦊 Firefox (de)
    Laden Sie Speed Dial für Firefox herunter. Speed ​​Dial ermöglicht das Hinzufügen und Verwalten von Bookmarks in der New-Tab-Seite und bietet eine optionale…
    addons.mozilla.org


    und

    Speed Dial – Holen Sie sich diese Erweiterung für 🦊 Firefox (de)
    Laden Sie Speed Dial für Firefox herunter. Access to your favorite websites via an stylish speed dial!
    addons.mozilla.org
  • Kann auf https://www.melitta.de die Bestellung nicht abschließen!

    • Mira_Belle
    • 11. April 2026 um 15:18

    Oh, =O, sorry ich bin in der Zeile verrutscht!
    Du hast recht, diese Zeile hatte ich tatsächlich nicht wieder aktiviert!
    Sie habe ich sogar gelöscht!
    Und in about:config rückgängig gemacht!

  • Kann auf https://www.melitta.de die Bestellung nicht abschließen!

    • Mira_Belle
    • 11. April 2026 um 14:13

    Sören Hentzschel
    Zeile 5 ist doch ok.
    Aber Zeilen 6 bis 12 habe ich mal deaktiviert, weil ich nicht mehr weiß, ob ich das war
    und wenn ja warum.
    Werde sehen was passiert.

    Ach, und auf Standard zurückgesetzt!

    Code
    user_pref("toolkit.telemetry.server","https://incoming.telemetry.mozilla.org");
    user_pref("extensions.blocklist.enabled", true);
    user_pref("xpinstall.signatures.required", true);
    user_pref("app.shield.optoutstudies.enabled", true);
    user_pref("app.normandy.enabled", true);
    user_pref("extensions.autoDisableScopes", 15);

    Ach ja, ich war das!
    Jetzt werden mich einige Steinigen, ich nutze immer noch Speed Dial!
    Und nur so funktioniert es.

Unterstütze uns!

Jährlich (2026)

76,1 %

76,1% (589,79 von 775 EUR)

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