Hi, Boersenfeger!
Alles alles Gute zum Geburtstag und vor allem viel Gesundheit wünsche ich Dir.
Mfg.
Endor
Hi, Boersenfeger!
Alles alles Gute zum Geburtstag und vor allem viel Gesundheit wünsche ich Dir.
Mfg.
Endor
Vielen Dank, aber bei mir muss er in eine andere Leiste.
Das geht eben nur per Script.
Mfg.
Endor
Hallo milupo.
Ja wohl diese Version tut es hier auch wieder.
Also alles passt.
:wink:
Mfg.
Endor
Ehrgeiz wäre genügend vorhanden, aber das Können fehlt.
Das Script hat aborix letztes Jahr gebastelt. Da ist mein Können nichts dagegen.
Er ist ein Genie und Ausnahmekönner auf diesem Gebiet.
ich leider nicht. Bin schon froh wenn ich mal was kleines geregelt kriege.
Mfg.
Endor
Wie gesagt, das mit der Menüleiste hat sich ja erledigt.
Hat alles funktioniert. Das einzige was eben nicht geht ist das Verschieben
der Hamburger Schaltfläche.
Mfg.
Endor
Mit den beiden Scripten sollte es gehen, wie gesagt eine geht die andere nicht.
Keine Ahnung warum.
Mfg.
Endor
Damit kann man die Mehrwerkzeug Schaltfläche, die mit dem Doppelpfeil,
und die Menüschaltfläche - Hamburger Schaltfläche, die mit den drei Strichen, frei verschieben.
Die Mehrwerkzeug Schaltfläche funktioniert auch einwandfrei, aber das Script
für de Hamburger Schaltfläche leider nicht.
Mfg.
Endor
So habe raus gefunden was es war.
Script funktioniert hier auch wie es soll.
Musste nur die beiden das Script entfernen dann ging es:
Panel Schaltfläche - Hamburger verschiebbar
(function() {
if (location != 'chrome://browser/content/browser.xul')
return;
var menuButton = document.getElementById('PanelUI-menu-button');
if (!CustomizableUI.getPlacementOfWidget('ucjs_PanelUI-button')) {
try {
CustomizableUI.createWidget({
id: 'ucjs_PanelUI-button',
type: 'custom',
defaultArea: CustomizableUI.AREA_NAVBAR,
onBuild: function(aDocument) {
var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbaritem');
toolbaritem.id = 'ucjs_PanelUI-button';
toolbaritem.className = 'chromeclass-toolbar-additional';
toolbaritem.setAttribute('label', 'Firefox Anpassen');
return toolbaritem;
}
});
if (!CustomizableUI.getPlacementOfWidget('ucjs_PanelUI-button')) {
menuButton.style.display = 'none';
return;
};
} catch(e) {
menuButton.style.display = 'none';
return;
};
};
}());
Alles anzeigen
Edit:Mehr-Werkzeuge-Schaltfläche verschiebbar
(function() {
if (location != 'chrome://browser/content/browser.xul')
return;
// Mehr-Werkzeuge-Schaltfläche verschiebbar
try {
CustomizableUI.createWidget({
id: 'ucjs_overflow-item',
type: 'custom',
defaultArea: CustomizableUI.AREA_NAVBAR,
onBuild: function(aDocument) {
var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbaritem');
toolbaritem.id = 'ucjs_overflow-item';
toolbaritem.className = 'chromeclass-toolbar-additional';
toolbaritem.setAttribute('label', 'Mehr Werkzeuge');
return toolbaritem;
}
});
} catch(e) { };
document.getElementById('ucjs_overflow-item').appendChild(document.getElementById('nav-bar-overflow-button'));
})();
Alles anzeigen
funktioniert und verursacht keine Probleme.
Keine Ahnung warum.
Mfg.
Endor
Hallo milupo.
Na klar doch. ![]()
Komme nur im Moment nicht dazu es in einem neuen Profil zu testen.
Danach melde ich mich dazu nochmals.
Mfg.
Endor
Hier meine aktuelle Version. ist nur minimal anders als obige:
// bookmarksmanager.uc.js
(function() {
if (location != 'chrome://browser/content/browser.xul') return;
try {
CustomizableUI.createWidget({
id: 'books-button',
type: 'custom',
defaultArea: CustomizableUI.AREA_NAVBAR,
onBuild: function(aDocument) {
var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbarbutton');
var props = {
id: 'books-button',
class: 'toolbarbutton-1 chromeclass-toolbar-additional',
removable: true,
label: 'Lesezeichen Manager',
accesskey: 'e',
tooltiptext: 'Lesezeichen Manager öffnen',
style: 'list-style-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACnklEQVQ4y6XTPYgVVxTA8f/ce2fu7Mx7vuf6srsa425cxFWEiDwCgpXpErELIVYWVolYWGmdKoVdLGwUGwXFJggWwq42hpBmiUaW1f2I7Pfs+p6773Pm3jspXtwEIhLwNIdTnB/nHDjwgeGNXrhz2JfysPC8/9fgrLAmez7105lnAOpAZejxwYGBiud5QA78N3cyRymSLG6kHBmJ+G1ueX0KPgJQ8ytppbXZ/tt/N5Aax9gnEUndUm84Xm/aytuJVBxZzn3VT0lbjMkoFIskawmDQ4MALC8ts3vPx9STJcKoSK3r8/CP9vZKqhhJjh/sZyB2ZFlGuVxmYSFleLgHzBaa7N8/SDJxlXj3SZZ0lesT8h/Aw1Kr1dAGjDEYY+h2uyRJAkCapiTzk4TpS7orIbUdo3jYbUD4SqJ1gNaaMAzRWhMEvVprjQ588pVHxJ+eQDRnCESGr/41QeALCnFEHAustcRxTNZcIepOkdsO0eZLivYZQh2lsKtEafUmJ8p93LldOZ21my3lkdNoNChKhXMOYwx27QnmzXVk3y524qEKZTCzyD7H3uwpl6ot8u7wXVbnppX2JYU4Jo57QBAEtPZ9CYsvoPWAoOCBWAMrgBwVtbGdOp3X6+M27fyglPRQvsL3fZxz+L6PHxbRY5fJFg9g1r9DFTKgB+TOMvnnCMNbW9+7jHlVb6Zr1x5OC19CnoMQHtZZpFBIPlMXR2VZ7ehC6noGMN0eMtWz87MAaiZ583UcBkIJsX3ZABOkqLQa3j+mj7euEIBdpeEFKLGH8ItDv7fe+zA3btyr/vrkl32dcXHeJWxlk0y0fubzzgNOmSmemle02/c5AqDeBUgpyzNzy9+M7B3b6F94/qPd4FZ0mlmAdJwFUeJbIXu9fwFVCBajMWIWPQAAAABJRU5ErkJggg==)',
oncommand: "PlacesCommandHook.showPlacesOrganizer('AllBookmarks');"
};
for (var p in props)
toolbaritem.setAttribute(p, props[p]);
return toolbaritem;
}
});
CustomizableUI.registerToolbarNode(tb);
} catch(e) { };
}) ();
Alles anzeigen
Mfg.
Endor
Hallo zusammen.
Der Autor hat sein Script wieder aktualisiert:
// ==UserScript==
// @name OpenNewTab.uc.js
// @description Lesezeichen, Chronik und aus Adressleiste in neuem Tab öffnen
// @include main
// @compatibility Firefox 65+
// @version 2019/02/03 20:30 fix to fail with continuous open bookmarks/history
// @version 2018/11/04 22:30 fix Bug 1502069, use selectedTab.isEmpty insted isTabEmpty()
// ==/UserScript==
(function() {
// Aus der Adressleiste
// urlbarBindings.xml
var urlbar = document.getElementById('urlbar');
if (urlbar) {
urlbar.__org_handleCommand = urlbar.handleCommand;
urlbar.handleCommand = function(aEvent, aWhere, aParams, aTriggeringPrincipal) {
if (gBrowser && (xxxCheckMaybeProcessing()
|| !gBrowser.selectedTab.isEmpty
|| gBrowser.webProgress.isLoadingDocument )) {
aWhere = 'tab';
}
return this.__org_handleCommand(aEvent, aWhere, aParams, aTriggeringPrincipal);
}
}
// Aus dem Suchfeld (bei Mausklick)
// searchbar.xml
var searchbar = document.getElementById("searchbar");
if (searchbar) {
searchbar.__org_handleSearchCommandWhere = searchbar.handleSearchCommandWhere;
searchbar.handleSearchCommandWhere = function(aEvent, aEngine, aWhere, aParams) {
if (gBrowser && (xxxCheckMaybeProcessing()
|| !gBrowser.selectedTab.isEmpty
|| gBrowser.webProgress.isLoadingDocument )) {
aWhere = 'tab';
}
return this.__org_handleSearchCommandWhere(aEvent, aEngine, aWhere, aParams);
}
}
// Lesezeichen und Chronik (einschließlich Seitenleiste)
// modules\PlacesUIUtils.jsm
if (!/__org_openNodeIn/.test(PlacesUIUtils._openNodeIn.toString())) {
PlacesUIUtils.__org_openNodeIn = PlacesUIUtils._openNodeIn;
PlacesUIUtils._openNodeIn = function(aNode, aWhere, aWindow, aPrivate) {
let win = Services.wm.getMostRecentWindow("navigator:browser");
if (aWhere == 'current'
&& win.gBrowser && (win.xxxCheckMaybeProcessing()
|| !win.gBrowser.selectedTab.isEmpty
|| win.gBrowser.webProgress.isLoadingDocument)) {
aWhere = 'tab';
}
if (/^javascript:/.test(aNode.uri)) aWhere = 'current';
return this.__org_openNodeIn(aNode, aWhere, aWindow, aPrivate);
}
}
window.__org_whereToOpenLink = window.whereToOpenLink;
window.whereToOpenLink = function whereToOpenLink(e, ignoreButton, ignoreAlt) {
let where = window.__org_whereToOpenLink(e, ignoreButton, ignoreAlt);
let max = 10;
let caller;
try {
caller = arguments.callee.caller;
} catch(e) {
return where;
}
while(caller && max>0){
Services.console.logStringMessage(caller.name);
if (caller.name == "HM__onCommand") {
if (where == 'current'
&& gBrowser && (xxxCheckMaybeProcessing()
|| !gBrowser.selectedTab.isEmpty
|| gBrowser.webProgress.isLoadingDocument )) {
where = 'tab';
}
if (/^javascript:/.test(caller.arguments[0].target._placesNode.uri)) where = 'current';
return where;
}
try {
caller = caller.caller;
} catch(e) {
return where;
}
max--;
}
return where;
}
// Von externer Anwendung (Wiederverwendung von leeren Tab)
// browser.js
nsBrowserAccess.prototype.__org_openURI = nsBrowserAccess.prototype.openURI;
nsBrowserAccess.prototype.openURI = function(aURI, aOpener, aWhere, aFlags, aTriggeringPrincipal) {
aWhere = Ci.nsIBrowserDOMWindow.OPEN_CURRENTWINDOW;
if (gBrowser && (xxxCheckMaybeProcessing()
|| !gBrowser.selectedTab.isEmpty
|| gBrowser.webProgress.isLoadingDocument )) {
aWhere = Ci.nsIBrowserDOMWindow.OPEN_NEWTAB;
}
return this.__org_openURI(aURI, aOpener, aWhere, aFlags, aTriggeringPrincipal);
}
// safty fallback
window.xxxMaybeProcessing = false;
window.xxxMaybeProcessingTimer = null;
window.xxxCheckMaybeProcessing = function() {
clearTimeout(xxxMaybeProcessingTimer);
// xxx After adding a tab, the tab is considered busy for 500ms
xxxMaybeProcessingTimer = setTimeout(() => {xxxMaybeProcessing = false;}, 500);
let MaybeProcessing = xxxMaybeProcessing;
if (!xxxMaybeProcessing) {
xxxMaybeProcessing = true;
}
return MaybeProcessing;
}
})();
Alles anzeigen
Mfg.
Endor
Hallo aborix.
Danke, genau das habe ich gesucht. Funktioniert natürlich in meinem Profil
mal wieder nicht. Was auch sonst.... Sobald ich Zeit habe teste ich das in einem neuen Profil,
da bin ich fast sicher dass es funktionieren wird.
Melde mich anschließend.
Mfg.
Endor
Hallo zusammen.
Ich bin der Meinung wir hatten hier mal ein Script, welches das Menü in der
Menüleiste frei verschiebbar machte. Also ich möchte gerne, die ganzen Menüs
Datei, Bearbeiten, Ansicht usw. in eine andere Leiste verschieben.
Müssen nicht einzeln verschiebbar sein, gerne auch alle zusammen.
Habe zwar gesucht aber nichts passendes gefunden.
Wenn es mich nicht ganz täuscht war das ein Script von aborix.
Vielleicht hat jemand von euch noch einen Link zu Beitrag.
Mfg.
Endor
Teste diese Version mal, die müsste auch gehen:
// ==UserScript==
// @name OpenNewTab.uc.js
// @description Lesezeichen, Chronik und aus Adressleiste in neuem Tab öffnen
// @include main
// @compatibility Firefox 63+
// @version 2018/11/04 22:30 fix Bug 1502069, use selectedTab.isEmpty insted isTabEmpty()
// ==/UserScript==
(function() {
// Aus der Adressleiste
// urlbarBindings.xml
var urlbar = document.getElementById('urlbar');
if (urlbar) {
urlbar.__org_handleCommand = urlbar.handleCommand;
urlbar.handleCommand = function(aEvent, aWhere, aParams, aTriggeringPrincipal) {
if ((!aWhere || aWhere == 'current')
&& (("isTabEmpty" in window)
? !isTabEmpty(gBrowser.selectedTab)
: !gBrowser.selectedTab.isEmpty
|| gBrowser.webProgress.isLoadingDocument)) {
aWhere = 'tab';
}
return this.__org_handleCommand(aEvent, aWhere, aParams, aTriggeringPrincipal);
}
}
// Aus dem Suchfeld (bei Mausklick)
// searchbar.xml
var searchbar = document.getElementById("searchbar");
if (searchbar) {
searchbar.__org_handleSearchCommandWhere = searchbar.handleSearchCommandWhere;
searchbar.handleSearchCommandWhere = function(aEvent, aEngine, aWhere, aParams) {
if ((!aWhere || aWhere == 'current')
&& (("isTabEmpty" in window)
? !isTabEmpty(gBrowser.selectedTab)
: !gBrowser.selectedTab.isEmpty
|| gBrowser.webProgress.isLoadingDocument)) {
aWhere = 'tab';
}
return this.__org_handleSearchCommandWhere(aEvent, aEngine, aWhere, aParams);
}
}
// Lesezeichen und Chronik (einschließlich Seitenleiste)
// modules\PlacesUIUtils.jsm
if (!/__org_openNodeIn/.test(PlacesUIUtils._openNodeIn.toString())) {
PlacesUIUtils.__org_openNodeIn = PlacesUIUtils._openNodeIn;
PlacesUIUtils._openNodeIn = function(aNode, aWhere, aWindow, aPrivate) {
if (aWhere == 'current'
&& (("isTabEmpty" in window)
? !isTabEmpty(gBrowser.selectedTab)
: !gBrowser.selectedTab.isEmpty
|| gBrowser.webProgress.isLoadingDocument)) {
aWhere = 'tab';
}
if (/^javascript:/.test(aNode.uri)) aWhere = 'current';
return this.__org_openNodeIn(aNode, aWhere, aWindow, aPrivate);
}
}
window.__org_whereToOpenLink = window.whereToOpenLink;
window.whereToOpenLink = function whereToOpenLink(e, ignoreButton, ignoreAlt) {
let where = window.__org_whereToOpenLink(e, ignoreButton, ignoreAlt);
let max = 10;
let caller;
try {
caller = arguments.callee.caller;
} catch(e) {
return where;
}
while(caller && max>0){
Services.console.logStringMessage(caller.name);
if (caller.name == "HM__onCommand") {
if (where == 'current'
&& (("isTabEmpty" in window)
? !isTabEmpty(gBrowser.selectedTab)
: !gBrowser.selectedTab.isEmpty
|| gBrowser.webProgress.isLoadingDocument)) {
where = 'tab';
}
if (/^javascript:/.test(caller.arguments[0].target._placesNode.uri)) where = 'current';
return where;
}
try {
caller = caller.caller;
} catch(e) {
return where;
}
max--;
}
return where;
}
// Von externer Anwendung (Wiederverwendung von leeren Tab)
// browser.js
nsBrowserAccess.prototype.__org_openURI = nsBrowserAccess.prototype.openURI;
nsBrowserAccess.prototype.openURI = function(aURI, aOpener, aWhere, aFlags, aTriggeringPrincipal) {
aWhere = Ci.nsIBrowserDOMWindow.OPEN_CURRENTWINDOW;
if (("isTabEmpty" in window)
? !isTabEmpty(gBrowser.selectedTab)
: !gBrowser.selectedTab.isEmpty
|| gBrowser.webProgress.isLoadingDocument) {
aWhere = Ci.nsIBrowserDOMWindow.OPEN_NEWTAB;
}
return this.__org_openURI(aURI, aOpener, aWhere, aFlags, aTriggeringPrincipal);
}
})();
Alles anzeigen
Mfg.
Endor
Hallo Giftzwerg.
Wenn Du das Script verwendest, braucht es den CSS Code für die mehrzeilige Tableiste, den Du auch hast,
nicht mehr, deaktiviere den mal, den der könnte sich mit dem im Script beißen....
Mfg.
Endor
Individuell verschieben geht nur mit einem Script, anders lässt sich das nicht mehr
bewerkstelligen.
Siehe dazu: https://github.com/Endor8/userChr…ter/Mutirowtabs
Für die Verwendung von Scripten muss das hier gegeben sein, ist Voraussetzung:
https://github.com/Endor8/userChr…ster/userChrome
Mfg.
Endor
:klasse:
Mfg.
Endor
Nur zur Info:
Das Script gibt es auch bei Greasyfork, wenn würde ich es von da nehmen:
Link:
https://greasyfork.org/de/scripts/104…ow-customizable
Wurde dort zuletzt am 15.09.2018 aktualisiert.
Die von milupo erwähnte Seite, bzw. den Link würde ich entfernen.
Die Seite ist schon lange nicht mehr sauber.....
Mfg.
Endor
Hallo Boersenfeger.
Bitte teste diese Version nochmals, auch wenn der Code gleich aussieht.
(function() {
if (location != 'chrome://browser/content/browser.xul')
return;
if (CustomizableUI.getPlacementOfWidget('addons-update-button'))
return;
try {
CustomizableUI.createWidget({
id: 'addons-update-button',
defaultArea: CustomizableUI.AREA_NAVBAR,
label: 'Add-ons Update',
tooltiptext: 'Add-ons Update',
onCommand: onCommand,
onCreated: function(button) {
button.style.listStyleImage = 'url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB9klEQVR42o2TP2gTURzHvwcRXqDDCzi8gww+cfACBRsoJAWXji0KzZFBxUELDoouOmnG6JQiWOogVAcpHUpvKDRLQbekoKRDJXHyLYHLIOQNhXtgBt+7u+SSpkq+w93xu9/vw++vhVj0MiUOyzicEo5LuFh/ACGV6PT6HflbKmOyzINnGdt5kPOKnBYxg5pCNu99apdEt9cLAYdPi4cr8+kVDGYJ10oB3mlQdzebqxZnlLZf5vsEwYzRkRTSyL1pZSznCuPtZ/zXlMcNV9e2FH2LBvCjDrAFoNsYueTeiashoPV4EkDWNrSzA/ltP2rwohumjZ9foI5qI7/8+yHgkT0CkGvLwK0q5KYLovzIWK6BXNf2754GVBPABz8GPEwAithQKQJ6JmJiBmqOQekGEyUTqAF8HALuJwDML4OY2gcK6us2EPQj+811Xf+J7kcrAXwOAZS37oyVcLsCFO5CHXvAQSWyLZaist6ugvRFAtg1gOw0QJrGFXTQmYyMcxRytwJyWp8YVAIoj/eAhoHh24nH2GmADHT95yad39MApm+gUbZ9OwVq1mNyWeKsppaEwB9ALu35drjKzwvs1YuFdHXa8V9bCNROgsrGce91CDCX6GbJkxJPr9sE9v+CfQXfE8H2fldtmYu0xn8a0IUZn0tgeMpGfwErbLqeHktDngAAAABJRU5ErkJggg==)';
}
});
} catch(e) {
return;
};
function onCommand(event) {
let frameScript = function() {
addEventListener('pageshow', function onPageshow(event) {
if (event.target.location != 'about:addons')
return;
content.gViewController.doCommand('cmd_findAllUpdates');
content.gViewController.doCommand('cmd_goToAvailableUpdates');
removeEventListener('pageshow', onPageshow);
});
};
let frameScriptURI = 'data:,(' + frameScript.toString() + ')()';
let window = event.target.ownerGlobal;
window.openTrustedLinkIn('about:addons', 'tab', {});
window.gBrowser.selectedBrowser.messageManager.loadFrameScript(frameScriptURI, true);
};
})();
Alles anzeigen
Die aktuellen Firefox Versionen sind etwas empfindlich was auskommentierte Zeilen in den Scripten betrifft.
Bei manchen Scripten geht es trotzdem bei manchen nicht.
Hoffe obige Version geht.
Sonst weiß ich auch nicht woran es bei Dir hakt....
Mfg.
Endor