Auch hier immer das Gleiche:
Danke, Sören Hentzschel , dann starte ich mal den nächsten Versuch. ![]()
Auch hier immer das Gleiche:
Danke, Sören Hentzschel , dann starte ich mal den nächsten Versuch. ![]()
Ich hab's, ich fress 'en Besen! Dharkness FuchsFan
Danke, aber alle meine Bemühungen scheitern, weil Dein Script nicht identisch ist mit dem meinen.
Das bei Endor gelistete wäre der Ursprung, aber das bekomme ich nicht gerichtet.![]()
Hallo zusammen,
sagt mal gibt es schon eine aktualisierte Version von Appmenu.uc.js?
Auch an Dich die Bitte, solltest Du eine aktualisierte Version auftreiben, lass es mich wissen. Danke!![]()
Mein wichtigstes, das Appmenu-Skript bedauerlicherweise noch nicht.
Ich verwende es auf eine andere Weise, aber es funktioniert natürlich auch nicht mehr.
Solltest Du eine Lösung dafür haben, so denke bitte an mich. Danke!
Vielen Dank für den Schnipsel.
Gerne doch, Endor , aber ich bin nur der Nutzer, nicht der Autor. ![]()
Da gab es doch noch ein Problemchen, die Scripte wurden im Submenü zwar angezeigt, konnten aber nicht geöffnet werden.![]()
Nochmals alles verglichen und übertragen, es wird alles angezeigt und funktioniert auch. Einstellungen nutze ich so zwar nicht, weil ich es unter Funktionen extra zur Verfügung habe.
Danke!![]()
Wieder eine Hürde genommen.![]()
Alles klar. Nicht hetzen lassen...
Konnte nicht mehr warten
, deshalb hier das Ergebnis.
Wenn ich hoffentlich alles richtig übertragen habe, dann öffnen die Einstellungen, die Browser-Werkzeuge, und es gibt einen Neustart. Neustart aber nur, wenn ich dafür den bisherigen Eintrag einsetze.
if(this.enableRestart) menupopup.appendChild(this.createME("menuitem","Neustart",
"Services.appinfo.invalidateCachesOnRestart(); Services.startup.quit(Ci.nsIAppStartup.eRestart | Ci.nsIAppStartup.eAttemptQuit,0);"));
Damit wird dann auch aus dem Restart-Script alles übernommen.
Morgen werde ich alles sauber einrichten, dann werden wir weiter sehen.
Danke, Du hast wieder gute Arbeit gemacht. ![]()
![]()
![]()
Jetzt weiß ich immer noch nicht genau, ob die angesprochenen Punkte bei dir mit der neuen Version funktionieren oder nicht (Browserwerkzeuge)?
Sorry, dass kann ich Dir noch nicht beantworten, denn ich muss erst alles auf mein Script übertragen. Werde mich dann morgen dazu äußern.
Die Einstellungen werden jetzt aufgerufen
Der Neustart wird mit einer Fehlermeldung quittiert
Ist hier auch so.
Nur noch mal als Bestätigung, es funktioniert in allen Versionen, nur nicht im neuen Nightly.
Danke, für Deinen Einsatz. ![]()
Beim Script extraconfigmenu.uc.js gibt es noch ein Problem:
Das funktionierte bisher in allen Versionen, nur im neu verpacktem Nightly nicht.
Das betrifft auch noch den Restart-Button (wenn genutzt wird), und außerdem noch ein eingebautes Menü für den Aufruf der Browser-Werkzeuge. Die Befehle werden so nicht angenommen. Aber was ändern, keine Ahnung.
Noch ein Script, das funktioniert.
Es wird eine Add-on-Bar ganz unten eingefügt, die dann mit den Button befüllt werden kann. Verstecken wird über den angelegten Button in der Navbar geregelt.
// Add-on Bar script for Firefox 102+ 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 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 = '';
var h_button_label = 'Toggle horizontal Add-on Bar'; // Toggle button name
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;
background: #d0e4f0 !important;
}
#main-window:-moz-lwtheme #addonbar {
background: var(--lwt-accent-color) !important;
/* background: green !important; */
}
#main-window[lwtheme-image='true']:-moz-lwtheme #addonbar {
background: var(--lwt-header-image) !important;
/* background: green !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;
}*/
#togglebutton_addonbar_h .toolbarbutton-icon { \
list-style-image: url('chrome://browser/skin/sidebars.svg');
fill: green;
transform: rotate(270deg);
}
`+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});
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 windows = Services.wm.getEnumerator(null);
while (windows.hasMoreElements()) {
var win = windows.getNext();
var hAddonBar = win.document.getElementById('addonbar');
setToolbarVisibility(hAddonBar, hAddonBar.collapsed);
Services.prefs.getBranch('browser.addonbar.').setBoolPref('enabled',!hAddonBar.collapsed);
if(!hAddonBar.collapsed)
win.document.querySelector('#togglebutton_addonbar_h').setAttribute('checked','true');
else win.document.querySelector('#togglebutton_addonbar_h').removeAttribute('checked');
}
`);
document.getElementById('mainKeyset').appendChild(key);
try {
setToolbarVisibility(document.getElementById('addonbar'), Services.prefs.getBranch('browser.addonbar.').getBoolPref('enabled'));
} catch(e) {}
CustomizableUI.createWidget({
id: 'togglebutton_addonbar_h', // button id
defaultArea: CustomizableUI.AREA_NAVBAR,
removable: true,
label: h_button_label, // button title
tooltiptext: h_button_label, // tooltip title
onClick: function(event) {
if(event.button==0) {
var windows = Services.wm.getEnumerator(null);
while (windows.hasMoreElements()) {
var win = windows.getNext();
var hAddonBar = win.document.getElementById('addonbar');
setToolbarVisibility(hAddonBar, hAddonBar.collapsed);
Services.prefs.getBranch('browser.addonbar.').setBoolPref('enabled',!hAddonBar.collapsed);
if(!hAddonBar.collapsed)
win.document.querySelector('#togglebutton_addonbar_h').setAttribute('checked','true');
else win.document.querySelector('#togglebutton_addonbar_h').removeAttribute('checked');
}
}
},
onCreated: function(button) {
if(Services.prefs.getBranch('browser.addonbar.').getBoolPref('enabled'))
button.setAttribute('checked','true');
return button;
}
});
}
} 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 */
Alles anzeigen
Mal bitte diese Version testen...
grisu2099 Funktioniert perfekt, danke: ![]()
![]()
Was soll das bringen?
Es war nur ein Wunschdenken, weil dann alle Scripte "geordnet" zur Verfügung stünden. Wenn es dann nicht so ist, für mich kein Hindernis.
Kann man für einzelne Skripts nicht ein Unterforum aufmachen
Da würde ich vorschlagen ein Unterforum zu eröffnen, in dem nur die lauffähigen Scripte eingestellt werden, alles ohne Diskussion.
Wer übernimmt?![]()
Hier mal das Skript mit etlichen Anpassungen. Es werden immer noch Fehler in der Konsole ausgegeben, d.h. es wird noch nicht alles funktionieren, aber den Ist-Zustand kann ja vielleicht mal jemand testen
Erst einmal meinen Dank, dass Du dich der Sache angenommen hast. ![]()
Mein Script weicht von dem korrigierten in einigen Teilen ab, weil ich zusätzliche Teile eingebaut habe.
Versucht habe ich nun deine Korrektur auf mein Script zu übertragen, und es funktioniert zu 90%, zumindest lassen sich die Menüs wieder aufrufen, auch Ordner öffnen. Trotzdem werde ich mal in Ruhe alles vergleichen, eventuell kann ich dann die letzten Fehler noch beseitigen.
Ich kann das ja nicht testen aber vielleicht klappt das ja:
Danke, das funktioniert.![]()
![]()
Mein wichtigstes Skript hier
Wem sagst du das.![]()
![]()
Na, auch ein blindes Huhn findet mal ein Korn
Nun nur noch ds extra-config-Script.![]()
Der Button wird angezeigt, aber das Kommando zum Schließen der Tabs wird nicht befolgt.
Wenn ich das Kommando einsetze, so werden auch alle offenen Tabs gelöscht. Wie muss es dann für den aktiven lauten?
gBrowser.removeAllTabsBut('gBrowser.mCurrentTab');
Wer hat hier noch eine Idee? Der Button wird angezeigt, aber das Kommando zum Schließen der Tabs wird nicht befolgt.
// buttonCloseTab.uc.js - Button > Firefox Tabs schliessen
CustomizableUI.createWidget({
id: 'fp-closetabs',
type: 'custom',
defaultArea: CustomizableUI.AREA_NAVBAR,
onBuild: function(aDocument) {
let toolbaritem = aDocument.createXULElement('toolbarbutton');
let props = {
id: 'fp-closetabs',
class: 'toolbarbutton-1 chromeclass-toolbar-additional',
label: 'Aktuellen Tab schließen',
tooltiptext: 'Aktuellen Tab schließen',
style: 'list-style-image:url("file:///c:/FoxIcons/0024.png")',
};
for (let p in props)
toolbaritem.setAttribute(p, props[p]);
toolbaritem.addEventListener('click', event => {
if (event.button == 0) {
gBrowser.removeCurrentTab;
}
});
return toolbaritem;
}
});
Alles anzeigen