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

Beiträge von Endor

  • In memoriam

    • Endor
    • 12. Juli 2023 um 18:50

    Ex-Ministerpräsidentin Heide Simonis ist tot.

    Heide Simonis mit 80 Jahren gestorben
    Die frühere schleswig-holsteinische Ministerpräsidentin Heide Simonis ist tot. Das bestätigte die SPD-Landesvorsitzende Serpil Midyatli in Kiel.
    www.zdf.de

    R.I.P.

    Mfg.
    Endor

  • Im ExtraConfigMenu.uc.js werden die Scripte nicht mehr angezeigt.

    • Endor
    • 11. Juli 2023 um 13:32
    Zitat von omar1979

    hallo Endor funkt leider nicht.

    Ja habe ich leider schon befürchtet.

    Es ist so wie 2002Andreas schon geschrieben hat

    einiges mehr zu ändern. Leider.

    Vielleicht hat jemand anderes eine Idee wie man das anpassen
    muss. Ich bin da leider überfragt.

    Mfg.
    Endor

  • Im ExtraConfigMenu.uc.js werden die Scripte nicht mehr angezeigt.

    • Endor
    • 11. Juli 2023 um 10:36

    Hallo omar1979

    Ersetzte im Script mal die Zeile
    menupopup.appendChild(this.createME("menuitem","Chromeordner","uProfMenu.prefDirOpen('UChrm');","uProfMenu_folder"),0);
    damit:

    menupopup.appendChild(this.createME("menuitem","Chromeordner","uProfMenu.prefDirOpen(uProfMenu.getPrefDirectoryPath('UChrm')+uProfMenu.getDirSep()+'Script');","uProfMenu_folder"),0);

    und teste.

    Mfg.
    Endor

  • Im ExtraConfigMenu.uc.js werden die Scripte nicht mehr angezeigt.

    • Endor
    • 11. Juli 2023 um 08:03

    Habe oben noch etwas hinzu gefügt.

    Mfg.
    Endor

  • Im ExtraConfigMenu.uc.js werden die Scripte nicht mehr angezeigt.

    • Endor
    • 11. Juli 2023 um 07:59

    Logisch. Das extraconfigmenu.uc.js Script sucht nur im chrome Ordner nach Scripten.
    Wenn er da nichts finden dann wird auch nichts angezeigt.

    Ändern müsste man diese Zeile:

    menupopup.appendChild(this.createME("menuitem","Chromeordner","uProfMenu.prefDirOpen('UChrm');","uProfMenu_folder"),0);

    Bloß wie weiß ich leider auch nicht.

    Mfg.
    Endor

  • Nur die Anzeige der Ordner/Lesezeichenanzahl in einer anderen Farbe darstellen

    • Endor
    • 10. Juli 2023 um 20:10

    BrokenHeart .

    Danke, dann ist alles klar.

    Frage, wie hast Du bei Dir das Ordner Symbol und das Sternsymbol anstelle der
    Klammern usw. eingebaut. Sieht toll aus. :)
    Mfg.
    Endor

  • Nur die Anzeige der Ordner/Lesezeichenanzahl in einer anderen Farbe darstellen

    • Endor
    • 10. Juli 2023 um 17:51
    Zitat von BrokenHeart

    Nur zur Info: der Link stimmt nicht ganz. Ich würde schon auf die letzte, fehlerbereinigte Version verlinken, nämlich auf den Code in #170:

    Sollte sich das auf mich beziehen,

    Also im Script verlinke ich genau auf Beitrag 170

    Beitrag

    RE: Nur die Anzeige der Ordner/Lesezeichenanzahl in einer anderen Farbe darstellen

    […]

    Ich glaube eine Lösung für das Scrollproblem bei überlangen Menüs gefunden zu haben :/ ... bitte mal testen:

    (Quelltext, 72 Zeilen)

    BrokenHeart
    9. Juli 2023 um 21:38

    Also müsste es passen.

    Mfg.
    Endor

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

    • Endor
    • 10. Juli 2023 um 10:46

    Ja leider funktioniert es nicht überall.

    Das müssten noch andere Typen von tooltip sein.

    Die müsste man dann nur noch hinzufügen.

    Aber es will hin und wieder überhaupt nicht.
    Keine Ahnung wieso. Zbs. Adressleiste mal geht es
    dann wieder nicht usw. Keine Ahnung warum das so ist.


    Zitat von lenny2

    Ich habe auch Ihr altes Skript

    Das ist nicht von mir sondern von einem asiatischen Autor.
    Ardiman hat das so übernommen. Daher ist es auch bei mir sichtbar.

    Mfg.
    Endor

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

    • Endor
    • 10. Juli 2023 um 08:53

    Teste mal:

    Farben musst Du dir nach bedarf noch anpassen.

    JavaScript
    // ==UserScript==
    // @name           tooltipStyling.uc.js
    // @description    tooltipStyling
    // @include        *
    // ==/UserScript==
    (function () {
    let sss = Components.classes["@mozilla.org/content/style-sheet-service;1"].getService(Components.interfaces.nsIStyleSheetService);
    
    let uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent(`
    tooltip,
    #tooltip,
    .tooltip,
    .balloonTooltip,
    #aHTMLTooltip {
    
      appearance: none !important;
      background-color: #f7f2bd !important;
      color: #000000 !important;
      padding: 2px 12px !important;
    
    } 
    `), null, null);
    
    sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET);
    })();
    Alles anzeigen

    Mfg.
    Endor

  • Nur die Anzeige der Ordner/Lesezeichenanzahl in einer anderen Farbe darstellen

    • Endor
    • 10. Juli 2023 um 08:50

    Hallo BrokenHeart .

    Danke für die letzte Version funktioniert hier auch einwandfrei.
    :thumbup:

    Habe ich jetzt hoch geladen:

    userChrome.js/Firefox 115/BookmarkCount.uc.js at master · Endor8/userChrome.js
    Skripte für die Firefox-Erweiterung userChromeJS. Contribute to Endor8/userChrome.js development by creating an account on GitHub.
    github.com

    Nochmals vielen Dank. :)

    Mfg.
    Endor

  • Nur die Anzeige der Ordner/Lesezeichenanzahl in einer anderen Farbe darstellen

    • Endor
    • 9. Juli 2023 um 17:48

    Finde ich sehr gut.:thumbup:

    Mal abwarten was sonst noch für Vorschläge kommen.

    Danke harff182 !

    Mfg.
    Endor

  • Nur die Anzeige der Ordner/Lesezeichenanzahl in einer anderen Farbe darstellen

    • Endor
    • 9. Juli 2023 um 17:36

    Hallo BrokenHeart .

    Danke!!

    @all

    Hat jemand einen Vorschlag wie man dieses Script nennen soll?

    Zbs.

    Bookmarkscount.uc.js
    Bookmarkscounter.uc.js

    Count-bookmarks.uc.js

    Was meint Ihr?

    Mfg.
    Endor

  • Nur die Anzeige der Ordner/Lesezeichenanzahl in einer anderen Farbe darstellen

    • Endor
    • 9. Juli 2023 um 12:09

    Hallo BrokenHeart .

    Danke für das tolle Script. Funktioniert bestens. :thumbup:

    Darf ich diese Version bei Github hoch laden?

    Beitrag

    RE: Nur die Anzeige der Ordner/Lesezeichenanzahl in einer anderen Farbe darstellen

    Ich glaube doch ein Fehler meinerseits. Wenn der Lesezeichen-Button überhaupt nicht vorhanden ist bzw. eingefügt wurde, dann ist das entsprechende Objekt natürlich auch NULL und es wird eine Exception geschmissen.

    Hier der geänderte Code:

    (Quelltext, 68 Zeilen)

    BrokenHeart
    7. Juli 2023 um 18:44

    Mfg.
    Endor

  • Nur die Anzeige der Ordner/Lesezeichenanzahl in einer anderen Farbe darstellen

    • Endor
    • 7. Juli 2023 um 08:05

    Hallo BrokenHeart.

    Danke für diese Script.
    Hier funktioniert es in der Lesezeichenleiste in den Unterodnern.
    Nur in Menü - Lesezeichen tut sich nichts.

    Browserkonsole keine Meldung.

    Mfg.
    Endor

  • Separates Downloads-Fenster?

    • Endor
    • 6. Juli 2023 um 20:07

    Hallo 2002Andreas.

    Wie immer gern geschehen.

    Werde diese Version auch bei Github hoch laden.

    Mfg.
    Endor

  • Separates Downloads-Fenster?

    • Endor
    • 6. Juli 2023 um 19:58

    Hier wäre das Script jetzt mit Deutscher Übersetzung.
    Sonst original wie vom Autor Alice.
    Nur als Info:

    Für die, die es noch nicht bemerkt haben, es wird unter Extras
    einen Menüeintrag zum öffnen des Download Managers eingefügt.

    JavaScript
    // ==UserScript==
    // @name           ucjsDownloadsManager.uc.js
    // @namespace      http://space.geocities.yahoo.co.jp/gl/alice0775
    // @description    Donloads Manager
    // @include        main
    // @include        chrome://browser/content/downloads/contentAreaDownloadsView.xhtml
    // @compatibility  Firefox 116
    // @author         Alice0775
    // @version        2023/06/20 remove Bug 1780695 - Remove Services.jsm
    // @version        2023/04/02 fix document.title
    // @version        2022/11/22 Bug 877389 - [meta] Replace calls to Cu.reportError, etc. from browser code, replace with console.error, etc.
    // @version        2022/11/08 11:00 Bug 1798212
    // @version        2022/05/04 11:00 missing scope of DownloadIntegration
    // @version        2022/04/01 23:00 Convert Components.utils.import to ChromeUtils.import
    // @version        2022/02/16 Bug 1747422 - Remove preprocessor variable use from downloads CSS
    // @version        2020/12/19 WIP:Workaround to avoid closing the manager if download.error/download.canceled.
    // @version        2020/12/18 fix closeWhenDone if small size downloaded
    // @version        2020/09/24 fix emptylist layout
    // @version        2019/12/11 fix for 73 Bug 1601094 - Rename remaining .xul files to .xhtml in browser
    
    // @version        2019/10/20 12:30 workaround Bug 1497200: Apply Meta CSP to about:downloads, Bug 1513325 - Remove textbox binding
    // @version        2019/05/21 08:30 fix 69.0a1 Bug 1534407 - Enable browser.xhtml by default
    // @version        2019/05/21 08:30 fix 69.0a1 Bug 1551320 - Replace all createElement calls in XUL documents with createXULElement
    // @version        2018/07/01 16:30 revert Disable btn
    // @version        2018/06/12 21:30 remove unused
    // @version        2018/06/12 21:00 fix for private window mode
    // @version        2018/06/07 12:00 fix file name for history
    // @version        2018/04/14 00:00 de XUL overlay
    // @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
    // @version        2016/06/10 00:00 Workaround Bug 1279329
    // @version        2016/05/04 20:30 remove typo
    // @version        2016/05/04 20:00 remove in-content css, add preference for Taskbar Progress
    // @version        2016/05/03 01:00 Indicate Taskbar Progress
    // @version        2016/04/19 07:00 change title dexcription "/" instead of " of "
    // @version        2015/05/08 00:00 remove padding due to Bug 1160734
    // @version        2015/03/29 00:00 Check window.windowState instead of sizemode attribute
    // @version        2014/12/28 23:00 Skip save window size if closed immediately
    // @version        2014-12-23 23:00 number of files
    // @version        2014-10-23 22:00 number of files
    // @version        2014/10/18 20:00 fix posiotion
    // @version        2014/06/07 20:00 Woraround closes
    // @version        2014/06/03 12:00 
    // @version        2014/05/15 22:00 clean up
    // @version        2014/05/15 20:00 removed the following oraround
    // @version        2014/05/15 19:00 Woraround closes the manager 10 seconds after download completion
    // @version        2014/03/31 00:00 fix for browser.download.manager.showWhenStarting
    // @version        2014/03/01 12:00 Bug 978291
    // @version        2013/12/19 17:10 rename REMEMBERHISTOTY to DO_NOT_DELETE_HISTORY
    // @version        2013/12/19 17:00 fix do not close the Manager if there is main window
    // @version        2013/12/18 23:10 
    // @version        2013/12/16 23:10 open only download added
    // @version        2013/12/16 02:00 defineLazyModuleGetter for Firefox26
    // @version        2013/12/15 22:00 typo and correct version date
    // @version        2013/12/15 08:00 label placeholder size
    // @version        2013/12/14 20:10 Search
    // @version        2013/12/14 19:30 getBoolPref
    // @version        2013/12/14 18:30 typo and fix closeWhenDone
    // @version        2013/12/14 18:00 browser.download.manager.showWhenStarting , browser.download.manager.closeWhenDone
    // @version        2013/12/02 00:00 
    // @note           Require Sub-Script/Overlay Loader v3.0.40mod
    // ==/UserScript== 
    // preferences:
    // Automatisch öffnen (Standard: true)
    //   (bool) browser.download.manager.showWhenStarting
    // Automatisch schließen (Standard: false):
    //   (bool) browser.download.manager.closeWhenDone
    // Wenn oben „false“, wird das automatische Schließen nur beim automatischen Öffnen durchgeführt (Standard: „false“):
    //   (bool) browser.download.manager.closeWhenDoneIfAutoOpened
    // Fortschrittsanzeige in der Taskleiste anzeigen (Standardeinstellung: true)
    //   (bool) browser.download.manager.showProgressInTaskButton
    
    if (location.href == "chrome://browser/content/browser.xhtml") {
      // ChromeUtils.import("resource://gre/modules/Services.jsm");
    
      window.ucjs_downloadManager = {
        delay: 8000, //Zeitverzögerung für die automatische Anzeige (Millisekunden), wenn auf automatisches Schließen eingestellt ist
    
        _summary: null,
        _list: null,
        kshowWhenStarting: "browser.download.manager.showWhenStarting",
        kcloseWhenDone:    "browser.download.manager.closeWhenDone",
        kcloseWhenDoneIfAutoOpened:
                           "browser.download.manager.closeWhenDoneIfAutoOpened",
    
        createElement: function(localName, arryAttribute) {
          let elm = document.createXULElement(localName);
          for(let i = 0; i < arryAttribute.length; i++) {
            elm.setAttribute(arryAttribute[i].attr, arryAttribute[i].value);
          }
          return elm;
        },
    
        init: function() {
          window.addEventListener("unload", this, false);
    
          let ref = document.getElementById("menu_openDownloads");
          let menu = ref.parentNode.insertBefore(
            this.createElement("menuitem",
              [{attr: "label", value:"Download Manager öffnen"},
               {attr: "accesskey", value:"d"},
               {attr : "oncommand", value: "ucjs_downloadManager.openDownloadManager(true);"}
              ]), ref);
    
          XPCOMUtils.defineLazyModuleGetter(this, "Downloads",
                    "resource://gre/modules/Downloads.jsm");
          // Ensure that the DownloadSummary object will be created asynchronously.
          if (!this._summary) {
            this.Downloads.getSummary(this.Downloads.ALL).then(summary => {
              this._summary = summary;
              return this._summary.addView(this);
            }).then(null, console.error);
          }
    
          if (!this._list) {
            this.Downloads.getList(this.Downloads.ALL).then(list => {
              this._list = list;
              return this._list.addView(this);
            }).then(null, console.error);
          }
        },
    
        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;
          }
        },
    
        getDMWindow: function() {
          var enumerator = Services.wm.getEnumerator(null);
          while(enumerator.hasMoreElements()) {
            var win = enumerator.getNext();
            if (win.location == "chrome://browser/content/downloads/contentAreaDownloadsView.xhtml"
              && PrivateBrowsingUtils.isWindowPrivate(window) ==
                 PrivateBrowsingUtils.isWindowPrivate(win)) {
              return win;
            }
          }
          return null;
        },
    
        openDownloadManager: function ucjs_openDownloadManager(aForceFocus) {
          var win = this.getDMWindow();
          if (win) {
            if (aForceFocus) {
              win.focus();
              win.autoOpened = false;
            }
            return false; //Wenn vorhanden
          }
    
          try {
            var height = Math.max(100,Services.prefs.getIntPref("browser.download.manager.size.height"));
            var width  = Math.max(300,Services.prefs.getIntPref("browser.download.manager.size.width"));
            var screenX = Math.min(Math.max(0,Services.prefs.getIntPref("browser.download.manager.size.screenX")), screen.availWidth - width);
            var screenY = Math.min(Math.max(0,Services.prefs.getIntPref("browser.download.manager.size.screenY")), screen.availHeight - height);
          } catch(r){
            height = 300;
            width  = 600;
            screenX = 0;
            screenY = 0;
          }
          win = window.open("chrome://browser/content/downloads/contentAreaDownloadsView.xhtml",
                                "Download" +
                                (PrivateBrowsingUtils.isWindowPrivate(window) ? " - Private Window"
                                                                             : ""),
                                "outerWidth=" + width + ",outerHeight=" + height +
                                ",left=" + screenX + ",top=" + screenY +
                                ",chrome,toolbar=yes,dialog=no,resizable");
           this.success = true;
           if (aForceFocus)
             win.autoOpened = false;
           return win; //Neu
        },
    
        success: true,
        onDownloadChanged: function (aDownload) {
          this.success = this.success && !(aDownload.canceled || aDownload.error);
        },
    
        closeTimer: null,
        onSummaryChanged: function (aDownload) {
          var showWhenStarting = Services.prefs.getBoolPref(this.kshowWhenStarting, true);
          if (!showWhenStarting) //DM nicht öffnen, wenn er nicht automatisch geöffnet wird
            return
    
          var win = this.getDMWindow();
          if (win) {  // wenn bereits geöffnet
            return;
          }
    
          if (this.success && this._summary.allHaveStopped) //Wenn beim Herunterladen kein Fehler auftritt, DM nicht öffnen
            return;
    
          var closeWhenDone = Services.prefs.getBoolPref(this.kcloseWhenDone, false);
          var closeWhenDoneIfAutoOpened
                            = Services.prefs.getBoolPref(this.kcloseWhenDoneIfAutoOpened, false);
          if (!this.success || !(closeWhenDone || closeWhenDoneIfAutoOpened)) { //DM öffnen, wenn Fehler vorliegen oder das automatische Schließen nicht erfolgt
            var newWindow = this.openDownloadManager(false);
            if (newWindow) {
              newWindow.autoOpened = true;
            }
          }
          
          this.closeTimer = setTimeout(() => {
           if (this.success && this._summary.allHaveStopped) //Keine Fehler, keine Downloads
              return;
    
            newWindow = this.openDownloadManager(false); 
            if (newWindow) {
              newWindow.autoOpened = true;
            }
          }, this.delay);
    
        }
      };
      ucjs_downloadManager.init();
    }
    
    
    if (window.opener && location.href == "chrome://browser/content/downloads/contentAreaDownloadsView.xhtml") {
      
      ChromeUtils.importESModule(
        "resource://gre/modules/DownloadIntegration.sys.mjs"
       );
    
      window.ucjs_downloadManagerMain = {
        originalTitle:"",
        _hasDowbload: false,
        _summary: null,
        _list: null,
        _wait:false,
        kshowWhenStarting: "browser.download.manager.showWhenStarting",
        kcloseWhenDone:    "browser.download.manager.closeWhenDone",
        kcloseWhenDoneIfAutoOpened:
                           "browser.download.manager.closeWhenDoneIfAutoOpened",
    
        createElement: function(localName, arryAttribute) {
          let elm = document.createXULElement(localName);
          for(let i = 0; i < arryAttribute.length; i++) {
            elm.setAttribute(arryAttribute[i].attr, arryAttribute[i].value);
          }
          return elm;
        },
    
        createElementNS: function(NS, localName, arryAttribute) {
          let elm = document.createElementNS(NS, localName);
          for(let i = 0; i < arryAttribute.length; i++) {
            elm.setAttribute(arryAttribute[i].attr, arryAttribute[i].value);
          }
          return elm;
        },
    
        init: function() {
          window.addEventListener("unload", this, false);
    
          // xxx remove in-content css
          var elements = document.childNodes;
          for (var i = 0; i <= elements.length; i++) {
            var element = elements[i];
            if (element.nodeValue.indexOf("chrome://browser/skin/downloads/contentAreaDownloadsView.css") > -1) {
              document.removeChild(element);
              break;
            }
          }
          /*
          var style = ' \
            @namespace url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul); \
            #contentAreaDownloadsView { \
              padding: 0 ; \
            } \
            #downloadsListBox:empty + #downloadsListEmptyDescription { \
              pointer-events: none; \
            } \
           '.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);
          };
          */
    
          document.getElementById("downloadsListEmptyDescription").setAttribute("flex", "1");
          let ref = document.documentElement;
          ref = ref.appendChild(this.createElement("hbox", []));
          ref.appendChild(this.createElement("button",
            [{attr: "id", value: "ucjs_clearListButton"},
             {attr: "label", value: "Liste leeren"},
             {attr: "accesskey", value: "L"}
            ]));
          ref.appendChild(this.createElement("spacer",
            [{attr: "flex", value: "1"}]));
          ref.appendChild(this.createElementNS("http://www.w3.org/1999/xhtml", "input",
            [{attr: "id", value: "ucjs_downloadManagerMain_input"},
             {attr: "clickSelectsAll", value: "true"},
             {attr: "type", value: "search"},
             {attr: "placeholder", value: "Suchen..."},
             {attr: "aria-autocomplete", value: "list"}
            ]));
    
            document.getElementById("ucjs_clearListButton").addEventListener("command", function(event) {
                ucjs_downloadManagerMain.clearDownloads();
              });
            document.getElementById("ucjs_downloadManagerMain_input")
                    .addEventListener("input", function(event) {
                ucjs_downloadManagerMain.doSearch(event.target.value);
              });
    
          this.originalTitle = document.title +
                               (PrivateBrowsingUtils.isWindowPrivate(window) ? " - Private Window"
                                                                             : "");
          document.title = this.originalTitle;
          
    /*
          // xxx Bug 1279329 "Copy Download Link" of context menu in Library is grayed out
          var listBox = document.getElementById("downloadsListBox");
          var placesView = listBox._placesView;
          var place = placesView.place;
          placesView.place= null;
          placesView.place = place;
    */
    
          setTimeout(function(){this._wait = true}.bind(this), 0);
    
          // 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, console.error);
          }
    
          if (!this._list) {
            Downloads.getList(Downloads.ALL).then(list => {
              this._list = list;
              return this._list.addView(this);
            }).then(null, console.error);
          }
    
          var showProgressInTaskButton = Services.prefs.getBoolPref("browser.download.manager.showProgressInTaskButton", true);
          if (showProgressInTaskButton)
            setTimeout(function() {
              try {
                let docShell = window.QueryInterface(Ci.nsIInterfaceRequestor)
                                      .getInterface(Ci.nsIWebNavigation)
                                      .QueryInterface(Ci.nsIDocShellTreeItem).treeOwner
                                      .QueryInterface(Ci.nsIInterfaceRequestor)
                                      .getInterface(Ci.nsIXULWindow).docShell;
                let gWinTaskbar = Components.classes["@mozilla.org/windows-taskbar;1"]
                                          .getService(Components.interfaces.nsIWinTaskbar);
                this._taskbarProgress = gWinTaskbar.getTaskbarProgress(docShell);
              } catch(ex) {
                this._taskbarProgress = null;
              }
            }.bind(this), 10);
        },
    
        uninit: function() {
          window.removeEventListener("unload", this, false);
    
          this._taskbarProgress = null;
          if (this._wait)
            this.saveSizePosition();
    
          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;
          }
        },
    
        saveSizePosition: function() {
          if (window.windowState == 3) {
            Services.prefs.setIntPref("browser.download.manager.size.height", window.outerHeight);
            Services.prefs.setIntPref("browser.download.manager.size.width", window.outerWidth);
            Services.prefs.setIntPref("browser.download.manager.size.screenX", window.screenX);
            Services.prefs.setIntPref("browser.download.manager.size.screenY", window.screenY);
          }
        },
    
        success: true,
        onDownloadChanged: function (aDownload) {
          this.success = this.success && !(aDownload.canceled || aDownload.error);
        },
        onSummaryChanged: function () {
          if (!this._summary)
            return;
    
          if (!this._hasDowbload) {
            this._hasDowbload = true;
            return;
          }
          if (this._summary.allHaveStopped || this._summary.progressTotalBytes == 0) {
            document.title = this.originalTitle;
            if (this._taskbarProgress) {
              this._taskbarProgress.setProgressState(
                                         Ci.nsITaskbarProgress.STATE_NO_PROGRESS, 0, 0);
            }
    
    
            var closeWhenDone = Services.prefs.getBoolPref(this.kcloseWhenDone, true);
            var closeWhenDoneIfAutoOpened = Services.prefs.getBoolPref(this.kcloseWhenDoneIfAutoOpened, true) && window.autoOpened;
            if (this.success && (closeWhenDone || closeWhenDoneIfAutoOpened)) {
              window.DownloadIntegration?._store?.save();
              window.close();
            }
    
          } else {
    
            // If the last browser window has been closed, we have no indicator any more.
            if (this._taskbarProgress) {
              if (this._summary.allHaveStopped || this._summary.progressTotalBytes == 0) {
                this._taskbarProgress.setProgressState(
                                         Ci.nsITaskbarProgress.STATE_NO_PROGRESS, 0, 0);
              } else {
                // For a brief moment before completion, some download components may
                // report more transferred bytes than the total number of bytes.  Thus,
                // ensure that we never break the expectations of the progress indicator.
                let progressCurrentBytes = Math.min(this._summary.progressTotalBytes,
                                                    this._summary.progressCurrentBytes);
                this._taskbarProgress.setProgressState(
                                         Ci.nsITaskbarProgress.STATE_NORMAL,
                                         progressCurrentBytes,
                                         this._summary.progressTotalBytes);
              }
            }
    
            // Update window title
            var numDls = 0;
            if (!this._list)
              return;
            this._list.getAll().then(downloads => {
              for (let download of downloads) {
                if (download.hasProgress && !download.succeeded)
                  numDls++;
              }
    
              let progressCurrentBytes = Math.min(this._summary.progressTotalBytes,
                                                this._summary.progressCurrentBytes);
              let percent = Math.floor(progressCurrentBytes / this._summary.progressTotalBytes * 100);
              let text = percent + "%/" + numDls + (numDls < 2 ? " file - " : " files - ") ;
              document.title = text + this.originalTitle;
            }).then(null, console.error);
          }
        },
    
        clearDownloads: function ucjs_clearDownloads() {
          var DO_NOT_DELETE_HISTORY = true; /* custmizable true or false */
          var richListBox = document.getElementById("downloadsListBox");
    
          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(d) {
            if (DO_NOT_DELETE_HISTORY &&
                !PrivateBrowsingUtils.isWindowPrivate(window)) {
              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)
              }
            }
    
            // Clear List
            richListBox._placesView.doCommand('downloadsCmd_clearDownloads');
    
            if (DO_NOT_DELETE_HISTORY &&
                !PrivateBrowsingUtils.isWindowPrivate(window)) {
              if (places.length > 0) {
                var asyncHistory = Components.classes["@mozilla.org/browser/history;1"]
                         .getService(Components.interfaces.mozIAsyncHistory);
                  asyncHistory.updatePlaces(places);
              }
            }
          }
          var btn = document.getElementById("ucjs_clearListButton");
          moveDownloads2History(0);
        },
    
        doSearch: function ucjs_doSearch(filterString) {
          var richListBox = document.getElementById("downloadsListBox");
          richListBox._placesView.searchTerm = filterString;
        }
      };
      ucjs_downloadManagerMain.init();
    }
    Alles anzeigen

    Mfg.
    Endor

  • Separates Downloads-Fenster?

    • Endor
    • 6. Juli 2023 um 14:43

    Hallo FuchsFan

    Vielen Dank auch von mir für diesen CSS Code.
    Funktioniert bestens. :thumbup: :thumbup:

    Mfg.
    Endor

  • CSS-Dateien werden nicht geladen

    • Endor
    • 5. Juli 2023 um 20:29

    Meiner bitte Schwarz, stark und 2 Stück Zucker pro Tasse. ;)
    Danke.

    Wie immer gern geschehen.

    Freut mich wenn es wieder passt.

    :)

    Mfg.
    Endor

  • CSS-Dateien werden nicht geladen

    • Endor
    • 5. Juli 2023 um 19:50

    BarbaraZ-

    Laut Deinem Screenshot ist das aber nicht der Installationsordner.
    Also da wo die Programmdateien von Firefox sind.
    Es sieht jedenfalls nicht so aus.

    Das sieht nach AppData\Roaming\Mozilla\Firefox aus.

    Du musst aber alles in den Installationsordner unter
    C:\Program Files\Mozilla Firefox

    abspeichern.

    Mfg.
    Endor

  • CSS-Dateien werden nicht geladen

    • Endor
    • 5. Juli 2023 um 14:56

    BarbaraZ-
    Falls es immer noch nicht geht, zeig uns mal den Inhalt
    deiner beiden Dateien:

    config.js

    main.js

    Mfg.
    Endor

Unterstütze uns!

Jährlich (2025)

92,9 %

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

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