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

Beiträge von grisu2099

  • FF107 muss bei jedem Neustart neu eingerichtet werden

    • grisu2099
    • 19. November 2022 um 21:44

    Nutzt du Tuning-Software (z.B.: Tune-Up, CCleaner etc)?

  • FF107 muss bei jedem Neustart neu eingerichtet werden

    • grisu2099
    • 19. November 2022 um 21:35

    Gib mal about:profiles in die Adreßleiste ein. Wie viele Profile werden dir da angezeigt?

    Falls mehr als eins: Hast du die alle selbst angelegt?

  • FF107 muss bei jedem Neustart neu eingerichtet werden

    • grisu2099
    • 19. November 2022 um 21:30

    Welche Antivirus-Software läuft bei dir?

  • Skript für Add-ons Update

    • grisu2099
    • 19. November 2022 um 18:35

    Gerne!

    Ich hab ja auch was davon, wenn es funktioniert... ;) :D

  • Dialog Hilfe/Über Firefox

    • grisu2099
    • 19. November 2022 um 18:03
    Zitat von harff182

    Breite ändern in Zeile 107 hats leider nicht gebracht, mich aber zum Ändern der Höhe motiviert.

    Insofern mussich jezz nen Trostpreis für grisu2099 suchen gehen.

    Hauptsache, du hast die Lösung gefunden... ;)

  • Skript für Add-ons Update

    • grisu2099
    • 19. November 2022 um 17:59
    Zitat von 2002Andreas

    Ich lasse das jetzt mal in einem Profil drin, und teste bzw. vergleiche mit meinem anderen Skript.

    dito... ;)

  • Dialog Hilfe/Über Firefox

    • grisu2099
    • 19. November 2022 um 17:01

    Teste in Zeile 107 einen größeren Wert... :/

  • In der Statusleiste funktioniert der Rechtsklick nicht

    • grisu2099
    • 19. November 2022 um 16:59
    Zitat von Fritz80

    das alte Script funktioniert ja noch.

    Das hast du aber aus dem Ordner entfernt?

  • In der Statusleiste funktioniert der Rechtsklick nicht

    • grisu2099
    • 19. November 2022 um 16:53

    Du hast das neue Skript auch ganz sicher mit der Endung .js gespeichert?? :/

  • In der Statusleiste funktioniert der Rechtsklick nicht

    • grisu2099
    • 18. November 2022 um 19:54

    Teste mal dieses Skript:

    Code
    //  bottom-toolbar.uc.js
    
    (function() {
    
      if (location.href !== 'chrome://browser/content/browser.xhtml')
        return;
    
      let toolbar = document.createXULElement('toolbar');
      toolbar.id = 'bottom-toolbar';
      toolbar.setAttribute('customizable', 'true');
      toolbar.setAttribute('mode', 'icons');
      toolbar.setAttribute('context', 'toolbar-context-menu');
    
      let vbox  = document.createXULElement('vbox');
      vbox.id = 'bottom-toolbar-vbox';
      let browserBottombox = document.getElementById('browser-bottombox');
      browserBottombox.parentNode.insertBefore(vbox, browserBottombox);
      vbox.appendChild(toolbar);
      vbox.style.backgroundColor = '#323234';
      //Hier kann die Hintergrundfarbe angepasst werden. Als Wert kann zbs. red, green,
      //yellow oder orange usw, aber auch zbs. #f7f7f7 usw.verwendet werden.
    
      CustomizableUI.registerArea('bottom-toolbar', {legacy: true});
      CustomizableUI.registerToolbarNode (toolbar);
    
    })();
    Alles anzeigen
  • About Seiten mit CSS Codes anpassen

    • grisu2099
    • 18. November 2022 um 19:14

    Teste bitte mal:

    CSS
    .main-search > search-addons:nth-child(2) > search-textbox:nth-child(1) {
      background-color: black !important;
      color: white !important;
    }

    Farben kannst du ja nach Geschmack anpassen...

  • Skript "Alternative Searchbar" funktioniert seit Firefox 107 nicht mehr

    • grisu2099
    • 17. November 2022 um 21:23
    Zitat von Speravir

    Es gab unterdessen ein weiteres Update.

    Danke für die Info - gleich mal ansehen...

  • Skript "Alternative Searchbar" funktioniert seit Firefox 107 nicht mehr

    • grisu2099
    • 16. November 2022 um 19:46

    Aris hat hier eine neue Version des Skriptes veröffentlicht. Damit klappt wieder alles.

    Trotzdem natürlich Danke Sören Hentzschel .

  • Skript "Alternative Searchbar" funktioniert seit Firefox 107 nicht mehr

    • grisu2099
    • 16. November 2022 um 16:58

    Leider blicke ich nicht durch, an welcher Stelle ich die Änderungen im obigen Skript einfügen muß/soll. :rolleyes:

    Kann mir da jemand auf die Sprünge helfen?

  • Skript "Alternative Searchbar" funktioniert seit Firefox 107 nicht mehr

    • grisu2099
    • 16. November 2022 um 00:58

    Ich präzisiere mal: Der optische Teil funktioniert, aber die eigentliche Searchbar hat mit dem Skript keine Funktion. Sprich: Ich kann zwar einen Suchbegriff eingeben, aber es wird keine Suche durchgeführt.

    Deaktiviere ich das Skript, bekomme ich wieder Suchergebnisse angezeigt. :/

  • Skript "Alternative Searchbar" funktioniert seit Firefox 107 nicht mehr

    • grisu2099
    • 15. November 2022 um 22:24

    Das folgende Skript funktioniert seit Version 107 bei mir nicht mehr.

    Kann das jemand bestätigen, bzw. weiß jemand warum?

    JavaScript
    // 'Alternative search bar' script for Firefox 91+ by Aris
    //
    // Thanks to UndeadStar (aka BoomerangAide) for Fx 69+ improvements
    // https://github.com/Aris-t2/CustomJSforFx/issues/11
    //
    // Thanks to samehb (aka Sameh Barakat) for Fx 68-75+ improvements 
    // https://github.com/Aris-t2/CustomJSforFx/issues/11
    //
    // Thanks to anomiex for the setIcon workaround on Fx 77+
    // https://github.com/Aris-t2/CustomJSforFx/issues/33
    //
    // Idea based on 'search revert' script by '2002Andreas':
    // https://www.camp-firefox.de/forum/viewtopic.php?f=16&t=112673&start=2010#p1099758
    //
    // Initial "old search" script ported from old Firefox versions by Aris
    //
    //
    // Feature (not optional): search glass is always visible at search bars end (like with "old" search)
    // Feature (not optional): search button shows current search engines icon (like with "old" search)
    // Feature (not optional): search buttons dropmarker is always visible (like with "old" search)
    //
    // Option: clear search input after search
    // Option: revert to first search engine in list after search
    // Option: old search engine selection popup
    // Option: hide 'add engines' '+' indicator
    // Option: hide 'oneoff' search engines (engines at popups bottom)
    // Option: hide placeholder text 'Search'
    // Option: swap the icons of search engine button and go button
    // Option: show icons and search engine names instead of only icons
    // Option: select search engine by scrolling mouse wheel over search bars button
    
    // [!] Default browser feature: search engine can be changed inside default/modern popup by right-clicking
    //     search icon and selecting 'Set As Default Search Engine' menuitem.
    
    
    // Configuration area - start (all 'false' by default)
    var clear_searchbar_after_search = false; // clear input after search (true) or not (false)
    var revert_to_first_engine_after_search = false; // revert to first engine (true) or not (false)
    var old_search_engine_selection_popup = false; // show old search engine selection popup (true) or not (false)
    var select_engine_by_scrolling_over_button = false; // select search engine by scrolling mouse wheel over search bars button (true) or not (false)
    var select_engine_by_click_oneoffs_button = false; // select search engine by left-clicking search icon (true) or not (false)
    var hide_oneoff_search_engines = false; // hide 'one off' search engines (true) or not (false)
    var hide_addengines_plus_indicator = false; // hide add engines '+' sign (true) or not (false)
    var hide_placeholder = false; // hide placeholder (true) or not (false)
    var switch_glass_and_engine_icon = false; // swap icons of search engine button and go button (true) or not (false)
    var show_search_engine_names = false; // show search engine names (true) or not (false)
    var show_search_engine_names_with_scrollbar = false; // show search engine names with scrollbars (true) or not (false)
    var show_search_engine_names_with_scrollbar_height = '170px'; // higher values show more search engines
    var initialization_delay_value = 0; // some systems might require a higher value than '1' second (=1000ms) and on some even '0' is enough
    var searchsettingslabel = "Change Search Settings";
    // Configuration area - end
    
    var isInCustomize = 1; //start at 1 to set it once at startup
    
    Cu.import('resource://gre/modules/Services.jsm');
    
    var AltSearchbar = {
     init: async function() {
       await Services.search.wrappedJSObject.init();
    
       if (location != 'chrome://browser/content/browser.xhtml')
        return;
    
       window.removeEventListener("load", AltSearchbar.init, false);
    
       try {
           
        var searchbar = document.getElementById("searchbar");
        var appversion = parseInt(Services.appinfo.version);
    
        if(!old_search_engine_selection_popup)
          updateStyleSheet();
        
        if(hide_placeholder)
          hideSearchbarsPlaceholder();
    
        if(select_engine_by_scrolling_over_button)
          selectEngineByScrollingOverButton();
    
        if(old_search_engine_selection_popup)
          createOldSelectionPopup();
    
        if (select_engine_by_click_oneoffs_button)
          selectEngineByClickOneoffsButton();
    
        // select search engine by scrolling mouse wheel over search bars button
        function selectEngineByScrollingOverButton() {
          searchbar.addEventListener("DOMMouseScroll", (event) => {
            if (event.originalTarget.classList.contains("searchbar-search-button")) {
              searchbar.selectEngine(event, event.detail > 0);
            }
          }, true);
        };
    
        // left click on off select engine
        function selectEngineByClickOneoffsButton() {
            var searchoneoffs = searchbar.textbox.popup.oneOffButtons;
            searchoneoffs.container.addEventListener("click", (event) => {
                if (!(event instanceof KeyboardEvent) && (event.button == 0)) {
                    event.stopPropagation();
                    event.target.classList.add("search-one-offs-context-set-default");
                    searchoneoffs._contextEngine = event.target.engine;
                    searchoneoffs._on_command(event);
                    searchoneoffs._contextEngine = null;
                    // let contextEngine = event.target.engine;
                    // let currentEngine = searchbar.currentEngine;
                    // if (!searchoneoffs.getAttribute("includecurrentengine")) {
                    //     // Make the target button of the context menu reflect the current
                    //     // search engine first. Doing this as opposed to rebuilding all the
                    //     // one-off buttons avoids flicker.
                    //     let button = searchoneoffs._buttonForEngine(contextEngine);
                    //     button.id = searchoneoffs._buttonIDForEngine(currentEngine);
                    //     let uri = "chrome://browser/skin/search-engine-placeholder.png";
                    //     if (currentEngine.iconURI) {
                    //         uri = currentEngine.iconURI.spec;
                    //     }
                    //     button.setAttribute("image", uri);
                    //     button.setAttribute("tooltiptext", currentEngine.name);
                    //     button.engine = currentEngine;
                    // }
                    // searchbar.currentEngine = contextEngine;
                }
            }, true);
        };
        
        // hide placeholder
        function hideSearchbarsPlaceholder() {
          searchbar.getElementsByClassName('searchbar-textbox')[0].removeAttribute("placeholder");
        };
    
        function attachOldPopupToButton(e) {
            if(isInCustomize == 1) {
                setTimeout(function () { searchbar.getElementsByClassName("searchbar-search-button")[0].setAttribute("popup", "searchbuttonpopup"); }, initialization_delay_value);
            }
            if(isInCustomize > 0)
                isInCustomize--;
        }
    
        // old search selection popup
        async function createOldSelectionPopup() {
    
            searchbar.engines = await Services.search.getVisibleEngines();
            
            window.addEventListener("beforecustomization", function(e) { isInCustomize++; }, false);
            window.addEventListener("aftercustomization", attachOldPopupToButton, false);        
    
            // set new search engine
            searchbar.setNewSearchEngine = function(index) {
                searchbar.currentEngine = searchbar.engines[index];
                updateStyleSheet();
            };
    
            // create search popup
            searchbuttonpopup = document.createXULElement("menupopup");
            searchbuttonpopup.setAttribute("id", "searchbuttonpopup");
            searchbuttonpopup.setAttribute("width", searchbar.getBoundingClientRect().width - 6 );
            searchbuttonpopup.setAttribute("position", "after_start");
          
            try {
                
                var hidden_list = Services.prefs.getStringPref("browser.search.hiddenOneOffs");
                hidden_list =  hidden_list ? hidden_list.split(",") : [];                    
    
                for (var i = 0; i <= searchbar.engines.length - 1; ++i) {
                            
                    if(!hidden_list.includes(searchbar.engines[i].name)) {
                            
                        menuitem = document.createXULElement("menuitem");;
                        menuitem.setAttribute("label", searchbar.engines[i].name);
                        menuitem.setAttribute("tooltiptext", searchbar.engines[i].name);
                                menuitem.setAttribute("class", "menuitem-iconic searchbar-engine-menuitem menuitem-with-favicon");
                
                        if (searchbar.engines[i] == searchbar.currentEngine)
                                menuitem.setAttribute("selected", "true");
                
                        if (searchbar.engines[i].iconURI)
                            menuitem.setAttribute("image",searchbar.engines[i].iconURI.spec);
                                
                                menuitem.setAttribute("oncommand", "document.getElementById('searchbar').setNewSearchEngine("+i+")");
    
                                searchbuttonpopup.appendChild(menuitem);
                                
                            }
          
                        }
            
                        menuseparator_om = document.createXULElement("menuseparator");
                        searchbuttonpopup.appendChild(menuseparator_om);
    
                        menuitem_om = document.createXULElement("menuitem");
                        menuitem_om.setAttribute("label", searchsettingslabel);
                        menuitem_om.setAttribute("class", "open-engine-manager");
                        menuitem_om.setAttribute("oncommand", "openPreferences('search');");
                        searchbuttonpopup.appendChild(menuitem_om);    
    
                        updateStyleSheet();
            
            } catch(exc) {
              console.log("Exception AltSearchbar: " + exc);
            }
    
          document.getElementById("mainPopupSet").appendChild(searchbuttonpopup);
    
          // adjust popup width
          setTimeout(function(){
            document.getElementById('searchbuttonpopup').setAttribute("width", document.getElementById("searchbar").getBoundingClientRect().width);
          },1000);
    
          var observer_width = new MutationObserver(function(mutations,observer) {
            observer.disconnect();
            try {
              document.getElementById('searchbuttonpopup').setAttribute("width", document.getElementById("searchbar").getBoundingClientRect().width );
            } catch(e){}
            observer.observe(document.getElementById('search-container'), { attributes: true, attributeFilter: ['width'] });
            observer.observe(document.getElementById('main-window'), { attributes: true, attributeFilter: ['sizemode'] });
          });
    
          try {
            observer_width.observe(document.getElementById('search-container'), { attributes: true, attributeFilter: ['width'] });
            observer_width.observe(document.getElementById('main-window'), { attributes: true, attributeFilter: ['sizemode'] });
          } catch(e){}
          
          // restore "add search engine" menuitem
    
          // attach new popup to search bars search button
          try {
            attachOldPopupToButton();    
          }
          catch(e) {
              console.log("AltSearchbar: Failed to attach new popup to search bar search button");
          }
          
        // Refresh the script's search popup (searchbuttonpopup) with any changes made to search engines/options.
        async function updateEngines() {
        var i;
    
        try {
    
            searchbuttonpopup = document.getElementById("searchbuttonpopup");
    
            searchbar.engines = await Services.search.getVisibleEngines();
    
            try {
    
                while (searchbuttonpopup.childNodes[0].tagName.toLowerCase() != "menuseparator")
                    searchbuttonpopup.removeChild(searchbuttonpopup.firstChild);
    
                var separator = searchbuttonpopup.childNodes[0];
    
                var hidden_list = Services.prefs.getStringPref("browser.search.hiddenOneOffs");
                hidden_list = hidden_list ? hidden_list.split(",") : [];
    
                for (i = 0; i <= searchbar.engines.length - 1; ++i) {
    
                    if (!hidden_list.includes(searchbar.engines[i].name)) {
    
                        menuitem = document.createXULElement("menuitem");;
                        menuitem.setAttribute("label", searchbar.engines[i].name);
                        menuitem.setAttribute("class", "menuitem-iconic searchbar-engine-menuitem menuitem-with-favicon");
                        menuitem.setAttribute("tooltiptext", searchbar.engines[i].name);
    
                        if (searchbar.engines[i] == searchbar.currentEngine)
                            menuitem.setAttribute("selected", "true");
    
                        if (searchbar.engines[i].iconURI)
                            menuitem.setAttribute("image", searchbar.engines[i].iconURI.spec);
    
                        menuitem.setAttribute("oncommand", "document.getElementById('searchbar').setNewSearchEngine(" + i + ")");
    
                        searchbuttonpopup.insertBefore(menuitem, separator);
    
                    }
    
                }
    
                updateStyleSheet();
    
            } catch (exc) {
                console.log(exc);
            }
    
        } catch (exc) {
            console.log("update altbar exc: " + exc);
        }
    }
    
    // Used to observe modifications made to search engines. We are only interested in the addition and removal of engines.
    Services.obs.addObserver(function observer(subject, topic, data) {
        // If a search engine/option is added or removed, we need to refresh the script's popup. We use updateEngines() to do that.
        if (data == "engine-added" || data == "engine-removed" || data == "engine-changed") {
            updateEngines();
        }
    }, "browser-search-engine-modified");
    
    // Observe the enabling and disabling of search engines, and update the search popup.
    Services.prefs.addObserver("browser.search.hiddenOneOffs", function observer(subject, topic, data) {
       updateEngines();
    });
    
    // Used to create an add engine item and append it into the script's search popup (searchbuttonpopup). This is the option
    // that is displayed as "Add enginename" e.g. Add DuckDuckGo.
    function createAddEngineItem(e) {
            try {
    
                e.target.removeEventListener(e.type, arguments.callee);
    
                searchbuttonpopup = document.getElementById("searchbuttonpopup");
                
                while (searchbuttonpopup.lastChild.classList.contains("custom-addengine-item")) {
                    searchbuttonpopup.removeChild(searchbuttonpopup.lastChild);
                }
                
                setTimeout(function () { //setTimeout fix an issue where labels don't get displayed
                    
                    let native_popup_search_add_items_collection = document.getElementsByClassName("searchbar-engine-one-off-add-engine");
                    var native_popup_search_add_items = new Array();
                    
                    for(i = 0; i < native_popup_search_add_items_collection.length; i++) {
                        if(!native_popup_search_add_items_collection[i].parentElement.parentElement.parentElement.parentElement.hasAttribute("class")) {
                            native_popup_search_add_items.push(native_popup_search_add_items_collection[i]);
                        }
                    }
                    
                    if (native_popup_search_add_items.length != 0) {
    
                        if (searchbuttonpopup.lastChild.tagName.toLowerCase() != "menuseparator") {
                            searchbuttonpopup.appendChild(document.createXULElement("menuseparator"));
                            searchbuttonpopup.appendChild(document.createXULElement("menuseparator"));
                        }
    
                        for(i = 0; i < native_popup_search_add_items.length; i++) {
                            
                            menuitem = document.createXULElement("menuitem");
                            menuitem.setAttribute("label", native_popup_search_add_items[i].getAttribute("label"));
                            menuitem.setAttribute("class", "menuitem-iconic searchbar-engine-menuitem menuitem-with-favicon custom-addengine-item");
                            menuitem.setAttribute("tooltiptext", native_popup_search_add_items[i].getAttribute("label"));
                            menuitem.setAttribute("uri", native_popup_search_add_items[i].getAttribute("uri"));
                            menuitem.setAttribute("data-id", native_popup_search_add_items[i].id);
                            menuitem.setAttribute("oncommand", "document.getElementById(\"" + native_popup_search_add_items[i].id + "\").click();");
    
                            if (native_popup_search_add_items[i].hasAttribute("image"))
                                menuitem.setAttribute("image", native_popup_search_add_items[i].getAttribute("image"));
    
                            searchbuttonpopup.appendChild(menuitem);
    
                        };
    
                    } 
                    else {
                        while (searchbuttonpopup.lastChild.tagName.toLowerCase() == "menuseparator")
                            searchbuttonpopup.removeChild(searchbuttonpopup.lastChild);
                    }        
                
                }, 0 );
          
            }
            catch (exc) {
              console.log("custom addengine exc: " + exc);
            }
          }    
    
          searchbar.addEventListener("mousedown", (event) => {
            var defaultPopup = document.getElementById("PopupSearchAutoComplete"); // Browser's default search popup.
            var scriptPopup = document.getElementById("searchbuttonpopup");
            var addEngineItem = document.getElementsByClassName("custom-addengine-item")[0];
            var searchButton = document.getElementsByClassName("searchbar-search-button")[0];
    
            // hasAddEnginesAttribute == true means there is a search engine provided by the page, for us to add using "Add enginename."
            // You will see a green plus badge on the search button icon, if that is the case.
            var hasAddEnginesAttribute = searchButton.hasAttribute("addengines");
    
            // Skip clicks on the search button until searchbuttonpopup is available. Disable propagation, too.
            if (!scriptPopup) {
                event.stopPropagation();
                return;
            }
    
            defaultPopup.style.visibility = "visible";
    
            // If the user clicks on any element on the search bar except the search text.
            if (event.target.getAttribute("class") != "searchbar-textbox") {
    
                // In case the default search popup is shown, hide it.
                defaultPopup.hidePopup();
    
                // Propagation causes PopupSearchAutoComplete to be shown, which in turn causes search-add-engines to be populated.
                // We monitor the PopupSearchAutoComplete and after it is shown, we use createAddEngineItem() to create the add
                // engine item and populate the script's popup (searchbuttonpopup). Propagation causes PopupSearchAutoComplete to be 
                // displayed with searchbuttonpopup, at the same time (when the user clicks the search button). Displaying 
                // PopupSearchAutoComplete with every search button click is inefficient. We allow propagation only when it is needed, 
                // and we set the PopupSearchAutoComplete visibility to collapse, so we do not see it with the script's popup.
    
                // If there are no changes to be done to the searchbuttonpopup, go ahead and skip propagation.
                // If there is an engine to be added, and the engine item is already available on the script's popup, there are no changes.
                // If there is no engine to be added, and there is no engine item, that also means that there are no changes needed.
                // On the other hand, if hasAddEnginesAttribute and addEngineItem are not synchronized, we need to apply propagation
                // to refresh the searchbuttonpopup. We set the addEngineItem visibility to collapse, and allow propagation.
                if ((hasAddEnginesAttribute && addEngineItem && addEngineItem.hasAttribute("image") && document.getElementById(addEngineItem.getAttribute("data-id")) && gBrowser.currentURI.spec.includes(addEngineItem.getAttribute("uri").match(/.+:\/\/([^\/]+)\//)[1])) || (!hasAddEnginesAttribute && !addEngineItem))
                    event.stopPropagation();
                else {
                    defaultPopup.style.visibility = "collapse";
                    defaultPopup.addEventListener("popupshown", createAddEngineItem, false);
                }
            }
    
            /*searchbar.focus();*/
    
          }, true);
    
        }; //createOldSelectionPopup
        
        // doSearch function taken from Firefox 85+ internal 'searchbar.js' file and added modifications
        searchbar.doSearch = function(aData, aWhere, aEngine, aParams, isOneOff = false) {
          let textBox = this._textbox;
          let engine = aEngine || this.currentEngine;
    
          // Save the current value in the form history
          if (
            aData &&
            !PrivateBrowsingUtils.isWindowPrivate(window) &&
            this.FormHistory.enabled &&
            aData.length <=
              this.SearchSuggestionController.SEARCH_HISTORY_MAX_VALUE_LENGTH
          ) {
            this.FormHistory.update(
              {
                op: "bump",
                fieldname: textBox.getAttribute("autocompletesearchparam"),
                value: aData,
                source: engine.name,
              },
              {
                handleError(aError) {
                  Cu.reportError(
                    "Saving search to form history failed: " + aError.message
                  );
                },
              }
            );
          }
    
          let submission = engine.getSubmission(aData, null, "searchbar");
    
          // If we hit here, we come either from a one-off, a plain search or a suggestion.
          const details = {
            isOneOff,
            isSuggestion: !isOneOff && this.telemetrySelectedIndex != -1,
            url: submission.uri,
          };
    
          this.telemetrySelectedIndex = -1;
    
          BrowserSearchTelemetry.recordSearch(
            gBrowser.selectedBrowser,
            engine,
            "searchbar",
            details
          );
          // null parameter below specifies HTML response for search
          let params = {
            postData: submission.postData,
          };
          if (aParams) {
            for (let key in aParams) {
              params[key] = aParams[key];
            }
          }
          openTrustedLinkIn(submission.uri.spec, aWhere, params);
          
            if(clear_searchbar_after_search)
                this.value = '';
              
            if(revert_to_first_engine_after_search) {
                searchbar.currentEngine = searchbar.engines[0];
                updateStyleSheet();
            }
    
        };
        
        // Workaround for the deprecated setIcon funtion
        var oldUpdateDisplay = searchbar.updateDisplay;
        searchbar.updateDisplay = function() {
          oldUpdateDisplay.call(this);
          updateStyleSheet();
        };
        
        // main style sheet
        function updateStyleSheet() {
          var sss = Components.classes["@mozilla.org/content/style-sheet-service;1"].getService(Components.interfaces.nsIStyleSheetService);
    
          var hide_oneoff_search_engines_code = '';
          var show_search_engine_names_code = '';
          var show_search_engine_names_with_scrollbar_code = '';
          var hide_addengines_plus_indicator_code = '';
          var switch_glass_and_engine_icon_code = '';
    
          if(hide_oneoff_search_engines)
            hide_oneoff_search_engines_code=' \
              #PopupSearchAutoComplete .search-panel-header, \
              #PopupSearchAutoComplete .search-one-offs { \
                display: none !important; \
              } \
            ';
    
          if(hide_addengines_plus_indicator)
           hide_addengines_plus_indicator_code=' \
             .searchbar-search-button[addengines=true]::after { \
               visibility: hidden !important; \
             } \
           ';
        
          if(show_search_engine_names && !hide_oneoff_search_engines)
           show_search_engine_names_code=' \
            #PopupSearchAutoComplete .search-panel-one-offs .searchbar-engine-one-off-item { \
              appearance: none !important; \
              min-width: 0 !important; \
              width: 100% !important; \
              border: unset !important; \
              height: 18px !important; \
              background-image: unset !important; \
              padding-inline-start: 2px !important; \
              margin-inline-start: 5px !important; \
              margin-inline-end: 0 !important; \
            } \
            #PopupSearchAutoComplete .search-panel-one-offs .searchbar-engine-one-off-item::after { \
              appearance: none !important; \
              display: inline !important; /* Fx102ESR compatibility - better flex or block on Fx 106*/ \
              content: attr(tooltiptext) !important; \
              position: relative !important; \
              padding-inline-start: 6px !important; \
              min-width: 0 !important; \
              width: 100% !important; \
              white-space: nowrap !important; \
              top: -3px !important; \
              bottom: 4px !important; \
            } \
            #PopupSearchAutoComplete .search-panel-one-offs { \
              min-height: unset !important; \
              height: unset !important; \
              max-height: unset !important; \
              line-height: unset !important; \
            } \
            #PopupSearchAutoComplete .search-panel-one-offs .searchbar-engine-one-off-item .button-box { \
              display: inline !important; \
            } \
            #PopupSearchAutoComplete  .search-setting-button { \
              z-index: 1000 !important; \
            } \
            #PopupSearchAutoComplete .search-panel-one-offs .searchbar-engine-one-off-item .button-box .button-icon { \
              margin-top: 1px !important; \
              padding-inline-start: 0px !important; \
              margin-inline-start: 0px !important; \
              position: relative !important; \
            } \
               ';
    
          if(show_search_engine_names_with_scrollbar && !hide_oneoff_search_engines && show_search_engine_names)
           show_search_engine_names_with_scrollbar_code=' \
            #PopupSearchAutoComplete .search-one-offs { \
              height: '+show_search_engine_names_with_scrollbar_height+' !important; \
              max-height: '+show_search_engine_names_with_scrollbar_height+' !important; \
              overflow-y: scroll !important; \
              overflow-x: hidden !important; \
            } \
            \
            ';
    
          if(switch_glass_and_engine_icon)
           switch_glass_and_engine_icon_code=' \
            .search-go-button { \
              list-style-image: url('+document.getElementById("searchbar").currentEngine.iconURI.spec+') !important; \
              transform: scaleX(1) !important; \
            } \
            .searchbar-search-button .searchbar-search-icon { \
              list-style-image: url("chrome://global/skin/icons/search-glass.svg") !important; \
              -moz-context-properties: fill, fill-opacity !important; \
              fill-opacity: 1.0 !important; \
              fill: #3683ba !important; \
            } \
            .searchbar-search-button:hover .searchbar-search-icon { \
              fill: #1d518c !important; \
            } \
            .searchbar-search-button:active .searchbar-search-icon { \
              fill: #00095d !important; \
            } \
            \
            ';
    
          var uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent(' \
            \
            #search-container{ min-width: 20px !important } \
            #searchbuttonpopup {\
             margin-inline-start: -1px; \
            } \
            .searchbar-search-button .searchbar-search-icon { \
              list-style-image: url('+document.getElementById("searchbar").currentEngine.iconURI.spec+') !important; \
            } \
            .search-go-button { \
              list-style-image: url("chrome://global/skin/icons/search-glass.svg") !important; \
              -moz-context-properties: fill, fill-opacity !important; \
              fill-opacity: 1.0 !important; \
              fill: #3683ba !important; \
              transform: scaleX(-1) !important; \
              background: unset !important; \
              margin-inline-end: 4px !important; \
            } \
            .search-go-button:hover { \
              fill: #1d518c !important; \
            } \
            .search-go-button:active { \
              fill: #00095d !important; \
            } \
            .search-go-button[hidden="true"] { \
              display: block !important; \
            } \
            .searchbar-search-button[addengines=true] > .searchbar-search-icon-overlay, \
            .searchbar-search-button:not([addengines=true]) > .searchbar-search-icon-overlay { \
              list-style-image: url("chrome://global/skin/icons/arrow-down-12.svg") !important; \
              -moz-context-properties: fill !important; \
              margin-inline-start: -6px !important; \
              margin-inline-end: 2px !important; \
              width: 11px !important; \
              height: 11px !important; \
            } \
            .searchbar-search-button[addengines=true] > .searchbar-search-icon-overlay { \
              margin-top: 0px !important; \
            } \
            .searchbar-search-button[addengines=true]::after { \
              content: " " !important; \
              background: url("chrome://browser/skin/search-indicator-badge-add.svg") center no-repeat !important; \
              display: block !important; \
              visibility: visible !important; \
              width: 11px !important; \
              height: 11px !important; \
              margin-inline-start: 18px !important; \
              margin-top: -11px !important; \
              position: absolute !important; \
            } \
            .searchbar-search-button[addengines=true] > .searchbar-search-icon-overlay { \
              visibility: visible !important; \
            } \
             \
            .custom-addengine-item > .menu-iconic-left::after { \
              position: absolute !important; \
              display: block; !important; \
              content: "" !important; \
              background: url("chrome://browser/skin/search-indicator-badge-add.svg") no-repeat center !important; \
              box-shadow: none  !important; \
              margin-top: -12px !important; \
              margin-inline-start: -4px !important; \
              width: 11px; !important; \
              height: 11px; !important; \
              min-width: 11px; !important; \
              min-height: 11px; !important; \
            } \
            '+hide_addengines_plus_indicator_code+' \
            '+hide_oneoff_search_engines_code+' \
            '+show_search_engine_names_code+' \
            '+show_search_engine_names_with_scrollbar_code+' \
            '+switch_glass_and_engine_icon_code+' \
            \
          '), null, null);
    
          // remove old style sheet
          if (sss.sheetRegistered(uri,sss.AGENT_SHEET)) {
            sss.unregisterSheet(uri,sss.AGENT_SHEET);
          }
    
          sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET);
    
        };
    
       } catch(e) {} 
    
     }
    }
    
    /* if search is not hidden on current window, wait for searchbar loading and then initialize 'alternative search' (with delay) */
    if(!document.firstElementChild.hasAttribute("chromehidden") || !document.firstElementChild.getAttribute("chromehidden").includes("toolbar")) {
        if (document.readyState === "complete") {
            setTimeout(AltSearchbar.init, initialization_delay_value);
        }
        else {
            window.addEventListener("load", AltSearchbar.init, false);
        }
    }
    Alles anzeigen
  • Lesezeichen Symbolleiste mehrzeilig

    • grisu2099
    • 15. November 2022 um 17:58

    Dieses hier:

    JavaScript
    //    Farbige, abgerundete Scrollbalken mit Buttons :)
    
    "use strict";
    
    /* Firefox 57+ userChrome.js tweaks - SCROLLBARS ********************************************** */
    /* by Aris (aris-addons@gmx.net)*************************************************************** */
    /* Github: https://github.com/Aris-t2/CustomJSforFx/blob/master/scripts/custom_scrollbars.uc.js */
    /* ******************************************************************************************** */
    
    /* ******************************************************************************************** */
    /* Custom Scrollbars for Firefox ************************************************************** */
    /* version 1.0.4 ****************************************************************************** */
    /* ******************************************************************************************** */
    
    /* ***********************************************************************************************
     README
     
     ENABLING options > set var to true
     DISABLING options > set var to false
     Modifying appearance > change values
     - color - name: red, blue, transparent / hex code: #33CCFF, #FFF
     - color - rgb(a): rgba(0,0,255,0.8) / hsl(a): hsla(240,100%,50%,0.8)
     - numbers: 1, 2, 3 ... 10, 11, 12 ...
     - opacity: 0.0 to 1.0 e.g. 1.4, 1,75
     - gradients: linear-gradient(direction, color, color, color)
     - gradients example: linear-gradient(to right, blue, #33CCFF, rgba(0,0,255,0.8))
     - unsettings predefined gradients: transparent,rgba(255,255,255,0.5),transparent -> transparent,rgba(255,255,255,0.0),transparent
     - button size with arrow (descriptions for vertical scrollbars - analogous for horizontal scrollbars)
     -- 1: space above arrow = arrow height
     -- 1.5: space above arrow = 0.5 * arrow height
     -- 2: no space above arrow
     
     NOTE
     - This is a tiny collection of scrollbar tweaks, not a port of 'NewScrollbars' add-on!
     - Small scrollbar width values will corrupt some parts of the ui!
     
    *********************************************************************************************** */
    
    // GENERAL SCROLLBAR SETTINGS
    var hide_scrollbars = false; // default: hide_scrollbars = false
    var hide_scrollbar_buttons = false; // default: hide_scrollbar_buttons = false
    var custom_scrollbar_size = true; // default: custom_scrollbar_size = false
    var custom_scrollbar_size_value = 15; // in px // default: custom_scrollbar_size_value = 17
    var custom_scrollbar_opacity = false; // default: custom_scrollbar_opacity = false
    var custom_opacity_value = "1.0"; // default: custom_opacity_value = "1.0"
    // floating scrollbars
    var enable_scrollbars_on_top_of_webcontent = false; // default: enable_scrollbars_on_top_of_webcontent = false // uses 'custom_scrollbar_size_value' inside its code
    // custom scrollbars
    var enable_custom_scrollbars = true; // default: enable_custom_scrollbars = true
    
    // CUSTOM SCROLLBAR SETTINGS ("custom_scrollbar_" --> "cs_")
    var cs_thumb_border = 1; // in px // default: cs_thumb_border = 0
    var cs_thumb_roundness = 5; // in px // default: cs_thumb_roundness = 0
    var cs_buttons_roundness = 0; // in px // default: cs_buttons_roundness = 0
    var cs_buttons_as_arrows = false; // default: cs_buttons_as_arrows = false // uses 'custom_scrollbar_size_value' inside its code
    var cs_arrows_on_buttons = true; // default: cs_arrows_on_buttons = true // uses 'custom_scrollbar_size_value' inside its code
    // button size with arrow - 1: space above arrow = arrow height // 1.5: space above arrow = 0.5 * arrow height // 2: no space above arrow
    var cs_arrows_on_buttons_buttons_size = 1.5; // default: cs_arrows_on_buttons_buttons_size = 1.5
    // 'flat' scrollbars
    var cs_ignore_color_gradients = true; // default: cs_ignore_color_gradients = false
    
    // CUSTOM SCROLLBAR COLORS/GRADIENTS
    // - background
    var cs_background_color = "#171717"; // default: cs_background_color = "#DDDDDD"
    //var cs_background_image_vertical = "linear-gradient(to right,transparent,rgba(255,255,255,0.5),transparent)"; // default: cs_background_image_vertical = "unset"
    var cs_background_image_vertical = "unset"; // default: cs_background_image_vertical = "unset"
    //var cs_background_image_horizontal = "linear-gradient(to bottom,transparent,rgba(255,255,255,0.5),transparent)"; // default: cs_background_image_horizontal = "unset"
    var cs_background_image_horizontal = "unset"; // default: cs_background_image_horizontal = "unset"
    // - corner
    var cs_corner_background_color = "#DDDDDD"; // default: cs_corner_background_color = "#DDDDDD"
    var cs_corner_background_image = "linear-gradient(45deg,transparent 30%,rgba(255,255,255,0.5) 50%,transparent 70%),linear-gradient(-45deg,transparent 30%,rgba(255,255,255,0.5) 50%,transparent 70%)"; // default: cs_corner_background_image = "unset"
    // - thumb/slider
    var cs_thumb_color = "rgb(80,80,80)"; // default: cs_thumb_color = "#33CCFF"
    var cs_thumb_image_vertical = "linear-gradient(to right,transparent,rgba(255,255,255,0.5),transparent)"; // default: cs_thumb_image_vertical = "unset"
    var cs_thumb_image_horizontal = "linear-gradient(to bottom,transparent,rgba(255,255,255,0.5),transparent)"; // default: cs_thumb_image_horizontal = "unset"
    var cs_thumb_hover_color = "rgb(50,50,52"; // default: cs_thumb_hover_color = "#66FFFF"
    var cs_thumb_hover_image_vertical = "linear-gradient(to right,transparent,rgba(255,255,255,0.5),transparent)"; // default: cs_thumb_hover_image_vertical = "unset"
    var cs_thumb_hover_image_horizontal = "linear-gradient(to bottom,transparent,rgba(255,255,255,0.5),transparent)"; // default: cs_thumb_hover_image_horizontal = "unset"
    var cs_thumb_border_color = "rgb(0,200,0)"; // default: cs_thumb_border_color = "#33CCFF"
    // - buttons
    var cs_buttons_color = "rgb(0,200,0)"; // default: cs_buttons_color = "#66FFFF"
    var cs_buttons_image_vertical = "linear-gradient(to right,transparent,rgba(255,255,255,0.5),transparent)"; // default: cs_buttons_image_vertical = "unset"
    var cs_buttons_image_horizontal = "linear-gradient(to bottom,transparent,rgba(255,255,255,0.5),transparent)"; // default: cs_buttons_image_horizontal = "unset"
    var cs_buttons_hover_color = "green"; // default: cs_buttons_hover_color = "#33CCFF"
    var cs_buttons_hover_image_vertical = "linear-gradient(to right,transparent,rgba(255,255,255,0.5),transparent)"; // default: cs_buttons_hover_image_vertical = "unset"
    var cs_buttons_hover_image_horizontal = "linear-gradient(to bottom,transparent,rgba(255,255,255,0.5),transparent)"; // default: cs_buttons_hover_image_horizontal = "unset"
    // - button arrows
    var cs_arrows_on_buttons_color = "green"; // default: cs_arrows_on_buttons_color = "#33CCFF"
    var cs_arrows_on_buttons_hover_color = "red"; // default: cs_arrows_on_buttons_hover_color = "#66FFFF"
    
    // unset background image color gradients -> flat scrollbars
    if(cs_ignore_color_gradients==true)
        cs_background_image_vertical
        =cs_background_image_horizontal
        =cs_corner_background_image=cs_thumb_image_vertical
        =cs_thumb_image_horizontal
        =cs_thumb_hover_image_vertical
        =cs_thumb_hover_image_horizontal
        =cs_buttons_image_vertical
        =cs_buttons_image_horizontal
        =cs_buttons_hover_image_vertical
        =cs_buttons_hover_image_horizontal
        ="unset";
    
    /* ******************************************************************************************** */
    /* ******************************************************************************************** */
    /* ******************************************************************************************** */
    
    
    // Scrollbar code
    
    Components.utils.import("resource://gre/modules/Services.jsm");
    var ss =  Components.classes["@mozilla.org/content/style-sheet-service;1"].getService(Components.interfaces.nsIStyleSheetService);
    
    var custom_scrollbars = {
    
        init: function() {
    
        var uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent('\
        \
        @namespace html url("http://www.w3.org/1999/xhtml");\
        \
        scrollbar, scrollcorner, scrollbar thumb, scrollbar scrollbarbutton {\
          -moz-appearance: none !important;\
        }\
        scrollbar {\
          background-color: '+cs_background_color+' !important;\
        }\
        scrollbar[orient="vertical"] {\
          background-image: '+cs_background_image_vertical+' !important;\
        }\
        scrollbar[orient="horizontal"] {\
          background-image: '+cs_background_image_horizontal+' !important;\
        }\
        scrollcorner {\
          background-color: '+cs_corner_background_color+' !important;\
          background-image: '+cs_corner_background_image+' !important;\
        }\
        scrollbar thumb {\
          background-color: '+cs_thumb_color+' !important;\
          border-radius: '+cs_thumb_roundness+'px !important;\
          border: '+cs_thumb_border+'px solid '+cs_thumb_border_color+' !important;\
        }\
        scrollbar thumb[orient="vertical"] {\
          background-image: '+cs_thumb_image_vertical+' !important;\
        }\
        scrollbar thumb[orient="horizontal"] {\
          background-image: '+cs_thumb_image_horizontal+' !important;\
        }\
        scrollbar thumb:hover, scrollbar thumb:active {\
          background-color: '+cs_thumb_hover_color+' !important;\
        }\
        scrollbar thumb[orient="vertical"]:hover, scrollbar thumb[orient="vertical"]:active {\
          background-image: '+cs_thumb_hover_image_vertical+' !important;\
        }\
        scrollbar thumb[orient="horizontal"]:hover, scrollbar thumb[orient="horizontal"]:active {\
          background-image: '+cs_thumb_hover_image_horizontal+' !important;\
        }\
        scrollbar scrollbarbutton {\
          background-color: '+cs_buttons_color+' !important;\
          border-radius: '+cs_buttons_roundness+'px !important;\
        }\
        scrollbar[orient="vertical"] scrollbarbutton {\
          background-image: '+cs_buttons_image_vertical+' !important;\
        }\
        scrollbar[orient="horizontal"] scrollbarbutton {\
          background-image: '+cs_buttons_image_horizontal+' !important;\
        }\
        scrollbar scrollbarbutton:hover {\
          background-color: '+cs_buttons_hover_color+' !important;\
        }\
        scrollbar[orient="vertical"] scrollbarbutton:hover {\
          background-image: '+cs_buttons_hover_image_vertical+' !important;\
        }\
        scrollbar[orient="horizontal"] scrollbarbutton:hover {\
          background-image: '+cs_buttons_hover_image_horizontal+' !important;\
        }\
        '), null, null);
    
        ss.loadAndRegisterSheet(uri, ss.AGENT_SHEET);
    
        }
    };
    
    var cs_scrollbars_scrollbar_button_arrows = {
    
      init: function() {
    
      var uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent('\
        \
        @namespace html url("http://www.w3.org/1999/xhtml");\
        \
        scrollbar scrollbarbutton, \
        scrollbar[orient="vertical"] scrollbarbutton,\
        scrollbar[orient="horizontal"] scrollbarbutton, \
        scrollbar[orient="vertical"] scrollbarbutton:hover,\
        scrollbar[orient="horizontal"] scrollbarbutton:hover {\
          background-color: unset !important;\
          background-image: unset !important;\
          border-radius: 0px !important;\
        }\
        scrollbar[orient="vertical"] > scrollbarbutton {\
          min-height: '+(custom_scrollbar_size_value/cs_arrows_on_buttons_buttons_size)+'px !important;\
          height: '+(custom_scrollbar_size_value/cs_arrows_on_buttons_buttons_size)+'px !important;\
          max-height: '+(custom_scrollbar_size_value/cs_arrows_on_buttons_buttons_size)+'px !important;\
          min-width: '+custom_scrollbar_size_value+'px !important;\
          width: '+custom_scrollbar_size_value+'px !important;\
          max-width: '+custom_scrollbar_size_value+'px !important;\
        }\
        scrollbar[orient="horizontal"] > scrollbarbutton {\
          min-width: '+(custom_scrollbar_size_value/cs_arrows_on_buttons_buttons_size)+'px !important;\
          width: '+(custom_scrollbar_size_value/cs_arrows_on_buttons_buttons_size)+'px !important;\
          max-width: '+(custom_scrollbar_size_value/cs_arrows_on_buttons_buttons_size)+'px !important;\
          min-height: '+custom_scrollbar_size_value+'px !important;\
          height: '+custom_scrollbar_size_value+'px !important;\
          max-height: '+custom_scrollbar_size_value+'px !important;\
        }\
        scrollbar[orient="vertical"] > scrollbarbutton[type="decrement"] {\
          border-left: '+(custom_scrollbar_size_value/2)+'px solid transparent !important;\
          border-right: '+(custom_scrollbar_size_value/2)+'px solid transparent !important;\
          border-bottom: '+(custom_scrollbar_size_value/2)+'px solid '+cs_buttons_color+' !important;\
        }\
        scrollbar[orient="vertical"] > scrollbarbutton[type="decrement"]:hover {\
          border-bottom: '+(custom_scrollbar_size_value/2)+'px solid '+cs_buttons_hover_color+' !important;\
        }\
        scrollbar[orient="vertical"] > scrollbarbutton[type="increment"] {\
          border-left: '+(custom_scrollbar_size_value/2)+'px solid transparent !important;\
          border-right: '+(custom_scrollbar_size_value/2)+'px solid transparent !important;\
          border-top: '+(custom_scrollbar_size_value/2)+'px solid '+cs_buttons_color+' !important;\
        }\
        scrollbar[orient="vertical"] > scrollbarbutton[type="increment"]:hover {\
          border-top: '+(custom_scrollbar_size_value/2)+'px solid '+cs_buttons_hover_color+' !important;\
        }\
        scrollbar[orient="horizontal"] > scrollbarbutton[type="decrement"] {\
          border-top: '+(custom_scrollbar_size_value/2)+'px solid transparent !important;\
          border-bottom: '+(custom_scrollbar_size_value/2)+'px solid transparent !important;\
          border-right: '+(custom_scrollbar_size_value/2)+'px solid '+cs_buttons_color+' !important;\
        }\
        scrollbar[orient="horizontal"] > scrollbarbutton[type="decrement"]:hover {\
          border-right: '+(custom_scrollbar_size_value/2)+'px solid '+cs_buttons_hover_color+' !important;\
        }\
        scrollbar[orient="horizontal"] > scrollbarbutton[type="increment"] {\
          border-top: '+(custom_scrollbar_size_value/2)+'px solid transparent !important;\
          border-bottom: '+(custom_scrollbar_size_value/2)+'px solid transparent !important;\
          border-left: '+(custom_scrollbar_size_value/2)+'px solid '+cs_buttons_color+' !important;\
        }\
        scrollbar[orient="horizontal"] > scrollbarbutton[type="increment"]:hover {\
          border-left: '+(custom_scrollbar_size_value/2)+'px solid '+cs_buttons_hover_color+' !important;\
        }\
        \
      '), null, null);
    
      ss.loadAndRegisterSheet(uri, ss.AGENT_SHEET);
    
      }
    };
    
    var cs_scrollbars_arrows_on_buttons = {
    
      init: function() {
    
      var uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent('\
        \
        @namespace html url("http://www.w3.org/1999/xhtml");\
        \
        scrollbar scrollbarbutton, \
        scrollbar[orient="vertical"] scrollbarbutton,\
        scrollbar[orient="horizontal"] scrollbarbutton, \
        scrollbar[orient="vertical"] scrollbarbutton:hover,\
        scrollbar[orient="horizontal"] scrollbarbutton:hover {\
          border-radius: 0px !important;\
        }\
        \
        scrollbar[orient="vertical"] > scrollbarbutton {\
          min-height: '+(custom_scrollbar_size_value/cs_arrows_on_buttons_buttons_size)+'px !important;\
          height: '+(custom_scrollbar_size_value/cs_arrows_on_buttons_buttons_size)+'px !important;\
          max-height: '+(custom_scrollbar_size_value/cs_arrows_on_buttons_buttons_size)+'px !important;\
          min-width: '+custom_scrollbar_size_value+'px !important;\
          width: '+custom_scrollbar_size_value+'px !important;\
          max-width: '+custom_scrollbar_size_value+'px !important;\
        }\
        scrollbar[orient="horizontal"] > scrollbarbutton {\
          min-width: '+(custom_scrollbar_size_value/cs_arrows_on_buttons_buttons_size)+'px !important;\
          width: '+(custom_scrollbar_size_value/cs_arrows_on_buttons_buttons_size)+'px !important;\
          max-width: '+(custom_scrollbar_size_value/cs_arrows_on_buttons_buttons_size)+'px !important;\
          min-height: '+custom_scrollbar_size_value+'px !important;\
          height: '+custom_scrollbar_size_value+'px !important;\
          max-height: '+custom_scrollbar_size_value+'px !important;\
        }\
        scrollbar[orient="vertical"] > scrollbarbutton[type="decrement"] {\
          border-left: '+(custom_scrollbar_size_value/2)+'px solid transparent !important;\
          border-right: '+(custom_scrollbar_size_value/2)+'px solid transparent !important;\
          border-bottom: '+(custom_scrollbar_size_value/2)+'px solid '+cs_arrows_on_buttons_color+' !important;\
        }\
        scrollbar[orient="vertical"] > scrollbarbutton[type="decrement"]:hover {\
          border-bottom: '+(custom_scrollbar_size_value/2)+'px solid '+cs_arrows_on_buttons_hover_color+' !important;\
        }\
        scrollbar[orient="vertical"] > scrollbarbutton[type="increment"] {\
          border-left: '+(custom_scrollbar_size_value/2)+'px solid transparent !important;\
          border-right: '+(custom_scrollbar_size_value/2)+'px solid transparent !important;\
          border-top: '+(custom_scrollbar_size_value/2)+'px solid '+cs_arrows_on_buttons_color+' !important;\
        }\
        scrollbar[orient="vertical"] > scrollbarbutton[type="increment"]:hover {\
          border-top: '+(custom_scrollbar_size_value/2)+'px solid '+cs_arrows_on_buttons_hover_color+' !important;\
        }\
        scrollbar[orient="horizontal"] > scrollbarbutton[type="decrement"] {\
          border-top: '+(custom_scrollbar_size_value/2)+'px solid transparent !important;\
          border-bottom: '+(custom_scrollbar_size_value/2)+'px solid transparent !important;\
          border-right: '+(custom_scrollbar_size_value/2)+'px solid '+cs_arrows_on_buttons_color+' !important;\
        }\
        scrollbar[orient="horizontal"] > scrollbarbutton[type="decrement"]:hover {\
          border-right: '+(custom_scrollbar_size_value/2)+'px solid '+cs_arrows_on_buttons_hover_color+' !important;\
        }\
        scrollbar[orient="horizontal"] > scrollbarbutton[type="increment"] {\
          border-top: '+(custom_scrollbar_size_value/2)+'px solid transparent !important;\
          border-bottom: '+(custom_scrollbar_size_value/2)+'px solid transparent !important;\
          border-left: '+(custom_scrollbar_size_value/2)+'px solid '+cs_arrows_on_buttons_color+' !important;\
        }\
        scrollbar[orient="horizontal"] > scrollbarbutton[type="increment"]:hover {\
          border-left: '+(custom_scrollbar_size_value/2)+'px solid '+cs_arrows_on_buttons_hover_color+' !important;\
        }\
        \
      '), null, null);
    
      ss.loadAndRegisterSheet(uri, ss.AGENT_SHEET);
    
      }
    };
    
    var scrollbar_buttons = {
    
      init: function() {
    
      var uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent('\
        \
        @namespace html url("http://www.w3.org/1999/xhtml");\
        \
        scrollbar scrollbarbutton {\
          opacity: 0 !important;\
        }\
        scrollbar[orient="vertical"] scrollbarbutton {\
          min-height: 1px !important;\
          height: 1px !important;\
          max-height: 1px !important;\
        }\
        scrollbar[orient="horizontal"] scrollbarbutton {\
          min-width: 1px !important;\
          width: 1px !important;\
          max-width: 1px !important;\
        }\
        \
      '), null, null);
    
      ss.loadAndRegisterSheet(uri, ss.AGENT_SHEET);
    
      }
    };
    
    var scrollbar_size = {
    
      init: function() {
    
      var uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent('\
        \
        @namespace html url("http://www.w3.org/1999/xhtml");\
        \
        scrollbar[orient="vertical"] scrollbarbutton {\
          min-width: 0 !important;\
          width: '+custom_scrollbar_size_value+'px !important;\
          max-width: '+custom_scrollbar_size_value+'px !important;\
        }\
        scrollbar[orient="horizontal"] scrollbarbutton {\
          min-height: 0 !important;\
          height: '+custom_scrollbar_size_value+'px !important;\
          max-height: '+custom_scrollbar_size_value+'px !important;\
        }\
        \
      '), null, null);
    
      ss.loadAndRegisterSheet(uri, ss.AGENT_SHEET);
    
      }
    };
    
    var floating_scrollbars = {
    
      init: function() {
    
      var uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent('\
        \
        @namespace html url("http://www.w3.org/1999/xhtml");\
        \
        scrollbar {\
          position: relative !important;\
          z-index: 1000000000 !important;\
        }\
        scrollbar[orient="vertical"],\
        scrollbar[orient="horizontal"],\
        scrollbar, scrollcorner {\
          background-color: transparent !important; \
          background-image: unset !important; \
        }\
        scrollbar[orient="vertical"] {\
          -moz-margin-start: -'+custom_scrollbar_size_value+'px !important;\
          width: '+custom_scrollbar_size_value+'px !important;\
        }\
        scrollbar[orient="horizontal"] {\
          margin-top: -'+custom_scrollbar_size_value+'px !important;\
          height: '+custom_scrollbar_size_value+'px !important;\
        }\
        \
      '), null, null);
    
      ss.loadAndRegisterSheet(uri, ss.AGENT_SHEET);
    
      }
    };
    
    var scrollbar_opacity = {
    
      init: function() {
    
      var uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent('\
        \
        @namespace html url("http://www.w3.org/1999/xhtml");\
        \
        scrollbar {\
          opacity: '+custom_opacity_value+' !important;\
        }\
        \
      '), null, null);
    
      ss.loadAndRegisterSheet(uri, ss.AGENT_SHEET);
    
      }
    };
    
    var remove_scrollbars = {
    
      init: function() {
    
      var uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent('\
        \
        @namespace html url("http://www.w3.org/1999/xhtml");\
        \
        scrollbar, scrollcorner {\
          display: none !important;\
          visibility: collapse !important;\
        }\
        \
      '), null, null);
    
      ss.loadAndRegisterSheet(uri, ss.AGENT_SHEET);
    
      }
    };
    
    // enable settings as configured above
    if(enable_custom_scrollbars==true) custom_scrollbars.init();
    if(cs_buttons_as_arrows==true && hide_scrollbars==false) cs_scrollbars_scrollbar_button_arrows.init();
    if(cs_arrows_on_buttons==true && cs_buttons_as_arrows==false && hide_scrollbars==false) cs_scrollbars_arrows_on_buttons.init();
    if(hide_scrollbar_buttons==true) scrollbar_buttons.init();
    if(custom_scrollbar_size==true) scrollbar_size.init();
    if(enable_scrollbars_on_top_of_webcontent==true) floating_scrollbars.init();
    if(custom_scrollbar_opacity==true) scrollbar_opacity.init();
    if(hide_scrollbars==true) remove_scrollbars.init();
    Alles anzeigen
  • Befehl #PersonalToolbar geht nicht mehr richtig

    • grisu2099
    • 15. November 2022 um 17:57

    Dann schreib das doch nächstes Mal gleich.

    Ein Screenshot wäre immer noch hilfreich... ;)

  • Befehl #PersonalToolbar geht nicht mehr richtig

    • grisu2099
    • 15. November 2022 um 17:40
    Zitat von firefox online

    Zieht sich meine #PersonalToolbar leiste sehr nach unten

    Ein Screenshot wäre hilfreich...

    P.S.: Es gibt keine Firefox-Version mit Namen "neuste". Gib bitte die korrekte Version an...

  • Lesezeichen Symbolleiste mehrzeilig

    • grisu2099
    • 15. November 2022 um 17:40
    Zitat von BrokenHeart

    Was mich beim Screenshot von black10 etwas irritiert, ist die Position der Scrollbar,

    Deswegen bin ich auf das Skript als Auslöser gekommen, weil bei mir die Scrollbar an der gleichen Position war... ;)

Unterstütze uns!

Jährlich (2025)

94,2 %

94,2% (612,48 von 650 EUR)

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