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

Beiträge von milupo

  • Downloadstatus bei jedem Download automatisch anzeigen?

    • milupo
    • 14. Januar 2020 um 21:22

    Hier beim Autor des Skripts ist sogar noch eine aktuellere Version:

    https://github.com/alice0775/user…tusModoki.uc.js

    Es gibt noch eine CSS-Datei dazu:

    https://github.com/alice0775/user…odoki.uc.js.css

  • Downloadstatus bei jedem Download automatisch anzeigen?

    • milupo
    • 14. Januar 2020 um 21:03

    Abendstern2010 Die von dir verlinkte Version ist 6 Jahre alt. Ich habe hier aber eine Version, die im Nightly noch funktioniert.

    JavaScript
    // ==UserScript==
    // @name           ucjsDownloadsStatusModoki.uc.js
    // @namespace      http://space.geocities.yahoo.co.jp/gl/alice0775
    // @description    Downloads Status Modoki
    // @include        main
    // @compatibility  Firefox 71+
    // @author         Alice0775
    // @note           ucjsDownloadsStatusModoki.uc.js.css muss über die userChrome.css Datei geladen werden
    // @version        2019/10/20 12:30 workaround Bug 1497200: Apply Meta CSP to about:downloads, Bug 1513325 - Remove textbox binding
    // @version        2019/09/08 19:30 fix scrollbox
    // @version        2019/05/21 08:30 fix 69.0a1 Bug 1551320 - Replace all createElement calls in XUL documents with createXULElement
    // @version        2018/10/27 12:00 fix for 64+
    // @version        2018/06/12 21:00 fix for private window mode
    // @version        2018/06/07 12:00 fix file name for history
    // @version        2018/02/10 12:00 try catch error when DO_NOT_DELETE_HISTORY = true
    // @version        2017/12/10 12:00 fix error when DO_NOT_DELETE_HISTORY = true
    // @version        2017/12/10 12:00 remove workaround Bug 1279329. Disable btn while clear list is doing, close button styling for 57.
    // @version        2016/06/10 12:00 modify style independent of font-family
    // @version        2016/06/10 07:00 modify style of close button, fix typo
    // @version        2016/06/10 00:00 Workaround Bug 1279329. adjust some padding
    // @version        2015/05/08 00:00 remove padding due to Bug 1160734
    // @version        2014/03/31 00:00 fix for browser.download.manager.showWhenStarting
    // @version        2013/12/22 13:00 chromehidden
    // @version        2013/12/19 17:10 rename REMEMBERHISTOTY to DO_NOT_DELETE_HISTORY
    // @version        2013/12/16 23:28 fixed initialize numDls
    // @version        2013/12/16 23:24 open only download added
    // @version        2013/12/16 23:10 open only download started
    // @version        2013/12/16 21:20 modify css Windows7 Aero
    // @version        2013/12/16 21:00 modify css
    // @version        2013/12/16 19:30 add autocheck false
    // @version        2013/12/16 18:31 fix pref name
    // @version        2013/12/16 18:30
    // @note
    // ==/UserScript== 
    var ucjsDownloadsStatusModoki = {
      _summary: null,
      _list: null,
    
      get downloadsStatusModokiBar() {
        delete downloadsStatusModokiBar;
        return this.downloadsStatusModokiBar = document.getElementById("downloadsStatusModokiBar");
      },
    
      get toggleMenuitem() {
        delete toggleMenuitem;
        return this.toggleMenuitem = document.getElementById("toggle_downloadsStatusModokiBar");
      },
    
      init: function() {
        if (document.documentElement.getAttribute("chromehidden") !="" )
          return;
    
        XPCOMUtils.defineLazyModuleGetter(window, "Downloads",
                  "resource://gre/modules/Downloads.jsm");
    
        var style = ` 
          @namespace url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul); 
          #ucjsDownloadsStatusModoki { 
            width: 100%; 
            max-height: 100px; 
            height: 39px; 
          } 
         `.replace(/\s+/g, " ");
        var sspi = document.createProcessingInstruction(
          'xml-stylesheet',
          'type="text/css" href="data:text/css,' + encodeURIComponent(style) + '"'
        );
        document.insertBefore(sspi, document.documentElement);
        sspi.getAttribute = function(name) {
          return document.documentElement.getAttribute(name);
        };
    
    
        var toolbar = document.createXULElement("vbox");
        toolbar.setAttribute("id", "downloadsStatusModokiBar");
        toolbar.setAttribute("collapsed", true);
    
        var bottombox = document.getElementById("browser-bottombox");
        bottombox.appendChild(toolbar);
        var browser = toolbar.appendChild(document.createXULElement("browser"));
        browser.setAttribute("disablehistory", true);
        browser.setAttribute("remote", false);
        browser.setAttribute("id", "ucjsDownloadsStatusModoki");
        browser.addEventListener("load", function(event){ucjsDownloadsStatusModoki.onload(event)}, true);
        browser.setAttribute("src", "chrome://browser/content/downloads/contentAreaDownloadsView.xhtml?StatusModoki");
        var menuitem = document.createXULElement("menuitem");
        menuitem.setAttribute("id", "toggle_downloadsStatusModokiBar");
        menuitem.setAttribute("type", "checkbox");
        menuitem.setAttribute("autocheck", false);
        menuitem.setAttribute("label", "Download Leiste");
        menuitem.setAttribute("checked", false);
        menuitem.setAttribute("accesskey", "D");
        menuitem.setAttribute("oncommand", "ucjsDownloadsStatusModoki.toggleDownloadsStatusModokiBar()");
        var ref = document.getElementById("menu_customizeToolbars");
        ref.parentNode.insertBefore(menuitem, ref.previousSibling);
    
        // Ensure that the DownloadSummary object will be created asynchronously.
        if (!this._summary) {
          Downloads.getSummary(Downloads.ALL).then(summary => {
            this._summary = summary;
            return this._summary.addView(this);
          }).then(null, Cu.reportError);
        }
        if (!this._list) {
          Downloads.getList(Downloads.ALL).then(list => {
            this._list = list;
            return this._list.addView(this);
          }).then(null, Cu.reportError);
        }
    
        window.addEventListener("unload", this, false);
      },
    
      uninit: function() {
        window.removeEventListener("unload", this, false);
        if (this._summary) {
          this._summary.removeView(this);
        }
        if (this._list) {
          this._list.removeView(this);
        }
      },
    
      handleEvent: function(event) {
        switch (event.type) {
          case "unload":
            this.uninit();
            break;
        }
      },
    
      toggleDownloadsStatusModokiBar: function() {
        var collapsed = this.downloadsStatusModokiBar.collapsed;
        this.downloadsStatusModokiBar.collapsed = !collapsed;
        this.toggleMenuitem.setAttribute("checked", collapsed);
      },
    
      openDownloadsStatusModoki: function() {
        this.downloadsStatusModokiBar.collapsed = false;
        this.toggleMenuitem.setAttribute("checked", true);
      },
    
      hideDownloadsStatusModoki: function() {
        this.downloadsStatusModokiBar.collapsed = true;
        this.toggleMenuitem.setAttribute("checked", false);
      },
    
      onDownloadAdded: function (aDownload) {
        Cu.import("resource://gre/modules/Services.jsm");
        var showWhenStarting = true;
        try {
          showWhenStarting = Services.prefs.getBoolPref("userChrome.downloadsStatusModoki.showWhenStarting");
        } catch(e) {}
        this.numDls = 0;
        if (showWhenStarting) {
          if (this._list) {
            this._list.getAll().then(downloads => {
              for (let download of downloads) {
                if (!download.stopped)
                  this.numDls++;
              }
              if (this.numDls > 0)
                this.openDownloadsStatusModoki(false);
            }).then(null, Cu.reportError);
          }
        }
      },
    
      onSummaryChanged: function () {
        Cu.import("resource://gre/modules/Services.jsm");
        if (!this._summary)
          return;
        if (this._summary.allHaveStopped || this._summary.progressTotalBytes == 0) {
          var closeWhenDone = false;
          try {
            closeWhenDone = Services.prefs.getBoolPref("userChrome.downloadsStatusModoki.closeWhenDone");
          } catch(e) {}
          if (closeWhenDone) {
            this.hideDownloadsStatusModoki();
          }
        }
      },
    
    
    
      // chrome://browser/content/downloads/contentAreaDownloadsView.xhtml
      onload: function(event) {
        var doc = event.originalTarget;
        var win = doc.defaultView;
        doc.documentElement.setAttribute("ucjsDownloadsStatusModoki", "true");
    
        var button = doc.createXULElement("button");
        button.setAttribute("label", "Löschen");
        button.setAttribute("id", "ucjs_clearListButton");
        button.setAttribute("accesskey", "L");
        var ref = doc.getElementById("downloadCommands");
        var vbox = doc.createXULElement("vbox");
        var box = vbox.appendChild(doc.createXULElement("hbox"));
        box.appendChild(button);
        box.appendChild(doc.createXULElement("spacer")).setAttribute("flex", 1);
        var textbox = doc.createElementNS("http://www.w3.org/1999/xhtml", "input");
        textbox.setAttribute("id", "downloadFilter");
        textbox.setAttribute("clickSelectsAll", true);
        textbox.setAttribute("type", "search");
        textbox.setAttribute("placeholder", "Suchen...");
        box.appendChild(textbox);
        var closebtn = doc.createXULElement("toolbarbutton");
        closebtn.setAttribute("id", "ucjsDownloadsStatusModoki-closebutton");
        closebtn.setAttribute("class", "close-icon");
        closebtn.setAttribute("tooltiptext", "Download-Leiste schließen");
        box.appendChild(closebtn);
        ref.parentNode.insertBefore(vbox, ref);
        doc.getElementById("ucjs_clearListButton").addEventListener("command", function(event) {
            win.ucjsDownloadsStatusModoki_clearDownloads();
          });
        doc.getElementById("downloadFilter")
                .addEventListener("input", function(event) {
            win.ucjsDownloadsStatusModoki_doSearch(event.target.value);
          });
        doc.getElementById("ucjsDownloadsStatusModoki-closebutton")
                .addEventListener("command", function(event) {
            win.ucjsDownloadsStatusModoki_doClose();
          });
    
    /*
        // xxx Bug 1279329 "Copy Download Link" of context menu in Library is grayed out
        var listBox = doc.getElementById("downloadsRichListBox");
        var placesView = listBox._placesView;
        if (placesView) {
          var place = placesView.place;
          placesView.place= null;
          placesView.place = place;
        }
    */
        win.ucjsDownloadsStatusModoki_clearDownloads = function ucjs_clearDownloads() {
          var DO_NOT_DELETE_HISTORY = true; /* custmizable true or false */
          var richListBox = doc.getElementById("downloadsRichListBox");
    
          Cu.import("resource://gre/modules/Services.jsm");
          var places = [];
          function addPlace(aURI, aTitle, aVisitDate) {
            places.push({
              uri: aURI,
              title: aTitle,
              visits: [{
                visitDate: (aVisitDate || Date.now()) * 1000,
                transitionType: Ci.nsINavHistoryService.TRANSITION_LINK
              }]
            });
          }
          function moveDownloads2History() {
            if (DO_NOT_DELETE_HISTORY &&
                !PrivateBrowsingUtils.isWindowPrivate(window)) {
              try {
                for (let element of richListBox.childNodes) {
                  let download = element._shell.download;
                  let aURI = makeURI(download.source.url);
                  // let aTitle = document.getAnonymousElementByAttribute(element, "class", "downloadTarget").value
                  let aTitle = download.target.path;
                  aTitle = aTitle.match( /[^\\]+$/i )[0];
                  aTitle = aTitle.match( /[^/]+$/i )[0];
    
                  let aVisitDate = download.endTime || download.startTime;
                  addPlace(aURI, aTitle, aVisitDate)
                }
              } catch(ex) {}
            }
    
            // Clear List
            richListBox._placesView.doCommand('downloadsCmd_clearDownloads');
    
            if (DO_NOT_DELETE_HISTORY &&
                !PrivateBrowsingUtils.isWindowPrivate(window)) {
              try {
                if (places.length > 0) {
                  var asyncHistory = Components.classes["@mozilla.org/browser/history;1"]
                           .getService(Components.interfaces.mozIAsyncHistory);
                    asyncHistory.updatePlaces(places);
                }
              } catch(ex) {}
            }
          }
          var btn = doc.getElementById("ucjs_clearListButton");
          btn.setAttribute("disabled", true);
          moveDownloads2History();
          btn.removeAttribute("disabled");
    
          // close toolbar
          var closeWhenDone = false;
          try {
            closeWhenDone = Services.prefs.getBoolPref("userChrome.downloadsStatusModoki.closeWhenDone");
          } catch(e) {}
          if (closeWhenDone) {
            top.ucjsDownloadsStatusModoki.hideDownloadsStatusModoki();
          }
        };
    
        win.ucjsDownloadsStatusModoki_doSearch = function ucjs_doSearch(filterString) {
          var richListBox = doc.getElementById("downloadsRichListBox");
          richListBox._placesView.searchTerm = filterString;
        };
    
        win.ucjsDownloadsStatusModoki_doClose = function ucjs_doClose() {
          top.ucjsDownloadsStatusModoki.hideDownloadsStatusModoki();
        };
    
      }
    
    }
    ucjsDownloadsStatusModoki.init();
    Alles anzeigen
  • [gelöst] F2 Shortcut (Script) zur Adressleiste springen ?!

    • milupo
    • 14. Januar 2020 um 19:36
    Zitat von aborix

    Ich konnte jenen User dazu überreden, auch ein Skript für F2 zu schreiben. Er warnt jedoch davor, die Funktion von F13 zu verändern, denn das würde einen bösen hamsterfressenden Dämon wecken.

    :D :thumbup:

  • Firefox Browser : Installierte Addons suchen Alt+A

    • milupo
    • 14. Januar 2020 um 16:35
    Zitat von pisspott

    Die Skripten sind ja Hammer, aber zu kompliziert für mich.

    Ja, eine zip-Datei herunterladen, entpacken, die enthaltenen Dateien in das Profil- bzw. Installationsverzeichnis kopieren, das Skript in einer Datei im Ordner chrome des Profilverzeichnisses abspeichern - ja, das ist wirklich sehr kompliziert.

  • NoScript Optionen ausblenden und deaktivieren

    • milupo
    • 13. Januar 2020 um 23:55

    Ah, danke, wieder etwas gelernt. Man lernt eben nie aus.

  • NoScript Optionen ausblenden und deaktivieren

    • milupo
    • 13. Januar 2020 um 23:43

    Du musst dich schon entscheiden. Wie oben in Beitrag #7 angeführt, kann die ID-Nr. der Erweiterung abweichen und ich nehme mal an, dass beide Firefox-Versionen unterschiedliche ID-Nummern bei dir haben. Du kannst dich also nicht auf die Nummer oben verlassen. Gib mal about:debugging in die Adressleiste ein - wenn du beide Firefox-Versionen verwendest, in beiden - klicke links auf „Dieser Firefox“ und suche rechts den Eintrag zu NoScript. Unter „Interne UUID“ findest du die betreffende Nummer.

  • Searchbar/Suchleiste: Drop Down List

    • milupo
    • 13. Januar 2020 um 21:18

    Diese CSS-Datei funktioniert nicht mehr. Sie verwendet noch XBL-Binding, das nicht mehr von Firefox unterstützt wird, Mozilla hat es abgeschafft. Außerdem hättest du dafür eine XML-Datei gleichen Namens gebraucht, die hast du wahrscheinlich nicht heruntergeladen, ebenso den Ordner image für zwei Grafiken.

  • Firefox nach Update langsamer?

    • milupo
    • 13. Januar 2020 um 20:46
    Zitat von Caru

    Ich frage, weil ich ja die Add-ons verlieren wurde und die wieder genauso einzurichten, wie ich sie jetzt habe, wäre etwas aufwändig.

    So aufwändig ist das nicht. Ein Großteil der Erweiterungen bringt Firefox selbst mit, die gehen gar nicht verloren, z. B. Suchmaschinen. Die Erweiterungen in Zeile 131 bis 146 sind alle auf false gesetzt, z. B. Classic Theme Restorer. Diese Erweiterungen sind noch alten Typs und funktionieren schon seit 2 Jahren nicht mehr, seit Firefox 57. Die sind Ballast und Ballast verlangsamt.

  • css Code für Webseiten

    • milupo
    • 13. Januar 2020 um 20:17
    Zitat von Dato

    nur leider weis ich nicht ob es Sinnvoll oder eher Sinnlos ist.

    Das hängt davon ab, wieviel Code du erfasst. Wenn das ellenlang wird, geht die Übersicht verloren. Das ist im Grunde ähnlich, wie wenn du alle möglichen CSS-Codes für die unterschiedlichsten Zwecke in die userChrome.css packst. Du musst dann ganz diszipliniert Kommentare dazu schreiben. Meine Datei nur für die Gestaltung dieses Forums hat 515 Zeilen.

  • Pocket nur noch eine Zeile

    • milupo
    • 13. Januar 2020 um 18:25

    Dazu gibt es folgenden Bugreport:

    https://bugzilla.mozilla.org/show_bug.cgi?id=1608656

  • NoScript Optionen ausblenden und deaktivieren

    • milupo
    • 13. Januar 2020 um 17:44

    Probiert mal statt display: background-image

  • [gelöst] Shortcut F12 um Tabs zu schließen

    • milupo
    • 13. Januar 2020 um 13:29

    Gern geschehen. Dafür sind wir da.

  • [gelöst] Shortcut F12 um Tabs zu schließen

    • milupo
    • 13. Januar 2020 um 13:18

    Ein Benutzerskript hat nichts mit der userChrome.css zu tun, ein Skript ist kein CSS-Code. Wenn du bisher keine Benutzerskripte genutzt hast, musst du erst dafür Vorbereitung treffen. Lies dir dazu folgenden Beitrag durch:

    Firefox-Anpassungen: die Basis

    Lade dir dann von folgender Seite, die Datei firefox-anpassungen.zip herunter, entpacke sie und kopiere die darin enthaltenen Dateien und den Ordner - wie hinter vorigem Link beschrieben - in das Profilverzeichnis bzw. Installationsverzeichnis.

    https://github.com/Endor8/userChr…ster/userChrome


    Zitat von Sören Hentzschel

    Du hast doch schon mit Scripts gearbeitet, wie man in diversen anderen Beiträgen von dir sieht. Das funktioniert ganz genauso.

    Wenn dem so ist, hast du wahrscheinlich schon alles vorbereitet, dann brauchst du nur den Code von aborix als Textdatei mit der Endung .uc.js im Ordner chrome des Profilverzeichnisses abspeichern.

  • Scripte werden nicht geladen

    • milupo
    • 13. Januar 2020 um 12:11
    Zitat von BarbaraZ-

    Erst einmal herzlichen Dank.

    Gern geschehen. Schön, dass es geklappt hat.

    Zitat von BarbaraZ-

    Leider hatte ich wieder den Fehler gemacht, das ganze über %AppData% aufzurufen.

    Ja, damit wird der Pfad zum Programm aufgerufen und nicht zum Profil.

    Zitat von BarbaraZ-

    So kann ich es mir wenigstens merken.

    Deshalb wurde die Schrift erfunden. :D

  • Separatoren ausblenden

    • milupo
    • 13. Januar 2020 um 00:08

    Ah, Nachbarkombinator, kenn ich. Nur mit dem Erkennen der Einsatzmöglichkeiten hapert es bei mir noch. Danke für den Tipp aborix.


    So, dann müsste es auch so funktionieren:

    CSS
    #context_duplicateTabs + menuseparator {
    display: none !important;
    }
    
    #context_sendTabToDevice + menuseparator {
    display: none !important;
    }

    oder in zusammengefasster Schreibweise:

    CSS
    #context_duplicateTabs + menuseparator, #context_sendTabToDevice + menuseparator {
    display: none !important;
    }
  • Separatoren ausblenden

    • milupo
    • 12. Januar 2020 um 20:31

    Ja, hier muss man es wohl so machen. Im Gegensatz zum Seiten-Kontextmenü haben die Trennlinien hier keine ID.

  • Separatoren ausblenden

    • milupo
    • 12. Januar 2020 um 19:53

    Man muss dazu sagen, dass dieser Code theoretisch alle Trennlinien ausblendet, die sich im Tab-Kontextmenü befinden. Ich habe hier noch alle Einträge und es sind auch nicht mehr als zwei Trennlinien. Da Fox2Fox die meisten Einträge ausgeblendet hat, sind diese Trennlinien überflüssig geworden. Manche Erweiterungen tragen sich da ein (z. B. Autoreload), Trennlinien, die dann erst entstünden, würden dann nicht angezeigt.

  • FF mit Facebook Profil

    • milupo
    • 12. Januar 2020 um 19:01

    Warum bleibst du denn nicht angemeldet? Mich würde mehr stören, dass erst einmal das Anmeldefenster geladen wird. Der kleine Klick auf die Meldung ist doch nicht der Rede wert.

  • Firefox 74 Nightly - CSS-Code für mehrzeilige Lesezeichenleiste funktioniert nicht mehr

    • milupo
    • 12. Januar 2020 um 13:41
    Zitat von Fox2Fox

    Mit diesem Code klappt es. Habe testweise mal 5 Reihen angelegt, es macht sich auch kein Scrollbalken breit.

    Besten Dank!

    Gern geschehen. Habe ich dich doch nicht falsch verstanden. Ich bin jetzt durch die Beiträge von Andreas und BrokenHeart unsicher geworden, ob du eine Bildlaufleiste haben wolltest oder nicht.

  • Firefox 74 Nightly - CSS-Code für mehrzeilige Lesezeichenleiste funktioniert nicht mehr

    • milupo
    • 12. Januar 2020 um 13:26

    Ach, bei mir gibt es keine Bildlaufleiste, da ich den Selektor scrollbar weggelassen habe, aufgrund folgender Bemerkung auf der japanischen Seite, von der der Code stammt:

    Zitat

    Wenn Sie ___ userChrome.css kopieren und einfügen, ändern Sie #PlacesToolbarItems> Bildlaufleiste in Zeile 23 in #PlacesToolbarItems. Wenn Sie dies nicht tun, können Sie die Bildlaufleiste, die in drei oder mehr Schritten angezeigt wird, nicht berühren.

    Übersetzt mit der Erweiterung WebTranslate. So genau weiß ich aber, was damit gemeint ist. Der Selektor wurde durch die Erweiterung mitübersetzt, dort muss aber scrollbar stehen bleiben.

Unterstütze uns!

Jährlich (2025)

101,9 %

101,9% (662,48 von 650 EUR)

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