Beiträge von jobisoft
-
-
-
Wegen dem bug, ist da die Reihenfolge der Onload trigger wichtig? Wiso sieht Quote Color nicht die Änderungen von allow HTML, sondern arbeitet mit dem originalen Inhalt?
-
Achso, du meinst die Funktionalität selbst, ja da stimmt. Aber das ist ein anderes Brett das Thunder da boren muss. Ich kann ihn da nur am Rande unterstützen. Ich denke den patch muss er größten Teils selber machen. Aber du hast Recht, da werden wir auch bei einigen Add-ons gucken, ob da was geht. Ich sag mal "Phase 3".
-
Vielleicht animiert das ja die Thunderbirdentwickler es demnächst in den Code aufzunehmen.
Da muss ich direkt dämpfen, das wird nicht passieren und war auch nicht Ziel. Ziel war es das Update in kleine Häppchen zu teilen, damit die Add-On Entwickler nicht vor dieser unlösbaren Herkulesaufgabe stehen. In den nächsten Monaten werde ich weitere Tutotrials veröffentlichen, um die Add-Ons immer weiter Richtung echte MailExtensions zu bringen.
-
nicht verraten
Ist das hier nicht öffentlich?
Auf jeden Fall freue ich mich riesig, dass ich dich mit meiner WL API wieder zurück ins Boot holen konnte. Dann hat sich die ganze Arbeit auf jeden Fall gelohnt. Danke das du es probiert und deine Zeit da reingesteckt hast!
Allerdings habe ich mal wieder das Gefühl, dass Thunderbird aktualisierte Add-ons bzw. deren Daten manchmal nicht sofort korrekt neu lädt (trotz -purgecaches).
Kannst du das reproduzieren? Also IMG Datei (in place) ersetzen aber es wird weiterhin das alte version benutzt? Bzw. CSS ändern und ein anderes Bild benutzen abe es wird weiterhin das alte Bild benutzt? Dann müsste ich das im Detail untersuchen.
-
-
-
Der DTD parameter ist ein array:
injectElements(...., ["chrome://allowhtmltemp/locale/allowhtmltemp.dtd", "chrome://messenger/locale/messenger.dtd"]);
injectCSS() must be called multiple times, no array support.
-
Kannst du mir deine ATN email per PM zukommen lassen?
-
Evtl mit dem hier zusammentun?
https://addons.thunderbird.net/en-us/thunderb…ew-quotecolors/
-
Ich muss einen prefsObserver im Code ändern, da er schlichtweg versagt. Ich bekomme den observer zum Laufen, möchte diesen aber auf den "quotecolors." Branch begrenzen. Daran scheitere ich.
JavaScriptvar myObserver = { observe: function(aSubject, aTopic, aData) { console.log(aSubject); console.log(aTopic); console.log(aData); } } Services.prefs.getBranch("").addObserver("extensions.sendtocategory.", myObserver);
Das klappt bei mir wie in der Dokumentation beschrieben. Das Ding feuert nur bei Änderungen in meinem sendtocategory branch. Wie sieht denn dein Code aus? Es funktioniert wohl nur auf dem root branch.
-
Vielleicht könnte man mich für dieses Add-on eintragen / freischalten:
https://addons.thunderbird.net/de/thunderbird/addon/quote-colors/Das dürfen wir leider nicht. Es muss vom originalen Author eine Freigabe erfolgen. Im ATN backend kann er dich als Eigentümer oder als Entwickler hinzufügen. Anders geht es leider nicht. Bei den Add-Ons die ich übernommen habe musste ich auch diesen Weg gehen.
-
Bei meinen Tests (jetzt in TB78) ging es hier nicht weiter
https://gitlab.com/ThunderbirdMai…ors.js#L276-280
D.h. es gibt keinen zweiten Call. gnPrintMsgCnt ist -1 und du macht einen early return. Dann ist Ende.
Hat das denn in TB68 (mit dem WindowListener) funktioniert? Also ist das ein Problem bei der Umstellung auf den WindowListener oder ein Problem das durch TB78 verurscaht wird?
-
Oder du lädst qc_globals.js nicht in window sondern in window.QCGlobals , welches du vor dem scriptload aufruf mit window.QCGlobals = {} platt machst.
-
Du hast da einen MixMax gemacht. Dein manifest sagt ab 78, deine background.js registriert aber deine JS files für 68er XUL files.
Phase 1 und Phase 2 des updates (Wechsel auf WindowListener) werden in 68 gemacht. Erst wenn in 68 alles klappt, dann kommt der Wechsel auf 78 und da musst du alle xul files in xhtml files umbenennen (auch die core files, auf die der WL reagieren soll).
In Phase 3 musst du dann deinen eigentlichen code evtl noch an Änderungen von 68->78 anpassen. Ich wollte aber nicht das du beide Baustellen gleichzeitig hast (WL setup UND 68->78 changes). Deswegen sagt der guide gaz klar: Erst im letzten Schritt wechseln wir auf 78.
Wenn ich dein add-on anpasse und in 68 lade, kann ich console.log() Einträge im onload sehen. Ich weiß aber nicht wie das add-on sonst funktioniert und konnte es nicht weiter testen
in qc_globals.js musst du die top level const los werden, weil die beim neu laden (z.B. Updates, oder remove und neu installieren ohne TB neu zu starten) nicht überschrieben werden können und Fehler werfen und weil du kein try catch um den entsprechenden scriptload hast dein ganzen load script stirbt. Ich würde da ein var QCGlobals = {} empfehlen und die dinger da drin definieren.
-
Blöd gefragt: muss ich window. dann quer durch die 3 JS Dateien hinzufügen, in denen diese Variablen / Objekte drin sind?
Ne, dein code läuft im window scope ganz normal wie früher. Der Injector aber nicht (die onLoad und onUnload Funktionen). Der hat also keinen direkten Zugriff auf Objekte in window, daher musst du in den beiden Funktionen window. mit angeben.
-
Ja, Fehler ist bekannt, ich komme aber gerade nicht dazu den zu fixen. Evtl. am Wochenende...
-
JavaScript
Alles anzeigen// Import any needed modules. var { Services } = ChromeUtils.import("resource://gre/modules/Services.jsm"); // Load an additional JavaScript file. Services.scriptloader.loadSubScript("chrome://quotecolors/content/qc_globals.js", window, "UTF-8"); Services.scriptloader.loadSubScript("chrome://quotecolors/content/qc_overlay.js", window, "UTF-8"); Services.scriptloader.loadSubScript("chrome://quotecolors/content/quotecolors.js", window, "UTF-8"); function onLoad(activatedWhileWindowOpen) { // observe mail pane config changes window.QCMailPaneConfigObserver.register(); // observe QC pref changes to reload message window.QCPrefUpdateObserver.register(); window.QCObj.initMain(); } function onUnload(deactivatedWhileWindowOpen) { window.QCunloadMessenger() }
Also onload und onunload event funktionieren nicht, sondern dumusst das jeweils in onLoad() und onUnload() packen. Nicht vergessen window. vor deine Funktionsaufrufe dranzuhängen, weil deine JS files ja in window geladen wurden.
ich denke so müsste das funktionieren. Geht das?
Geht das?
-
geht aber erst moit
Der Provider for Google Calendar Version 78.0.1
Geht aber erst mit TB 78.2
Also noch etwas Geduld.