Code zum Aktivieren/Deaktivieren restartless-Erweiterungen?

  • Es gibt ja mittlerweile viele Erweiterungen, die restartless sind, also ohne Neustart des Browsers aktiviert und deaktiviert werden können.
    Dazu muß man ja nur zu den AddOns, den entsprechenden Knopf drücken und wieder zurück.

    Ich möchte mir so eine Funktion (aktivieren / deaktivieren) bestimmter Erweiterungen auf einen Button legen (für solche Button-Dinge verwende ich custombuttons).

    Die Frage ist nur: wie stellt man das an?
    Der DOMi zeigt mir z.B. als oncommand-Befehl für einen Deaktivieren-Button

    Code
    document.getBindingParent(this).userDisabled = true;

    an.
    Aber was ist in diesem Falle "getBindingParent(this)"?

    Irgendeine Idee, welchen Befehl man zum Aktivieren / Deaktivieren absetzen muß?

  • Code
    let AddonManager = Components.utils.import('resource://gre/modules/AddonManager.jsm').AddonManager;
    
    AddonManager.getAddonByID('fmscene_statusbar@soeren-hentzschel.at', function(addon) {  
        addon.userDisabled = addon.userDisabled ? false : true;
    });

    fmscene_statusbar @ soeren-hentzschel.at ist in diesem Fall der Identifier der Erweiterung, welche du aktivieren / deaktivieren möchtest, den musst du entsprechend anpassen.

  • Klappt super!
    :klasse: Dankeschön!

    Edit: für die Nachwelt: sowas eignet sich besonders für Erweiterungen, die mal auf die Schnelle deaktiviert werden wollen, falls es eine Seite erfordert. In meinem Fall war der Hintergrund der Frage die Erweiterung "Smart-Referer". Da wird es laut Entwickler in Kürze eine neue Version 0.0.4.3 geben, die restartless angelegt ist (wird momentan von Mozilla reviewed).