Beiträge von bege

    Zitat von BarbaraZ-

    Meine bescheidene Frage:


    Ist oder wird dieses für die Allgemeinheit im CTR "eingebaut", wenn nein, kann die dieses Code über die UserChrome oder Stylish bei mir, zusätzlich zum CTR verwenden und wie ist er kompatibel?


    Danke für die Antworten
    Barbara


    Ich glaube kaum, dass das CTR-Menü editierbar wird, aber vielleicht weiß hier jemand mehr. Wer das machen will, muss etwas tiefer einsteigen.
    Also entweder mit MenuManipulator und/oder Scripts.
    Das CSS-Script (zum ausblenden von Einträgen) kannst du mit Stylish verwenden.
    Das JS-Script braucht das userChrome.js-Add-on. https://github.com/ardiman/userChrome.js (Beschreibung auf der Seite ganz unten.)

    Nachdem ich mein CTR-Menü also fertig gebastelt habe, bekam ich diese Antwort
    http://forums.mozillazine.org/…717&p=13583975&e=13583975


    Mit diesen Änderung lassen sich mit dem Add-on MenuManipulator http://mozilla.dorando.at auch die Appmenüs in Firefox und Thunderbird ändern.
    Damit geht nicht alles, was mit dem Script geht, aber das Neu-Anlegen, Verschieben und Ausblenden von Menüeinträgen geht damit.

    Also tausend Dank! Wirklich Klasse, sowohl deine Hilfe als auch das Ergebnis. :D


    Das CTR-Menü anzupassen ist wohl eine gewisse Bastelei mit einer JS und einer CSS-Datei, aber ich will das ja nicht jeden Tag verändern. Für mich eine gute Lösung :klasse:


    Mit diesem Code



    CSS
    /* AGENT_SHEET */ 
    
    
    @namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
    
    
    #sync-setup-appmenu ,menu[label="Internote"],#appmenu_fullScreen,#appmenu_sendLink,#appmenu_downloads,#ctraddon_appmenubox_newtab,#appmenu_newPrivateWindow,#ctraddon_appmenubox_bookmarks,#ctraddon_appmenubox_history,#appmenu_savePage{display: none !important;}


    bekomme ich dieses Ergebnis


    [attachment=0]Screenshot_094.png[/attachment]


    Prost! 8)

    Zitat von bege


    Und wie kriege ich Menüs aus der Menüleiste ins CTR-Menü, wie es in Personal Menu möglich war. Ich hatte das Datei- und das Extras-Menü im PM-Menü.


    Selbst rausgekriegt :D


    Code
    var fileMenu = document.getElementById('file-menu');
    			fileMenu.setAttribute('label', 'Datei');
    			pane1.appendChild(fileMenu);
    
    var toolsMenu = document.getElementById('tools-menu');
    			toolsMenu.setAttribute('label', 'Extras');
    			pane2.appendChild(toolsMenu);


    Aber es bleibt das Problem, dass ich diese Einträge nicht mit insertBefore positionieren kann.


    Und wie kriege ich den menuseparator am Anfang einer Spalte weg, wenn ich die darüberliegenden Einträge mit CSS ausgeblendet habe?

    Unerwünschte Einträge kann ich mit CSS ausblenden, das ist kein Problem.


    Die Toolbox, die du eingebaut hast, funktioniert prima.
    Den Neustart-Eintrag habe ich auskommentiert, weil RestartFirefox einen Eintrag im Appmenu erzeugt.


    Um den UserScriptLoader-Button in der ersten Spalte unterzubringen, habe ich dein Script erweitert.



    Funktioniert einwandfrei. Nur wenn ich die Box nicht am Ende der Spalte, sondern unter dem UserCSSLoader einfügen will (Zeile 25), wird die Box nicht angezeigt. Was ist da falsch?


    Der UserCSSLoader wird normalerweise auch am Ende der Spalte angezeigt. Das habe ich im Script geändert, so dass er unter den Web-Entwickler-Tools angezeigt wird.
    Ist es möglich, das stattdessen im neuen Script zu bewerkstelligen? Also nicht jedes Script ändern, um den Platz für die Anzeige zu definieren, sondern im CTR-Appmenu-Script?


    Das betrifft besonders Einträge, die von Add-ons kommen. Lassen die sich auch verschieben?
    So wird das Sitzungsmanager-Menü von TabMixPlus

    Code
    menu[id="appmenu-sessionmanager"]

    unten in der ersten Spalte angezeigt, ich möchte es am Anfang der zweiten Spalte haben.


    Und wie kriege ich Menüs aus der Menüleiste ins CTR-Menü, wie es in Personal Menu möglich war. Ich hatte das Datei- und das Extras-Menü im PM-Menü.


    aborix, ich habe damit mal ein neues Thema aufgemacht.
    Danke erst mal, das ist eine Alternative, an die ich auch schon gedacht habe, mich aber nicht drangetraut habe. Vielleicht geht es ja mit deiner Hilfe.

    Ich hatte mir den Code schon gebastelt und hier nicht geteilt, weil ich dachte, die können alle mehr als ich und wollen den deaktivierten Button.
    Für mich ist es viel deutlicher zu sehen, ob Feeds verfügbar sind oder nicht, wenn der Feed-Button ausgeblendet ist, wenn er nicht gebraucht wird.

    Damit könnte ich ja noch leben, wenn die Buttons auf den Toolbars nicht verschwinden würden. Und das tun sie in meinem Standard-Profil, und zwar nur dann, wenn PM installiert ist, obwohl es in dem leeren Profil funktioniert.
    Die anderen Buttons (Neustart und USL) sind bisher im PM geblieben.

    Zitat von aborix


    Nimm ein neues Profil mit Personal Menu und userChromeJS und diesem Skript. Keine weiteren Erweiterungen und Skripte.
    Teste: Bleibt der Button nach Neustart in der Leiste?


    Das macht echt keinen Spaß mehr :traurig:
    So bleibt der Button in der Leiste. Habe dann noch CTR und mehrere Scripte (mit und ohne verschiebbarem - nach alter Art- Button) installiert. Testbutton bleibt.
    Jetzt kommts: Testbutton in PM verschoben - Neustart - Testbutton weg. Anpassen-Dialog geöffnet, geschlossen - Testbutton im PM wieder da.
    :-??:-???:?:

    Danke, aborix.
    Diese Art von Button reagiert ähnlicher einem Add-on-Button: Er wird beim ersten Start in der Navigationsleiste angezeigt und wird im Anpassen-Dialog nicht immer am Ende angezeigt, sondern zwischen den anderen Buttons angezeigt. In Personal Menu lässt er sich auch problemlos einfügen.
    Das Problem, dass der Button mit Personal Menu nach einem Neustart aus der Toolbar verschwindet, ist allerdings geblieben. Mit diesem Test kann ich den Ball also wieder an den PM-Entwickler zurückspielen.

    Zitat von bege


    Dumm nur, dass PM die Buttons hier nicht nur clont sondern auch von der Toolbar klaut, selbst wenn sie gar nicht in PM verwendet werden sollen... Da scheint bei Add-on- und Script-Buttons was unterschiedlich zu laufen.


    Hallo aborix,
    ich habe im Forum für PM das Problem geschildert
    http://forums.mozillazine.org/…3565&p=13577801#p13577801
    und diese Antwort bekommen:
    Please try to update your script to use the API of CustomizableUI.jsm.
    https://developer.mozilla.org/…odules/CustomizableUI.jsm


    Kannst du damit was anfangen?

    Zitat von aborix


    Der Tooltip wird übrigens ebenfalls nicht aktualisiert.
    Wenn wir schon ein Zusatzskript haben, dann bauen wir das doch auch ein:


    Bei mir wird der Tooltip aktualisiert.
    Ich hatte ihn zuerst im Zusatzscript, aber da wird er erst angezeigt, wenn der Button einmal gedrückt wurde. Im USL-Script wird er sofort angezeigt.


    Hut ab, aborix, meine Hochachtung :klasse:
    Du bist ja ein echter JS-Künstler. Kannst du mir in Kürze erklären, warum das USL-Script den Button im PM nicht aktualisieren kann und ein zweites Script dafür nötig ist?


    Ich habe mich dafür entschieden, den WHT-Button fix auf der Addon-Leiste zu lassen, und den USL-Button ins PM-Menü zu verschieben.
    Das sieht jetzt so aus:


    [attachment=1]Screenshot_092.png[/attachment]


    und im Einstellungsmenü so:


    [attachment=0]Screenshot_093.png[/attachment]


    Dazu habe ich im USL-Skript dem verschiebbaren Button noch ein Label verpasst und das seitliche Padding vergrößert, damit der Button nicht so am Rand klebt (bei mir sind das die Zeilen 560 und 561)

    Code
    USL.icon.setAttribute('label', '    UserScriptLoader');
    USL.icon.style.padding = '0px 4px';


    Und der Vollständigkeit halber habe ich in diesem Block noch variable Tooltips eingefügt - besser: mit viel Versuch und noch mehr Irrtum reingebastelt, bis es geklappt hat - (bei mir ab Zeile 503):


    So, jetzt bin ich glücklich und zufrieden und dir sehr dankbar :D

    Zitat von aborix

    Um den Fehler einzugrenzen, teste bitte zunächst folgendes:


    Nimm nochmal ein neues Profil mit der Erweiterung userChromeJS und dem USL mit der Änderung von Beitrag 42. Keine weiteren Eweiterungen und Skripte.
    Bleibt der USL-Button nach Neustart?


    Ich weiß nicht, ob das jetzt verrückt oder peinlich ist oder beides. Nun hatte ich stundenlang getestet und hätte schwören können, dass die Buttons auch schon ohne Personal Menu verschwinden. Nun also mit dem x-ten neuen Profil getestet - und sie bleiben, beide, der von USL und WHT. Wird PM installiert, verschwinden sie, und zwar so:
    Ist ein Button auf einer Toolbar, verschwindet er von der Toolbar und aus dem Anpassen-Dialog.
    Ist ein Button nicht auf einer Toolbar, bleibt er im Anpassen-Dialog sichtbar.
    In PM sind sie, wie schon geschrieben, immer verfügbar. Es sieht jetzt also so aus, als ob PM die Buttons ganz einfach "klaut".


    Der Entwickler schreibt: "PM just clones the unused toolbar buttons and places them into its menu. Other extensions may not suppose their buttons are treated in this way; or those buttons need to be initialized in some conditions, that PM will not know." http://forums.mozillazine.org/…p?f=48&t=613565&start=433


    Dumm nur, dass PM die Buttons hier nicht nur clont sondern auch von der Toolbar klaut, selbst wenn sie gar nicht in PM verwendet werden sollen (so wie WHT, dass besser im Zugriff auf einer Toolbar bleibt). Da scheint bei Add-on- und Script-Buttons was unterschiedlich zu laufen.


    Dass der USL Button in PM nicht blass wird im deaktivierten Zustand (bzw. anders herum), bleibt bestehen.


    Zitat von aborix

    Ich habe mir zum Testen Personal Menu installiert. Bei mir sind keine Buttons im Menü. Wie bekomme ich die hinein?


    [attachment=2]Screenshot_081.png[/attachment]
    [attachment=1]Screenshot_082_ergebnis.png[/attachment]
    [attachment=0]Screenshot_083_ergebnis.png[/attachment]
    Fortsetzung ...