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

Beiträge von BrokenHeart

  • Fix: Toolbar-Buttons reagieren nicht mehr ab FF 134

    • BrokenHeart
    • 29. Januar 2025 um 13:16
    Zitat von Mitleser

    Ich hoffe, dass ich das richtig verstanden habe? Hier funktioniert der #unified-extensions-button nicht mehr nach dem Verschieben mit diesem Script:

    Ja hast du ;) :thumbup:. Den unified-extensions-button hatte ich erst mal ausgelassen, da er bei mir ohne ein Extra-Skript nicht über 'Symbolleiste anpassen...' aus der Navbar zu verschieben war. Ich wusste gar nicht, dass es so ein Skript gibt. Werde ich dann auch anpassen, falls das funktioniert.

  • Fix: Toolbar-Buttons reagieren nicht mehr ab FF 134

    • BrokenHeart
    • 29. Januar 2025 um 12:18
    Zitat von FuchsFan

    Danke, das funktioniert mit den von Dir eingetragenen System-Button. Ich musste passen, konnte es nicht fertig bringen, dass auch z.B. about-config-Button, about-translations-Button, usw., starten, wenn sie sich in der Addonbar befinden (Nightly aktuell).

    Der "Fehler" betrifft ja nur bestimmte Buttons, die von Firefox selbst kommen, wie z.B. Download-Button, View-Button u.a., Mozilla hat Änderungen an den EventListenern für diese Buttons vorgenommen, so dass sie außerhalb der Standard-Toolbars nicht mehr funktionieren. Das Skript behebt genau das...

    Zitat von FuchsFan

    Wie müsste so ein Eintrag aussehen?

    Du musst da überhaupt nichts anpassen oder in das Skript eintragen, da diese Buttons weiterhin in allen Toolbars funktionieren. Oder habe ich dich falsch verstanden?

    Zitat von Dharkness

    Dieses Script funktioniert bei mir ohne extra Anpassungen in der #addonbar_v, die ist doch gemeint, oder?

    Genau so ist es! Der Fix betrifft keine selbst erstellten Buttons über UserChrome-Skripte,

    --

    Es kann sein, dass es noch weitere Buttons gibt (geben wird), die ab FF134 (FF136) nicht mehr in eigenen Toolbars funktionieren. Wäre gut, wenn das dann jemand meldet, damit ich dafür einen neuen Listener/Handler erzeugen kann.


    Zum jetzigen Zeitpunkt werden diese sechs Buttons gefixt (siehe Skript):

  • addonbar.us.js funktioniert nicht mehr

    • BrokenHeart
    • 29. Januar 2025 um 07:37
    Zitat von BrokenHeart

    Was ich Speravir schon weiter oben geschrieben hatte: werde nur ein eigenständiges Skript (oder eine einzige Funktion) für die restlichen Buttons zur Verfügung stellen, welches dann in allen Toolbars außerhalb der 'navigator-toolbox' die Funktionalität wiederherstellt, nicht nur bei diesem Skript von Aris.

    Darum geht es jetzt hier weiter:

    Beitrag

    Fix: Toolbar-Buttons reagieren nicht mehr ab FF 134

    Ausgehend von diesen Beitrag:

    addonbar.us.js funktioniert nicht mehr Hier das versprochene Skript, welches die vorherige Funktionalität für alle Buttons wiederherstellt, welche ab FF134 nicht mehr auf einen Mausklick reagiert haben, wenn sie außerhalb des Bereichs der navigator-toolbox verschoben wurden.



    Die bestehenden Toolbars brauchen (sollen!) dafür nicht verändert werden.

    Als einzige Angabe erwartet das Skript in Zeile 11 die ID(s) der genutzten Toolbar(s), welche in dem Array toolbarIDs…
    BrokenHeart
    29. Januar 2025 um 07:36
  • Fix: Toolbar-Buttons reagieren nicht mehr ab FF 134

    • BrokenHeart
    • 29. Januar 2025 um 07:36

    Ausgehend von diesen Beitrag:

    Beitrag

    addonbar.us.js funktioniert nicht mehr

    […]

    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?
    bege
    25. Januar 2025 um 21:37

    Hier das versprochene Skript, welches die vorherige Funktionalität für alle Buttons wiederherstellt, welche ab FF134 nicht mehr auf einen Mausklick reagiert haben, wenn sie außerhalb des Bereichs der navigator-toolbox verschoben wurden.

    Die bestehenden Toolbars brauchen (sollen!) dafür nicht verändert werden.

    Als einzige Angabe erwartet das Skript in Zeile 11 die ID(s) der genutzten Toolbar(s), welche in dem Array toolbarIDs angegeben werden müssen. z.B. :

    const toolbarIDs = ['addonbar'];   
    oder
    const toolbarIDs = ['addonbar', 'bottom_toolbar'/*, ... */] ; 


    Aktuellste Version: 02.02.2025 v0.2

    JavaScript
    // 'FixToolbarButtons.uc.js' by BrokenHeart💔   
    //
    // The script adds several button-events to custom-toolbars(XUL), which were created outside the 'navigator-toolbox'. 
    // Firefox: 134+ 
    //
    // https://www.camp-firefox.de/forum/thema/138875-fix-nicht-mehr-reagierende-buttons-in-per-skript-erzeugten-toolbars/?postID=1264979#post1264979
    //
    // 29.01.2025 v0.1  
    // 02.02.2025 v0.2 | check if the toolbar, listed in the array, really exists.
    
    (function() {
    	
    	// ---------------------------------------------
        const toolbarIDs = [/*'addonbar', ... */];   
    	// ---------------------------------------------
    	
    	if (!window.gBrowser)
    		return;
    	
    	if (window.readyState !== "loading") 
    		setTimeout( initToolbarButtonEvents, 500 ); 
        else 
    		window.addEventListener( "DOMContentLoaded", initToolbarButtonEvents );
    	
    	window.addEventListener('aftercustomization', () =>
    		setTimeout(() => initToolbarButtonEvents(), 100 )
    	)
    		
    	function initToolbarButtonEvents() {
    		toolbarIDs.forEach((toolbarID) => {
    			if((tbid = document.getElementById(toolbarID)) != null ) {
    				for (const child of tbid.children) {
    					switch(child["id"]) {
    						case "downloads-button":  
    							let dlButton = document.getElementById('downloads-button');
    							dlButton.removeEventListener('mousedown', handleDlButtonEvent);
    							dlButton.addEventListener('mousedown', handleDlButtonEvent);
    						break;
    						case "library-button":  
    							let libButton = document.getElementById('library-button');
    							libButton.removeEventListener('mousedown', handleLibButtonEvent);
    							libButton.addEventListener('mousedown', handleLibButtonEvent);
    						break;
    						case "alltabs-button":  
    							let allTabsButton = document.getElementById('alltabs-button');
    							allTabsButton.removeEventListener('mousedown', handleAllTabsButtonEvent);
    							allTabsButton.addEventListener('mousedown', handleAllTabsButtonEvent);
    						break;
    						case "firefox-view-button":  
    							let viewButton = document.getElementById('firefox-view-button');
    							viewButton.removeEventListener('mousedown', handleViewButtonEvent);
    							viewButton.addEventListener('mousedown', handleViewButtonEvent);
    						break;
    						case "fxa-toolbar-menu-button":  
    							let fxaMenuButton = document.getElementById('fxa-toolbar-menu-button');
    							fxaMenuButton.removeEventListener('mousedown', handleFxaMenuButtonEvent);
    							fxaMenuButton.addEventListener('mousedown', handleFxaMenuButtonEvent);
    						break;
    						case "import-button":  
    							let importButton = document.getElementById('import-button');
    							importButton.removeEventListener('command', handleImportButtonEvent);
    							importButton.addEventListener('command', handleImportButtonEvent);
    						break;
    						case "ucjs_unified-extensions-button":  
    							let extensionsButton = document.getElementById('ucjs_unified-extensions-button');
    							extensionsButton.removeEventListener('command', handleExtensionsButton);
    							extensionsButton.addEventListener('command', handleExtensionsButton);
    						break;
    					}
    				}
    			}
    			else {
    				console.log( "Warning: Toolbar [" + toolbarID + "] unknown!");
    			}
    		})
    	}	
    
    	
    	function handleDlButtonEvent(event) { 
    		DownloadsIndicatorView.onCommand(event);
    	}
    	function handleLibButtonEvent(event) {
    		PanelUI.showSubView("appMenu-libraryView", document.getElementById('library-button'), event);
    	}
    	function handleAllTabsButtonEvent(event) {  
    		gTabsPanel.showAllTabsPanel(event, "alltabs-button");
    	}
    	function handleViewButtonEvent(event) { 
    		FirefoxViewHandler.openToolbarMouseEvent(event);
    	}
    	function handleFxaMenuButtonEvent(event) { 
    		gSync.toggleAccountPanel(document.getElementById('fxa-toolbar-menu-button'), event);
    	}
    	function handleImportButtonEvent(event) { 
    		MigrationUtils.showMigrationWizard(window, {
                entrypoint: MigrationUtils.MIGRATION_ENTRYPOINTS.BOOKMARKS_TOOLBAR,
    		});
    	}
    	function handleExtensionsButton(event) { 
    		gUnifiedExtensions.togglePanel(event);
    	}
    
    })();
    Alles anzeigen

    Damit der Button'unified-extensions-button in eine Extra-Toolbar verschoben werden kann, muss folgendes Skript (danke Mitleser) benutzt werden:

    Beitrag

    RE: Fix: Toolbar-Buttons reagieren nicht mehr ab FF 134

    […]

    Ich hoffe, dass ich das richtig verstanden habe? Hier funktioniert der #unified-extensions-button nicht mehr nach dem Verschieben mit diesem Script:

    (Quelltext, 46 Zeilen)

    Mitleser
    29. Januar 2025 um 13:08

    Allerdings funktioniert dieses Verschiebe-Skript nicht in jeder Situation( z.B. Entfernen des Extension-Button aus allen Toolbars + Neustart) wirklich einwandfrei, hier muss eventuell noch eine andere Lösung gefunden werden!

  • addonbar.us.js funktioniert nicht mehr

    • BrokenHeart
    • 28. Januar 2025 um 11:56
    Zitat von 2002Andreas

    Damit funktioniert es :thumbup:

    Mit dem aus Beitrag Nr. 23 nicht.

    Ebenfalls danke fürs Testen.:thumbup:

    Dann hatte ich zu viel im Skript von Aris "wegoptimiert". Wie üblich ein Timing Problem. Ich war der Meinung 1s sollten ausreichen. Aber das schwankt wohl stark von Rechner zu Rechner. Die Lösung in #28 ist eh die korrektere Variante... :)

    Zitat von 2002Andreas

    Ich weiß nicht ob dir das hilft, aber ich nutze hier ein viel kürzeres Skript für diese Leiste unten.

    Ich nutze die Addon-Bar von Aris auch nicht, sondern eine angepasste Statusleiste, in der man genauso Buttons verstauen kann. Im Prinzip ist der Aufbau ja fast überall identisch. Was ich Speravir schon weiter oben geschrieben hatte: werde nur ein eigenständiges Skript (oder eine einzige Funktion) für die restlichen Buttons zur Verfügung stellen, welches dann in allen Toolbars außerhalb der 'navigator-toolbox' die Funktionalität wiederherstellt, nicht nur bei diesem Skript von Aris. Es ging mir hier nur um das prinzipielle Austesten einer Idee... ;)

  • addonbar.us.js funktioniert nicht mehr

    • BrokenHeart
    • 28. Januar 2025 um 09:43
    Zitat von FuchsFan

    Hier funktioniert es leider nicht mit dem Button.

    Danke fürs Testen :thumbup:

    Hier funktioniert es mit dem Skript, sowohl in FF134 als auch in FF136.


    Teste bitte nochmal:

    JavaScript
    // 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)
    // [!] 27.01.2025 Fix FF 134+ (DonloadButton) by BrokenHeart💔
    
    (function() {
    
    	if (!window.gBrowser){
            return;
        }
    
    	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);
    			//tb_addonbar.insertBefore(document.querySelector('#statuspanel'),tb_addonbar.firstChild);
    			
    			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.addEventListener("command", () => {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) {}
    		
    		try {
    			setToolbarVisibility(document.getElementById('addonbar'), Services.prefs.getBranch('browser.addonbar.').getBoolPref('enabled'));
    			
    		} 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 */
    	if (!window.gBrowser){
    			return;
    	}
    	
    	document.addEventListener('DOMContentLoaded', AddAddonbar.init(), false);
    	
    	setTimeout(function(){
    	  addonBarEvents();
    	},0);
    	
    	
    	function addonBarEvents() {
    		for (const child of document.getElementById('addonbar').children) {
    			if( child["id"] == "downloads-button" ) {
    				document.getElementById('downloads-button').addEventListener('mousedown', function(event)  {
    				  DownloadsIndicatorView.onCommand(event);
    				});
    		   }
    	   }
    	}	
    	
    })();
    Alles anzeigen
  • addonbar.us.js funktioniert nicht mehr

    • BrokenHeart
    • 28. Januar 2025 um 08:17
    Zitat von Speravir

    In Zeile 153 steht noch key.setAttribute('oncommand',…. Beachte das jüngste Update von addonbar.uc.js.

    Danke, ich hab's übernommen :thumbup:.

    Interessant wäre es gewesen, wenn du auch mitgeteilt hättest, ob der Button bei dir mit dieser Anpassung funktioniert. Das Problem ist ja nicht nur auf die 'Add-on Bar' von Aris beschränkt, sondern tritt in jeder Zusatzleiste außerhalb von 'navigator-toolbox' auf, z.B. in den vielen Statusleisten, die hier auch im Umlauf sind.

    Ich werde daher auch sicher nicht jede Änderung von Aris wieder hier einpflegen, sondern würde eher eine Skript schreiben, welches man zusätzlich ausführen oder in sein Skript einbauen kann und welches eben das Problem auch für die anderen betroffenen Buttons in allen Leisten behebt.

  • addonbar.us.js funktioniert nicht mehr

    • BrokenHeart
    • 27. Januar 2025 um 23:09

    Sollte jetzt für den Download-Button wieder passen. Die anderen nicht funktionierenden Buttons schaue ich mir später an.

    Bitte mal testen...

    JavaScript
    // 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)
    // [!] 27.01.2025 Fix FF 134+ (DonloadButton) by BrokenHeart💔
    
    (function() {
    
    	if (!window.gBrowser){
            return;
        }
    
    	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);
    			//tb_addonbar.insertBefore(document.querySelector('#statuspanel'),tb_addonbar.firstChild);
    			
    			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.addEventListener("command", () => {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) {}
    		
    		try {
    			setToolbarVisibility(document.getElementById('addonbar'), Services.prefs.getBranch('browser.addonbar.').getBoolPref('enabled'));
    			
    		} 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 */
    	if (!window.gBrowser){
    			return;
    	}
    
    	setTimeout(function(){
    	  AddAddonbar.init();
    	  addonBarEvents();
    	},1000);
    	
    	
    	function addonBarEvents() {
    		for (const child of document.getElementById('addonbar').children) {
    			if( child["id"] == "downloads-button" ) {
    				document.getElementById('downloads-button').addEventListener('mousedown', function(event)  {
    				  DownloadsIndicatorView.onCommand(event);
    				});
    		   }
    	   }
    	}	
    	
    	
    })();
    Alles anzeigen
  • addonbar.us.js funktioniert nicht mehr

    • BrokenHeart
    • 26. Januar 2025 um 16:41
    Zitat von milupo

    Welcher Update-Code?

    Hier

    JavaScript
    /* fix for downloads button on add-on bar - thanks to dimdamin */
    /* https://github.com/Aris-t2/CustomJSforFx/issues/125#issuecomment-2506613776 */
    (async url => !location.href.startsWith(url) || await delayedStartupPromise ||
    	(async (scrNT, nTjs) => {
    		if (scrNT.length >= 1) {
    			nTjs.uri = "data:application/x-javascript;charset=UTF-8,";
    			nTjs.res = await fetch(scrNT[0].src);
    			nTjs.src = (await nTjs.res.text())
    				.replace(/navigator-toolbox/, "addonbar_v")
    				.replace(/widget-overflow/, "addonbar");
    			(await ChromeUtils.compileScript(nTjs.uri + encodeURIComponent(nTjs.src))).executeInGlobal(this);
    		};
    	})(document.getElementById("navigator-toolbox").querySelectorAll(":scope > script"), {})
    )("chrome://browser/content/browser.x");
    Alles anzeigen
  • addonbar.us.js funktioniert nicht mehr

    • BrokenHeart
    • 26. Januar 2025 um 16:35
    Zitat von milupo

    Danke. Und siehst du eine Lösung?

    Ich wüsste jetzt auch nicht, wie man das konkret angehen soll. Nur wie weiter oben schon erwähnt, vielleicht EventListener für diese speziellen Buttons hinzufügen und das Ereignis dann an die navigator-toolbox weiterleiten. Aber ob das so überhaupt funktionieren kann, keine Ahnung. :/

    Den zusätzlichen Update-Code, der das Problem angeblich beheben soll, durchschaue ich überhaupt nicht...:(

  • addonbar.us.js funktioniert nicht mehr

    • BrokenHeart
    • 26. Januar 2025 um 16:08

    milupo

    Wie deine beiden Beispiele zeigen, funktionieren die Buttons nur in Toolbars, die Kinderknoten von #navigator-toolbox sind.

    In der oberen Leiste:

    JavaScript
    var parentE = document.getElementById('nav-bar').parentNode;

    Hier ist 'parentE' eben genau wieder die #navigator-toolbox . D.h. die neue Toolbar wird als Kind der #navigator-toolbox erzeugt und deswegen funktionieren hier auch alle Popups.

    In der unteren Leiste:

    JavaScript
    document.getElementById('navigator-toolbox').parentNode.insertBefore( vbox, null);

    Der Elternknoten von #navigator-toolbox ist #main-window und 'insertBefore' bedeutet, dass du eine Leiste 'vbox' hinter #main-window (als Kindknoten) erzeugst, da als Referenzknoten 'null' angegeben wurde. Und an diese wird dann die eigentliche Toolbar gehängt. Also das Standardvorgehen bei Erzeugung einer Statusleiste. Und da funktioniert es dann eben nicht mehr, da für bestimmte Buttons keine Event-Listener in der Leiste hinzugefügt wurden.

    Könnte vielleicht auch schon mit den inlineEvent Änderungen zusammenhängen...?!

  • addonbar.us.js funktioniert nicht mehr

    • BrokenHeart
    • 26. Januar 2025 um 12:33
    Zitat von Speravir

    Hmmm, bei mir funktioniert der Download-Button mit dem jüngsten Update, soll heißen, er zeigt das Popup.

    Wie bei bege wird auch hier nach dem neusten Update kein Popup angezeigt! Und zwar bei folgenden Buttons nicht:

    Der 'onMouseDown-Event' wird nur in der 'navigator-toolbox,js' dahingehend ausgewertet, dass dort die entsprechenden Behandlungsroutinen (z.B. Anzeigen eines Panels) für diese Buttons aufgerufen werden. Der Button selbst bekommt diesen Event nicht, bzw. es fehlt dort die Antwort auf den Tastendruck.

    Ich hatte mir schon überlegt, dass man vielleicht für diese speziellen Buttons einen Mousedown-EventListener hinzufügt und dann diesen Event an die navigator-toolbox.js weiterleitet. Vielleicht ist das aber auch viel zu kurz gedacht...

  • addonbar.us.js funktioniert nicht mehr

    • BrokenHeart
    • 26. Januar 2025 um 00:02

    In FF134 funktionieren der Standard Download-Button, der Standard Bibliotheks-Button und vielleicht auch noch andere in den gescripteten Extra-Toolbars nicht mehr. Weder in horizontalen, noch vertikalen Toolbars. Das betrifft nicht nur die Toolbar von Aris. Diese Buttons öffnen beim Klicken kein Panel und zwar dann nicht, wenn sie sich außerhalb der id=navigator-toolbox befinden, also alles außerhalb der Standard-Toolbarleisten.

    Man müsste also die Unterschiede zwischen den einzelnen Buttons (welche ein zusätzliches Panel öffnen) ermitteln, um vielleicht zu einer Lösung zu kommen. Auch möglich, dass die zusätzlichen XUL-Toolbars jetzt eine Änderung erfahren haben...

    Hier mal 3 Buttons (Panic, Download, Bibliothek). Der Panic-Button funktioniert, die anderen beiden nicht:

  • Div. Skripte funktionieren im aktuellem Nightly nicht mehr

    • BrokenHeart
    • 25. Januar 2025 um 16:09

    Muss jetzt auch noch schnell meinen OT-Senf dazugeben. Danach ist aber Schluss mit dem rumgeheule! ;( ;)

    Ich weiß jetzt nicht, wo genau das Problem sein soll. Endor pflegt doch dankenswerterweise:thumbup: schon seit etlichen Jahren seine GitHub-Seite mit den jeweils aktuellsten Skripten. Und viel übersichtlicher als bei GitHub würde es hier im Forum mit hundert einzelnen Threads auch nicht werden.

    Und jeder, der ein "exotisches" Skript oder ein speziell angepasstes Skript nutzt (viele User dürften das eh nicht sein), hat entweder genug Ahnung das Problem selber zu lösen oder fragt halt hier in diesem Thread nach. Bis jetzt wurde doch allen, die gefragt haben, geholfen, oder irre mich? Also funktioniert es doch so wie es ist.... :/

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

    • BrokenHeart
    • 24. Januar 2025 um 22:23
    Zitat von edvoldi

    Wie kann ich das überprüfen?

    Indem du das Verzeichnis "StartupCache" überprüfst. Wenn nach dem Neustart keine Veränderungen sichtbar sind (Datum), dann wurde der ScriptCache auch nicht gelöscht. Wenn du das Verzeichnis parallel im Explorer geöffnet hast, kannst du sehen wie beim Beenden des Firefox alle Dateien gelöscht werden. Dann legt Firefox die "Basis"-Dateien wieder neu an. Bei meiner portablen Version befindet sich das Verzeichnis direkt im Profilordner. Bei installierten Version bin ich mir nicht 100% sicher, aber ich glaube unter "C:\Users\[Username]\AppData\Local\Mozilla\Firefox".

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

    • BrokenHeart
    • 24. Januar 2025 um 22:01

    FuchsFan & 2002Andreas .

    Vielen Dank für das Posten eurer Version.:thumbup:

    Ich muss leider feststellen, dass ihr beide funktionierende Skripte nutzt und nur ich mich aus Faulheit nie mit meinem genutzten Skript beschäftigt habe. :cursing:

    Na ja, jetzt funktioniert es auch bei mir. Besser spät als nie. :(


    Zitat von grisu2099

    Da greif ich doch gleich mal zu...

    Kannst du gerne machen :), aber die Skripte von FuchsFan und 2002Andreas bieten noch mehr Möglichkeiten (Menü).

  • Skript für vertikale Toolbar funktioniert im heutigen Nightly nicht mehr richtig

    • BrokenHeart
    • 24. Januar 2025 um 21:38
    Zitat von Endor

    Die muss jetzt so aussehen:

    Danke für die Korrektur!:thumbup:

    Aber auch mit der Änderung mag es hier nicht funktionieren. Ist dann aber wohl wirklich ein Problem mit meinen sonstigen Anpassungen. Da ich die vertikale Toolbar nicht nutze(n werde), will ich das jetzt nicht weiter verfolgen.

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

    • BrokenHeart
    • 24. Januar 2025 um 21:29

    Was zum Thema "Restart Button":

    Ich vermute, dass das RestartButton-Skript, welches einen Button erzeugt um Firefox neu zu starten und optional den ScriptCache zu löschen, von sehr vielen Skript-Anwendern genutzt wird. Anscheinend gibt es da sehr viele Versionen. Wegen einer anderen Sache habe ich mir dann mal mein Neustarten-Skript genauer angeschaut und festgestellt, dass ich wahrscheinlich schon seit Jahren ein Skript nutze, was nicht genau das macht, was es verspricht. Das Skript welches ich genutzt habe behauptet (z.B. auch in den Tooltips), dass über die "Rechte Maustaste" ein Neustart + Löschen des ScriptCache erfolgt, was aber überhaupt nicht der Fall ist. Ich hatte mich dummerweise darauf verlassen X/. Nur mit der mittleren Maustaste wird der ScriptCache wirklich gelöscht, aber damit erfolgt kein Neustart.

    Entweder ist meine Version wirklich uralt und nur ich bin betroffen. Oder sehr viele, vielleicht sogar alle Nutzer haben dieses unerkannte Problem. Wäre vielleicht ganz gut, wenn ein paar Nutzer des Skripts mal ihre Version hier posten würden..

    Lange Rede... Ich habe mein Skript jetzt mal angepasst und den Mittelklick rausgeschmissen (hat ja nichts mit 'Restart' zu tun), den Text der Tooltips neu verfasst und die Funktion der rechten Maustaste geändert, so dass jetzt wirklich überprüfbar das ScriptCache-Verzeichnis gelöscht wird. Ich habe sonst keine "Code-Verschönerungen" vorgenommen und ein irrsinnig großes Icon verwendet. Wer will kann das natürlich alles ändern. ;)

    JavaScript
    // Restart button script for Firefox 60+ by Aris
    //
    // left-click on restart button: normal restart
    // right-click on restart button: restart + clear caches
    // Edit by 2002Andreas
    // based on 'Quit' button code by 2002Andreas
    // 24.01.2025 BrokenHeart - Änderung an der ScriptCache Funktionalität. Fehlermeldung beseitigt.
    
    (function() {
    
     if (!window.gBrowser){
            return;
        }
    
    try {
        var sss = Components.classes["@mozilla.org/content/style-sheet-service;1"].getService(Components.interfaces.nsIStyleSheetService);
    
        var button_label = "Linke Maustaste:\tNeustart\nRechte Maustaste:\tNeustart + SkriptCache Löschen";
    
        CustomizableUI.createWidget({
        id: "restart-button-ucjs", // button id
        defaultArea: CustomizableUI.AREA_NAVBAR,
        removable: true,
        label: button_label, // button title
        tooltiptext: button_label, // tooltip title
        onClick: function(event) {
          
          var cancelQuit   = Components.classes["@mozilla.org/supports-PRBool;1"].createInstance(Components.interfaces.nsISupportsPRBool);
          var observerSvc  = Components.classes["@mozilla.org/observer-service;1"].getService(Components.interfaces.nsIObserverService);
                
          
          if(event.button=='0' || event.button=='2') { // left-click - restart/right-click - clear caches
    
    		if(event.button == '2') {       
    			event.preventDefault();	
    			Components.classes["@mozilla.org/xre/app-info;1"].getService(Components.interfaces.nsIXULRuntime).invalidateCachesOnRestart();
    		}
    		
    		observerSvc.notifyObservers(cancelQuit, "quit-application-requested", "restart");
    					
            if(cancelQuit.data) return false;
                    
            Services.startup.quit(Services.startup.eRestart | Services.startup.eAttemptQuit);
          }
        },
        onCreated: function(button) {
          return button;
        }
            
      });
      
      // style button icon
      var uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent('\
        \
          #restart-button-ucjs .toolbarbutton-icon {\
            list-style-image: url("data:image/png;base64,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");  \
    		  }\
        \
      '), null, null);
      
      sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET);
      
    } catch (e) {
        Components.utils.reportError(e);
    };
    
    })();
    Alles anzeigen
  • Firefox zeigt bei jedem Start Datei mit Viren an

    • BrokenHeart
    • 24. Januar 2025 um 20:57

    Habe jetzt auch den Artikel etwas genauer gelesen. Es bleiben für mich zwar ein paar Fragen offen, aber ich werde die Option einfach mal aktiviert lassen, zumal ich damit noch nie in Berührung gekommen bin, was daran liegen könnte, dass ich mir relativ selten 'PDF'-Dateien downloade, die eine '.exe' als Endung haben... ;)

    Zitat von Sören Hentzschel

    Firefox gibt dem Nutzer die Möglichkeit, den Download trotzdem zu starten oder die heruntergeladene Datei trotzdem zu öffnen. SUMO zeigt ja auch entsprechende Screenshots.

    Das ist gut bzw. auch notwendig, dass der Firefox diese Option anbietet!

  • Skript für vertikale Toolbar funktioniert im heutigen Nightly nicht mehr richtig

    • BrokenHeart
    • 24. Januar 2025 um 20:46

    Bei mir funktioniert die vertikale Toolbar mit dem Skript von grisu2099 weder in der aktuellen Release, noch in der Nightly. Die Buttons sind da, allerdings erscheint keine Toolbar. In der ESR (FF128) wird sie angezeigt und funktioniert auch.

    Dass nichts angezeigt wird, dürfte an Zeile 75 liegen, mal auskommentieren oder löschen. Aber wie gesagt, auch dann erscheint bei mir keine Toolbar (Release) bzw. blitzt nur kurz auf und wird sofort wieder gelöscht (Nightly). Liegt vielleicht aber auch an meinen Anpassungen !? :/

Unterstütze uns!

Jährlich (2026)

32,8 %

32,8% (213,31 von 650 EUR)

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