Kann man einen ganzen pref-Branch auf einmal resetten?
Per prefs.clearUserPref('extensions.attachmentextractor_cont.'); geht es wohl nicht.
Kann man einen ganzen pref-Branch auf einmal resetten?
Per prefs.clearUserPref('extensions.attachmentextractor_cont.'); geht es wohl nicht.
Kann man einen ganzen pref-Branch auf einmal resetten?
Ungetestet: Dokumentation meint resetBranch(), ist aber wohl nicht nativ implementiert. Alternative ist wohl die gleichnamige Methode in Preferences.jsm (erreichbar über Services.prefs in Services.jsm).
generalsync: Bist du sicher, dass Services.prefs.* ein alias für Preferences.jsm ist? Laut
https://searchfox.org/mozilla-centra…vices.jsm#23-27
ist das ein alias für Ci.nsIPrefService.
Aber die Logic hinter dem Code in Preferences.jsm ist recht trival, das entscheidende passiert hier:
https://dxr.mozilla.org/mozilla-releas…ces.jsm#226-233
Wenn es eine Pref ist, dann führt er ein clear aus, ansonsten hangelt er sich rekursiv weiter im Baum.
Bist du sicher, dass Services.prefs.* ein alias für Preferences.jsm ist?
Nein, deshalb hatte ich "ungetestet" geschrieben. Ich gebe dir aber recht, dass es im Code nicht danach aussieht – ich muss eben beim Greppen verrutscht sein. Sorry für die Verwirrung.
Wenn es eine Pref ist, dann führt er ein clear aus, ansonsten hangelt er sich rekursiv weiter im Baum.
Wenn ich nicht irre, funktioniert das aber nur, wenn ich eine Pref oder eben ein Array dafür habe. Ein Pref-Branch ist aber doch gar keine Array, oder irre ich mich? Ich habe es bis jetzt jedenfalls nicht zum Funktionieren bekommen.
Für aktuelle Screenshots verweise ich Interessierte momentan mal auf ATN:
https://addons.thunderbird.net/de/thunderbird…ctor-continued/
Ein Pref-Branch ist aber doch gar keine Array, oder irre ich mich?
Nein, aber du kannst einen bekommen (via getChildList). Ich würde aber der Lesbarkeit wegen eher direkt Preferences.resetBranch nehmen, auch wenn die Logik dahinter trivial ist. Beispiele findest du z.B. in den Tests zu Preferences.jsm.
Ich bin momentan mal wieder an einem Scheideweg mit der Weiterentwicklung des Add-ons, weshalb ich die letzten 2 Wochen auch quasi nichts mehr gemacht habe:
Abhängig vom Ergebnis des Bugs https://bugzilla.mozilla.org/show_bug.cgi?id=1578801 hätte man die Möglichkeit die Massenverarbeitung der zu löschenden Attachments noch weiter/besser mit Thunderbirds eigenen Routinen erledigen zu lassen. Da kommt dann der "Scheideweg" ins Spiel, da Thunderbirds eigene Routinen ein paar Optionen des Add-ons endgültig unmöglich machen würden.
So oder so: Es wäre gut, wenn jemand für den genannten Bug einen Patch erstellen könnte. Erst dann kann ich aus meiner Sicht mit dem Add-on wieder weiter machen.
Abhängig vom Ergebnis des Bugs https://bugzilla.mozilla.org/show_bug.cgi?id=1578801 hätte man die Möglichkeit die Massenverarbeitung der zu löschenden Attachments noch weiter/besser mit Thunderbirds eigenen Routinen erledigen zu lassen.
Wenn man das Feature in dem genannten Bug umsetzen könnte, wäre vermutlich zur Zeit am besten geholfen.
Dafür würde ich nur zu gerne auf die Abfrage der Mindest-Größe der zu löschenden Attachments und auch auf das Setzen des Zeitstempels bei den gespeicherten Attachments verzichten. Ich sage mir da inzwischen auch: Lieber weniger Funktionen, aber dafür "saubere", korrekte Funktionen.