Firefox Extension Addon SDK kombiniert mehrere 'Aktionsschaltflächen'

8

Ich möchte zwei "Aktionsschaltflächen" zu einem zusammenfassen, genauso wie Firefox es derzeit mit seinem Lesezeichen-Addon macht. Beachten Sie, dass es in den Optionen "Anpassen ..." als eine Schaltfläche behandelt wird.

Hier ist ein Screenshot der gesamten Schaltfläche in der navBar.

Hier ist ein Screenshot der Schaltfläche 'Lesezeichen' in der 'Anpassen' GUI.

Ich habe die SDK-Dokumentation sorgfältig geprüft und es gibt keine explizite Möglichkeit, dies zu tun. Es scheint, dass dies eine Manipulation der sdk / ui-Bibliothek selbst erfordert. Ich schätze jede Information oder Einsicht, die mich zu einer Lösung für dieses Problem führt. Danke.

Klicken Sie hier für die Aktionsschaltfläche api referenz.

>     
arpie 14.06.2014, 00:59
quelle

1 Antwort

2

Ich habe gezögert, dies zuerst zu beantworten, aber da es niemanden gibt, der scheinbar eine bessere Antwort hat, hier ist meine Antwort "keine Antwort":

Die ActionButton API unterstützt dies derzeit nicht.

Aber alles ist nicht verloren. Sie können dies direkt mit dem neuen CustomizableUI APIs plus ein bisschen XUL und CSS, aber das ist im Allgemeinen Neuland. Hier sind Drachen; Sie wurden gewarnt.

Wenn Sie sich die Quellen für die Standardschaltflächen ansehen, werden Sie feststellen, dass es verschiedene Möglichkeiten gibt, Schaltflächen wie diese allgemein zu implementieren:

  • Der Lesezeichen-Button ist im Wesentlichen ein "normaler" <toolbarbutton type="menu-button"> mit einige benutzerdefinierte Stile für .toolbarbutton-menubutton-dropmarker (Box, die die Dropdown-Markierung enthält) und / oder .dropmarker-icon (die <image> in .toolbarbutton-menubutton-dropmarker , die das tatsächliche Dropdown-Symbol enthält). Wenn sich die Schaltfläche in einer Symbolleiste befindet, wird das Dropdown-Markerbild auf dieses "Listen" -Symbol anstelle des Standard-Abwärtspfeil-Symbols gesetzt, während das Ganze in der Palette oder im "Hamburger" -Menü ausgeblendet wird. Natürlich gibt es auch zusätzlichen Code, der die Standardaktion der Schaltfläche und / oder der Dropdown-Markierung korrigiert.
  • Auf der anderen Seite scheinen die Zoom-Steuerelemente in einem speziellen Container wieder drei Buttons zu sein, mit einigen benutzerdefinierten Styles, die anscheinend hauptsächlich wiederverwendbare Klassen sind (gesetzt über updateCombinedWidgetStyle ). Siehe CustomizeableWidgets z. auf MXR .

Ich schlage vor, dass Sie sich über die Verwendung von CustomizableUI informieren und natürlich die Code- und CSS-Regeln der integrierten Widgets lesen. Das Hinzufügen des Chrome-Windows-DOM mit dem DOM Inspector-Add-On kann ebenfalls hilfreich sein, z. um schneller herauszufinden, welche CSS-Regeln im Spiel sind und woher sie kommen;) Auch die tatsächliche Dateihistorie / Changesets könnten hilfreich sein.

Es kann auch sinnvoll sein, das SDK-Team aufzufordern, solche kombinierten Schaltflächen im ActionButton SDK zu unterstützen (oder selbst einen Patch dafür zu erstellen;)

    
nmaier 17.06.2014, 00:44
quelle