Entschuldigung, deine Antwort ist bei mir untergegangen. Ja, das ist die Zeile.
Beiträge von bege
-
-
Ich sehe in der Konsole diese Fehlermeldung:
undefined has no properties addons_ver_day_updatecheck.uc.js:10:5
Kann damit jemand was anfangen?
-
kann ich das Popup-Menü nicht mehr scrollen.
Teste bitte mal dieses angepasste Skript: ...
Solltest du in der userChrome.css einen Code für die Scrollleiste haben, den dann bitte mal entfernen.
Die ist jetzt im Skript enthalten, Zeile 54 - 60. Dort kannst du dir die Höhe vom Popup noch anpassen.
Funktioniert! Dankeschön! Edit: auch ohne Zeile 8. HelperAppDlg wird nirgendwo verwendet.
Edit:
Es hat bis vor einiger Zeit noch funktioniert. Wenn ich das mit dem von lenny2 zitierten Thema vergleiche, sieht es so aus, als hätte ich mir die bereits geänderte Version irgendwie zerschossen. Dann lag es wohl nicht am Fx-Update.
-
Im Skript SaveTo.uc.js kann ich das Popup-Menü nicht mehr scrollen. Dadurch komme ich in einem Menü mit vielen Einträgen nicht mehr an die unteren Einträge heran. Das könnte auch schon im Fx135 so gewesen sein.
In der Version im Github von Endor ist das auch so.
Hier meine Version
JavaScript: SaveTo.uc.js
Alles anzeigen// ==UserScript== // @include chrome://mozapps/content/downloads/unknownContentType.xhtml // @charset UTF-8 // @version Fx104+ // ==/UserScript== (function () { if (location != 'chrome://mozapps/content/downloads/unknownContentType.xhtml') return; const { FileUtils } = ChromeUtils.importESModule( 'resource://gre/modules/FileUtils.sys.mjs'); setTimeout(function () { saveTo(); }, 200); function saveTo() { // Config const dirArray = [ ['F:\\Users\\bege\\Desktop', 'Desktop'], ['F:\\Downloads', 'Downloads'], ['F:\\Eigene Dateien\\Eigene Bilder\\Symbole', 'Symbole'], ['F:\\Users\\bege\\AppData\\Roaming\\Mozilla\\Firefox\\icons', 'Firefox\\Icons'], ['F:\\Setups\\Audio-Video', 'Setups\\Audio-Video'], ['F:\\Setups\\Dateiverwaltung', 'Setups\\Dateiverwaltung'], ['F:\\Setups\\Dateiverwaltung\\FreeCommander', 'Setups_FreeCommander'], ['F:\\Setups\\Editoren', 'Setups\\Editoren'], ['F:\\Setups\\Editoren\\Notepad++', 'Setups\\Notepad++'], ['F:\\Setups\\Grafik', 'Setups\\Grafik'], ['F:\\Setups\\Internet', 'Setups\\Internet'], ['F:\\Setups\\Office\\LibreOffice', 'Setups_LibreOffice'], ['F:\\Setups\\Sicherheit\\KeePass', 'Setups\\Sicherheit\\KeePass'], ['F:\\Setups\\Tools', 'Setups\\Tools'], ['F:\\Setups\\Tools\\W10', 'Setups\\Tools\\W10'], ['F:\\Setups\\Wartung', 'Setups\\Wartung'], ['F:\\Setups\\Wartung\\System u. Hardware', 'Setups\\Wartung\\System, Hardw.'], ['F:\\Eigene Dateien\\Eigene Bilder\\aktuelleDownloads', 'Bilder'], ['F:\\Eigene Dateien\\Eigene Musik\\aktuelleDownloads', 'Musik'], ['F:\\Eigene Dateien\\Eigene Videos\\aktuelleDownloads', 'Videos'], [FileUtils.getDir('UChrm', []).path, 'chrome'], [FileUtils.getDir('UChrm', ['CSS']).path, 'CSS'], [FileUtils.getDir('UChrm', ['JS']).path, 'JS'], /* ['C:\\', 'C:'], ['E:\\', 'E:'], ['F:\\', 'F:'], ['S:\\', 'S:'] */ ]; const button = document.getElementById('unknownContentType').getButton('cancel'); const saveTo = button.parentNode.insertBefore(document.createXULElement('button'), button); const saveToMenu = saveTo.appendChild(document.createXULElement('menupopup')); saveTo.classList.toggle('dialog-button'); saveTo.label = 'Speichern in…'; saveTo.type = 'menu'; const css =` hbox.dialog-button-box button.dialog-button menupopup { // color: white !important; background: #eeeeee !important; } hbox.dialog-button-box button.dialog-button menupopup menuitem.menuitem-iconic { padding-left: 8px !important; } hbox.dialog-button-box button.dialog-button menupopup menuitem.menuitem-iconic:hover { background: red !important; // color: white !important; } //hbox.dialog-button-box button.dialog-button menupopup menuitem.menuitem-iconic hbox.menu-iconic-left { // transform: scale(.5) !important; //max-height: 20px !important; //} hbox.dialog-button-box button.dialog-button menupopup menuitem.menuitem-iconic label.menu-iconic-text { padding-right: 8px !important; padding-left: 8px !important; color: black !important; } //hbox.dialog-button-box button.dialog-button menupopup menuitem.menuitem-iconic hbox.menu-accel-container { //max-height: 18px !important; //} `; const sss = Cc['@mozilla.org/content/style-sheet-service;1'].getService(Ci.nsIStyleSheetService); const uri = Services.io.newURI('data:text/css,' + encodeURIComponent(css)); sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET); dirArray.forEach(function (directory) { const [name, dir] = [directory[1], directory[0]]; const mi = document.createXULElement('menuitem'); const item = saveToMenu.appendChild(mi); item.setAttribute('label', (name || (dir.match(/[^\\/]+$/) || [dir])[0])); item.setAttribute('image', 'moz-icon:file:///' + dir + '\\'); item.setAttribute('class', 'menuitem-iconic'); item.addEventListener('command', function () { const locationtext = document.getElementById('locationtext'); const pathFile = dir + '\\' + (locationtext ? locationtext.value : document.getElementById('location').value); const file = new FileUtils.File(pathFile); dialog.mLauncher.saveDestinationAvailable(file); dialog.onCancel = function () {}; close(); }); }); } }());
-
Dieses Skript spielt keinen Ton mehr ab, wenn ein Download fertig ist, seit dem Update auf Fx 136.
JavaScript: downloadSoundPlay.uc.js
Alles anzeigen// ==UserScript== // @name downloadSoundPlay_Fx26.uc.js // @namespace http://space.geocities.yahoo.co.jp/gl/alice0775 // @description Downloads überwachen und Ton Dateien für Download-Manager abspielen // @include main // @compatibility Firefox 115 // @author Alice0775 // @version 2023/10/13 use ChromeUtils.import instead of XPCOMUtils.defineLazyModuleGetter // @version 2016/03/15 hack of selection chanhe // @version 2015/01/15 1:00 Fixed strictmode // @version 2013/12/18 11:00 defineLazyModuleGetter for Firefox26 // @version 2013/12/18 Firefox26 // @version 2009/11/28 // ==/UserScript== var downloadPlaySound = { // -- config -- DL_START : null, DL_DONE : "file:///C:/WINDOWS/Media/tada.wav", DL_CANCEL: null, DL_FAILED: "file:///C:/Windows/Media/XP/Windows Error.wav", // -- config -- _list: null, init: function sampleDownload_init() { const { Downloads } = ChromeUtils.import( "resource://gre/modules/Downloads.jsm"); //window.removeEventListener("load", this, false); window.addEventListener("unload", this, false); //**** Download-Überwachung hinzufügen if (!this._list) { Downloads.getList(Downloads.ALL).then(list => { this._list = list; return this._list.addView(this); }).then(null, Cu.reportError); } }, uninit: function() { window.removeEventListener("unload", this, false); if (this._list) { this._list.removeView(this); } }, onDownloadAdded: function (aDownload) { //**** Startereignis herunterladen if (this.DL_START) this.playSoundFile(this.DL_START); }, onDownloadChanged: function (aDownload) { //**** Download abbrechen if (aDownload.canceled && this.DL_CANCEL) this.playSoundFile(this.DL_CANCEL) //**** Herunterladen fehlgeschlagen if (aDownload.error && this.DL_FAILED) this.playSoundFile(this.DL_FAILED) //**** Download abgeschlossen if (typeof aDownload.downloadPlaySound == "undefined" && aDownload.succeeded && aDownload.stopped && this.DL_DONE) { aDownload.downloadPlaySound = true; this.playSoundFile(this.DL_DONE); } }, playSoundFile: function(aFilePath) { if (!aFilePath) return; var ios = Components.classes["@mozilla.org/network/io-service;1"] .createInstance(Components.interfaces["nsIIOService"]); try { var uri = ios.newURI(aFilePath, "UTF-8", null); } catch(e) { return; } var file = uri.QueryInterface(Components.interfaces.nsIFileURL).file; if (!file.exists()) return; this.play(uri); }, play: function(aUri) { var sound = Components.classes["@mozilla.org/sound;1"] .createInstance(Components.interfaces["nsISound"]); sound.play(aUri); }, handleEvent: function(event) { switch (event.type) { case "unload": this.uninit(); break; } } } downloadPlaySound.init();
Die Fehlerkonsole wirft den Fehler aus, dass in Zeile 26 ChromeUtils.import keine Funktion ist.
Nach der Änderung in ChromeUtils.importESModule kommt die Fehlermeldung
"Failed to load resource://gre/modules/Downloads.jsm"
Edit: Doch noch selbst herausgefunden. Das hier funktioniert.
JavaScript: downloadSoundPlay.uc.js
Alles anzeigen// ==UserScript== // @name downloadSoundPlay_Fx26.uc.js // @namespace http://space.geocities.yahoo.co.jp/gl/alice0775 // @description Downloads überwachen und Ton Dateien für Download-Manager abspielen // @include main // @compatibility Firefox 115 // @author Alice0775 // @version 2023/10/13 use ChromeUtils.import instead of XPCOMUtils.defineLazyModuleGetter // @version 2016/03/15 hack of selection chanhe // @version 2015/01/15 1:00 Fixed strictmode // @version 2013/12/18 11:00 defineLazyModuleGetter for Firefox26 // @version 2013/12/18 Firefox26 // @version 2009/11/28 // ==/UserScript== var downloadPlaySound = { // -- config -- DL_START : null, DL_DONE : "file:///C:/WINDOWS/Media/tada.wav", DL_CANCEL: null, DL_FAILED: "file:///C:/Windows/Media/XP/Windows Error.wav", // -- config -- _list: null, init: function sampleDownload_init() { const { Downloads } = ChromeUtils.importESModule( "resource://gre/modules/Downloads.sys.mjs"); //window.removeEventListener("load", this, false); window.addEventListener("unload", this, false); //**** Download-Überwachung hinzufügen if (!this._list) { Downloads.getList(Downloads.ALL).then(list => { this._list = list; return this._list.addView(this); }).then(null, Cu.reportError); } }, uninit: function() { window.removeEventListener("unload", this, false); if (this._list) { this._list.removeView(this); } }, onDownloadAdded: function (aDownload) { //**** Startereignis herunterladen if (this.DL_START) this.playSoundFile(this.DL_START); }, onDownloadChanged: function (aDownload) { //**** Download abbrechen if (aDownload.canceled && this.DL_CANCEL) this.playSoundFile(this.DL_CANCEL) //**** Herunterladen fehlgeschlagen if (aDownload.error && this.DL_FAILED) this.playSoundFile(this.DL_FAILED) //**** Download abgeschlossen if (typeof aDownload.downloadPlaySound == "undefined" && aDownload.succeeded && aDownload.stopped && this.DL_DONE) { aDownload.downloadPlaySound = true; this.playSoundFile(this.DL_DONE); } }, playSoundFile: function(aFilePath) { if (!aFilePath) return; var ios = Components.classes["@mozilla.org/network/io-service;1"] .createInstance(Components.interfaces["nsIIOService"]); try { var uri = ios.newURI(aFilePath, "UTF-8", null); } catch(e) { return; } var file = uri.QueryInterface(Components.interfaces.nsIFileURL).file; if (!file.exists()) return; this.play(uri); }, play: function(aUri) { var sound = Components.classes["@mozilla.org/sound;1"] .createInstance(Components.interfaces["nsISound"]); sound.play(aUri); }, handleEvent: function(event) { switch (event.type) { case "unload": this.uninit(); break; } } } downloadPlaySound.init();
-
Hier wird beschrieben, was du dazu brauchst:
Manchmal frage ich mich, warum Leute Artikel nicht bis zum Ende lesen. Heute frage ich mich das über mich selbst. Da steht es am Ende. 🙄
So, Button weg, User zufrieden! Dankeschön euch!
-
Es sieht so aus, als ob die Elemente unter #shadow-root liegen, sprich, CSS-Anweisungen müssen in die userChromeShadow.css und nicht in die userChrome.css.
Wenn ich das Skript zum Laden der userChromeShadow.css doch mal brauche, wie muss dieses Skript aussehen? Der verlinkte Code von aborix ist nur ein Schnipsel.
-
Ich lade die CSS-Dateien mit dem userCSSLoader. Mit der Datei, in die ich den Code eingefügt hatte, funktioniert etwas nicht. In einer neuen Datei klappt's. Vielen Dank!
-
Es sieht so aus, als ob die Elemente unter #shadow-root liegen, sprich, CSS-Anweisungen müssen in die userChromeShadow.css und nicht in die userChrome.css.
Weil im angepinnten Beitrag von BrokenHeart steht:
Die neue Methode um 'css'-Regeln anzuwenden, wird nur für Regeln benötigt, die einen ::part() Selektor beinhalten.
dachte ich, das gilt hier nicht. Ist diese Einschränkung überholt?
Klappe mal bitte den genauen Bereich im Inspektor weiter auf - also unter moz-button... Vielleicht sehe ich dann eine Möglichkeit..
Es geht um den hier:
-
-
Ich finde es sieht so aus, als ob er gleich runterfällt, der Arme. 😢
-
Aktuell ist Firefox 135. Wenn du jetzt für v134 anpackst, kannst du für v135 wieder alles neu denken.
Ich habe mich vertippt, ich habe Fx 135 und deswegen alle Skripte aktualisiert.
Verschiebbar konnte ich es mit einigen Versuchen machen, aber der Text wurde dann nicht mehr angezeigt
-
Hallo,
kann mir jemand dabei helfen, dieses clickbare Panel verschiebbar zu machen? Bisher wird es über die ID eines benachbarten Elements positioniert. Ich würde es gern wie einen Button verschiebbar machen. Geht das?
JavaScript
Alles anzeigen// ==UserScript== // @name VersionInAddonBar.uc.js // @description Versionsnummer in der Addon-Bar anzeigen // @include main // @charset UTF-8 // @note Basiert auf dem Script MemoryMonitorMod.uc.js und der Erweiterung "Version in Statusbar" // @note Bit-Version aus https://www.camp-firefox.de/forum/thema/135247-anwendungsname-und-version-in-der-men%C3%BCleiste/ // @note In Zeilen 17 u. 18 die Toolbar und die Position (hinter welchem Element) auf der Toolbar anpassen. // @note Ein Klick auf den Button öffnet das Fenster "Über Firefox". // ==/UserScript== setTimeout(function() { var ucjsVN = { init : function () { let profile = Cc["@mozilla.org/toolkit/profile-service;1"].getService(Ci.nsIToolkitProfileService).currentProfile.name; var Toolbar = 'addonbar'; var Position = 'customizableui-special-separator177'; // var Position = 'formhistory_yahoo_com-browser-action'; // var Position = 'textarea-cache-lite_wildsky_cc-browser-action'; var info = Components.classes['@mozilla.org/xre/app-info;1'].getService(Components.interfaces.nsIXULAppInfo); var bit = (Services.appinfo.is64Bit ? 64 : 32); var versionPanel = document.createXULElement('toolbaritem'); versionPanel.id = 'VersionDisplay'; versionPanel.setAttribute('tooltiptext', 'Versions-Nummer. Klick öffnet "Über ' + info.vendor + ' ' + info.name + '"'); versionPanel.addEventListener('click', function () { openAboutDialog(); }); versionPanel.style.paddingTop = '4px'; var label = document.createXULElement('label'); label.setAttribute('value', "v" + info.version + " (" + bit + "bit)" + " [" + profile + "]"); versionPanel.appendChild(label); document.getElementById(Toolbar).insertBefore(versionPanel, document.getElementById(Position).nextSibling); }, } ucjsVN.init(); }, 3000);
-
Ich kann die verschiedenen Bedürfnisse verstehen. Wenn es in dem von 2002Andreasgenannten Thema Beschwerden gab und in diesem hier nicht, wäre ich dankbar, die beiden Themen entsprechend unterschiedlich zu behandeln. Da wir auf das Github von Endor angewiesen sind, bitte ich, auch seine Meinung zu berücksichtigen.
Danke euch beiden für die hilfreiche Arbeit. 💛
-
Nur mal so als Hinweis.
Bitte für Fragen bei Problemen mit Skripten etc., einen eigenen neuen Thread erstellen, und nicht alles in diesem Sammelthread posten, danke.
Es wurden seit Jahren in diesem Thema Skript-Probleme vor allem mit den Skripten ursprünglich aus Ardimans, jetzt aus Endors Github diskutiert. Ich gebe zu, dass mein letzter Beitrag hier zu einem Skript von Aris war, aber das Problem betraf alle Skripte für zusätzliche Addon-Leisten. Es stimmt, man kann das in einzelnen Themen behandeln. Da ich nicht laufend hier im Forum unterwegs bin, war es für mich hilfreich, dass ich immer wusste, wo ich nach Lösungen für nicht mehr funktionierende Skripte suchen konnte. Und vor allem, ich hatte dieses Thema abonniert, so konnte ich die Benachrichtigungsmails überfliegen und sehen, ob ein Update zu neuen Problemen geführt hat. Wenn das jeweils in neuen Themen behandelt wird, bekomme ich diese E-Mails nicht mehr. Ich fände das schade und für mich deutlich aufwändiger. Ich hoffe, dafür gibt es noch einen einfachen Weg.
Wofür ist dann in Zukunft dieses Thema gedacht?
-
Das ist ja genial, dass du die chrome://browser/content/browser-menubar.js direkt einliest. Ich hatte sie bisher in ein Skript kopiert und hätte das bei Änderungen im Zusammenhang mit Updates immer händisch ändern müssen. Dankeschön!
Mit dieser abgespeckten Version kann ich das Skript für das ursprüngliche App-Menu-Skript verwenden, das ich ja auch mit einem weiteren Skript u.a. um die Menüeinträge erweitert habe.
Ich verstehe zwar nur den oberen Teil, aber es funktioniert! 👍
JavaScript
Alles anzeigen(function () { setTimeout(async function () { // bind event let source = await readSource('chrome://browser/content/browser-menubar.js'); source = source.replace("main-menubar", "AMpopup").replace({ once: true }, '') eval(source); async function readSource (url) { return new Promise(resolve => { let xhr = new XMLHttpRequest(); xhr.open('GET', url); xhr.onload = function () { resolve(xhr.responseText); }; xhr.send(); }); } }, 300); })();
-
Danke für eure Bemühungen. Wenn ihr mein oben verlinktes Github-Issue bei Aris anschaut und die folgenden Beiträge auf meinen zitierten Beitrag zu dem Problem hier in diesem Forum, wird klar, das im Fx 134 aus der Download-Button Funktion der Event-Handler entfernt wurde (oder so ähnlich, sorry für den Kauderwelsch eines Nur-Bastlers). Der soll durch den Zusatzcode ersetzt werden. Für Nutzer, die einen anderen Skript-Loader benutzen, scheint das zu funktionieren (siehe nochmal das Github-Issue, hier aber nicht.
-
Mit Fx 133.0 funktioniert der Downloads-Button in der Addon-Bar von aris nicht mehr, das Popup-Fenster wird nicht angezeigt. In der normalen Leiste des Fx und im Überhangmenü funktioniert es. Kann das jemand bestätigen?
JavaScript: addonbar.us.js
Alles anzeigen// Add-on Bar script for Firefox 126+ by Aris // // no 'close' button // 'toggle' toolbar with 'Ctr + /' on Windows/Linux or 'Cmd + /' on macOS // no 'Add-on Bar' entry in toolbar context menu // // option: smaller buttons / reduced toolbar button height // // flexible spaces on add-on bar behave like on old Firefox versions // [!] Fix for WebExtensions with own windows by 黒仪大螃蟹 (for 1-N scripts) var appversion = parseInt(Services.appinfo.version); var compact_buttons = false; // reduced toolbar height and smaller buttons var AddAddonbar = { init: function() { if (location != 'chrome://browser/content/browser.xhtml') return; /* blank tab workaround */ try { if(gBrowser.selectedBrowser.getAttribute('blank')) gBrowser.selectedBrowser.removeAttribute('blank'); } catch(e) {} try { Services.prefs.getDefaultBranch('browser.addonbar.').setBoolPref('enabled',true); } catch(e) {} var addonbar_label = 'Add-on Bar'; var compact_buttons_code = ''; if(compact_buttons) compact_buttons_code = ` #addonbar toolbarbutton .toolbarbutton-icon { padding: 0 !important; width: 16px !important; height: 16px !important; } #addonbar .toolbarbutton-badge-stack { padding: 0 !important; margin: 0 !important; width: 16px !important; min-width: 16px !important; height: 16px !important; min-height: 16px !important; } #addonbar toolbarbutton .toolbarbutton-badge { margin-top: 0px !important; font-size: 5pt !important; min-width: unset !important; min-height: unset !important; margin-inline-start: 0px !important; margin-inline-end: 0px !important; } #addonbar .toolbaritem-combined-buttons { margin-inline: 0px !important; } #addonbar toolbarbutton { padding: 0 !important; } `; // style sheet Components.classes['@mozilla.org/content/style-sheet-service;1'].getService(Components.interfaces.nsIStyleSheetService).loadAndRegisterSheet( Services.io.newURI('data:text/css;charset=utf-8,' + encodeURIComponent(` #addonbar toolbarpaletteitem[place=toolbar][id^=wrapper-customizableui-special-spring], #addonbar toolbarspring { -moz-box-flex: 1 !important; min-width: unset !important; width: unset !important; max-width: unset !important; } #main-window[customizing] #addonbar { outline: 1px dashed !important; outline-offset: -2px !important; } #addonbar { border-top: 1px solid var(--sidebar-border-color,rgba(0,0,0,0.1)) !important; background-color: var(--toolbar-bgcolor); background-image: var(--toolbar-bgimage); -moz-window-dragging: no-drag !important; } :root[lwtheme] #addonbar { background: var(--lwt-accent-color) !important; } :root[lwtheme][lwtheme-image='true'] #addonbar { background: var(--lwt-header-image) !important; background-position: 0vw 50vh !important; } /* autohide add-on bar in fullscreen mode */ /*#main-window[sizemode='fullscreen']:not([inDOMFullscreen='true']) #addonbar { visibility: visible !important; display: block !important; min-height: 1px !important; height: 1px !important; max-height: 1px !important; } #main-window[sizemode='fullscreen']:not([inDOMFullscreen='true']) #addonbar:hover { min-height: 24px !important; height: 24px !important; max-height: 24px !important; }*/ #unified-extensions-button[hidden]{ visibility: visible !important; display: flex !important; } `+compact_buttons_code+` `), null, null), Components.classes['@mozilla.org/content/style-sheet-service;1'].getService(Components.interfaces.nsIStyleSheetService).AGENT_SHEET ); // toolbar try { if(document.getElementById('addonbar') == null) { var tb_addonbar = document.createXULElement('toolbar'); tb_addonbar.setAttribute('id','addonbar'); tb_addonbar.setAttribute('collapsed', 'false'); tb_addonbar.setAttribute('toolbarname', addonbar_label); tb_addonbar.setAttribute('defaultset','spring,spring'); tb_addonbar.setAttribute('customizable','true'); tb_addonbar.setAttribute('mode','icons'); tb_addonbar.setAttribute('iconsize','small'); tb_addonbar.setAttribute('context','toolbar-context-menu'); tb_addonbar.setAttribute('lockiconsize','true'); tb_addonbar.setAttribute('class','toolbar-primary chromeclass-toolbar browser-toolbar customization-target'); document.getElementById('browser').parentNode.appendChild(tb_addonbar); CustomizableUI.registerArea('addonbar', {legacy: true}); setTimeout(function(){ CustomizableUI.registerArea('addonbar', {legacy: true}); },2000); CustomizableUI.registerToolbarNode(tb_addonbar); // 'Ctr + /' on Windows/Linux or 'Cmd + /' on macOS to toggle add-on bar var key = document.createXULElement('key'); key.id = 'key_toggleAddonBar'; key.setAttribute('key', '/'); key.setAttribute('modifiers', 'accel'); key.setAttribute('oncommand',` var newAddonBar = document.getElementById('addonbar'); setToolbarVisibility(newAddonBar, newAddonBar.collapsed); Services.prefs.getBranch('browser.addonbar.').setBoolPref('enabled',!newAddonBar.collapsed); `); document.getElementById('mainKeyset').appendChild(key); try { setToolbarVisibility(document.getElementById('addonbar'), Services.prefs.getBranch('browser.addonbar.').getBoolPref('enabled')); } catch(e) {} } } catch(e) {} } } /* initialization delay workaround */ document.addEventListener('DOMContentLoaded', AddAddonbar.init(), false); /* Use the below code instead of the one above this line, if issues occur */ /* setTimeout(function(){ AddAddonbar.init(); },2000); */
Das Problem besteht weiter, obwohl es gerade ein Update für das Skript gab.
Meine Meldung auf Github ist verwaist. Dort gibt es Lösungsvorschläge, die aber wohl nur mit einem anderen Skriptloader funktionieren. Weiß jemand eine Lösung mit "unserem" Skriptloader, also dem in Endors Github?
-
Zitat
Links aus der Adressleiste: ab Fx 60: about:config - browser.urlbar.openintab auf true setzen
Links aus der Suchzeile: about:config - browser.search.openintab auf true setzen
Links aus den Lesezeichen: about:config - browser.tabs.loadBookmarksInTabs auf true setzen
Links zu anderen Seiten: Erweiterung Open Link with New Tab https://addons.mozilla.org/de/firefox/add…k-with-new-tab/
Links im Vordergrund öffnen: about:config browser.tabs.loadBookmarksInBackground auf false setzen
Aus meinem Notizen kopiert. Ob alle Werte noch so stimmen, weis ich nicht. Aber ein Versuch kann nicht schaden.
Genau so steht's in meiner user.js und funktioniert.
-
Kann das jemand bestätigen?
Ist hier auch so.
Klick auf den Button, und es passiert nichts.
Dankeschön! Ich habe das bei Aris gemeldet.