Calendar Alarm Slider 1.2

Für die Erweiterung „Calendar Alarm Slider“ gibt es ein Update auf Version 1.2.

Auch diese Erweiterung war nach Weiterentwicklungen an Lightning/Thunderbird 60 nicht mehr kompatibel: Versionsnummern werden vor der Installation mittlerweile wieder strikter abgefragt, und außerdem hat das Styling des Einstellungen-Dialogs der Erweiterung nicht mehr funktioniert.

Die Anpassungen, die nötig waren, um die Erweiterung wieder zum Laufen zu bekommen, hielten sich nun in erstaunlich engen Grenzen – meine Test allerdings auch.

Calendar Alarm Slider 1.2:

Kompatibel mit:
Thunderbird 60

Die Datei:
calalarmslider-1.2.xpi

Die .diff:
1.1_vs_1.2.diff

Calendar Alarm Slider 1.1

Für die Erweiterung „Calendar Alarm Slider“ gibt es ein Update auf Version 1.1.

Die entsprechenden Änderungen schlummern schon seit weit über zwei Jahren auf der Festplatte:
In verschiedenen Funktionen wird nun auf die Dienste von Services.jsm zurückgegriffen. Außerdem hatte ich schon vor langer Zeit neben vielen Whitespace-Korrekturen einige der Änderungen übernommen, die Bug 738568 und Bug 818017 an der Slider-Implementierung vorgenommen haben. Weitere Änderungen, die es dort danach noch gegeben hat, habe ich nicht mehr übernommen. Und da ich mich schließlich noch dazu durchgerungen habe, die Aufforderung zum Umstieg auf MutationObserver zu ignorieren, war das Paket nun endlich mal reif für ein Update.

Calendar Alarm Slider 1.1:

Vorläufig kompatibel mit:
Thunderbird 18 – 46
SeaMonkey 2.1 – 2.43
Sunbird 1.0b1pre – 1.0

Die Datei:
calalarmslider-1.1.xpi

Die .diff:
1.0_vs_1.1.diff

Kleinere Aktualisierungen

Einige Tage nach der letzten großen Update-Runde für Lightning, Thunderbird und SeaMonkey habe ich die Erweiterungen „Calendar Alarm Slider“ (jetzt Version 1.0) und „Custom Calendar Defaults“ (stilles Update, keine Versionsänderung) aktualisiert – allerdings nur mit Blick auf die ausgewiesene Kompatibilität. An den Funktionen hat sich nichts geändert.

Die Downloads finden sich hier.

“Calendar Alarm Slider”: Version 0.0.7 erschienen

Für die Erweiterung „Calendar Alarm Slider“ gibt es ein Update auf Version 0.0.7.

Um mit der Lightning-Zeit zu gehen, sollte sich die Erweiterung nun auch in SeaMonkey installieren lassen. Außerdem wütete ein wenig die Bastelwut:

  • Der Slider schließt sich jetzt von selbst, sobald der Nutzer in dem Erinnerungsdialog eine Aktion ausführt. Denn in dem Fall wurde das Fenster offenbar wahrgenommen und der Nutzer kann selbst die Verantwortung für seine Erinnerungen übernehmen. Er braucht den Slider also nicht mehr.
  • Für die hartnäckig Vegesslichen/Verpeilten unter den Nutzern gibt es eine „hidden pref“, die über die erweiterte Konfiguration bearbeitet werden kann: „calAlarmSlider.diehardSlider“. Über sie kann der o.g. erste Punkt beeinflusst werden. Standard ist „false“. Setzt man die pref aber auf „true“, dann schließt sich der Slider eben nicht schon dann von selbst, wenn der Nutzer in dem Erinnerungsdialog eine Aktion ausführt. Der Slider ist also hartnäckiger, er will schon selbst einen Klick abbekommen (jedenfalls wenn er ein permanenter ist).
  • Wird das Erinnerungsfenster einfach durch einen Klick auf das Kreuz geschlossen, schließt sich auch der Slider.
  • Wenn nach dem Aufpoppen des Erinnerungsdialoges und des dazugehörigen Sliders eine weitere Erinnerung dazukommt oder wegbearbeitet wurde, werden Titel und Text des Sliders aktualisiert, damit dort möglichst nicht eine falsche Anzahl an Erinnerungen angezeigt wird. An dieser Stelle ist das Ding etwas unsauber programmiert, denn ich habe nicht den passenden eventhandler gefunden: „DOMAttrModified“ wird tatsächlich 4x je Widget/Erinnerung aufgerufen! Ich hätte etwas benötigt, was nur einmal je Änderung aktiviert wird… Auch habe ich unsaubererweise ein paar Leerzeichen in die Textstrings geschmuggelt, damit die Meldungen nicht abgeschnitten sind, wenn die Strings durch Updates deutlich länger werden als beim ersten Öffnen des Sliders. Aber es scheint zu funktionieren!
  • Schließlich habe ich noch ein paar „let“s und „var“s eingefügt, weil Warnungen wegen nicht deklarierter Variablen auftauchten. Ich habe ehrlich gesagt keinen Schimmer, ob das so sein muss oder nur guter Stil ist oder was… Aber so habe ich jedenfalls keine Warnungen mehr.

Nach wie vor: Tipps und Anregungen sind stets willkommen, z.B. was die erwähnten unsauberen Stellen betrifft. 😉

Calendar Alarm Slider 0.0.7:

Vorläufig kompatibel mit:
Thunderbird 3 – 7.0a1
SeaMonkey 2.1 – 2.5a1
Sunbird 1.0b1pre – 1.0pre

Die Datei:
calalarmslider-0.0.7.xpi

Die .diff:
006_vs_007.diff

“Calendar Alarm Slider”: Version 0.0.6 erschienen

Für die Erweiterung „Calendar Alarm Slider“ gibt es ein Update auf Version 0.0.6.

Neben einer kleineren Änderung am“wording“ und dem“required“-Abschnitt für Lightning in der install.rdf ist der neu hinzugekommene Einstellungen-Dialog erwähnenswert. Damit lässt sich nun etwas komfortabler einstellen, ob und wie ein „permanenter“ oder ein „intervallartiger“ (Ja, so heißt die Variante nun. Verbesserungsvorschläge?) Slider angezeigt werden soll.

Übrigens bin ich mir nur unter Windows  wirklich sicher, dass die Erweiterung wie beabsichtigt funktioniert. Unter Linux z.B. ist dann ja doch vieles anders, allein was das Vorhandensein / die Position des Trays betrifft… Erfahrungsberichte würden mich da durchaus interessieren.

Calendar Alarm Slider 0.0.6:

Vorläufig kompatibel mit:
Thunderbird 3 – 7.0a1
Sunbird 1.0b1pre – 1.0pre

Die Datei:
calalarmslider-0.0.6.xpi

Erweiterung “Calendar Alarm Slider” in Version 0.0.5

Für die Erweiterung „Calendar Alarm Slider“ gibt es schon wieder ein kleines Update, diesmal auf Version 0.0.5 und zur Fehlerbehebung.

Beim Basteln war mir zuletzt ein Fehler unterlaufen: Der Slider ließ sich nicht mehr schließen, wenn man erst das Erinnerungsfenster geschlossen und dann auf den Slider geklickt hat. Das sollte jetzt wieder funktionieren. Schönen Dank an edvoldi für’s Aufspüren.

Calendar Alarm Slider 0.0.5:

Vorläufig kompatibel mit:
Thunderbird 3 – 3.4a1pre
Sunbird 1.0b1pre – 1.0pre

Die Datei:
calalarmslider-0.0.5.xpi

Erweiterung “Calendar Alarm Slider”: Testversion 0.0.4

Für die gestern angekündigte Erweiterung „Calendar Alarm Slider“ gibt es ein kleines Update auf Version 0.0.4.

Darin ist neu eingebaut (und auch gleich als Standard gesetzt) ein permanenter Slider. Ein Erinnerungsfenster poppt auf, ein Slider erscheint und verschwindet erst wieder, wenn man draufgeklickt hat.

Die Entscheidung, ob nun ein permanenter Slider oder ein regelmäßig wiederkehrender Slider angezeigt wird, kann man über eine Option in der erweiterten Konfiguration treffen, nämlich „calAlarmSlider.showPermanentSlider“. „true“ heißt „Ja, gib mir den permanenten Slider!!“, „false“ heißt „Ich hätte gerne den regelmäßig wiederkehrenden Slider!!“.

Der permanente Slider kann natürlich nervig sein!! Gerade deshalb lässt er sich ja aber abschalten. Hauptsache, es hat möglichst niemand mehr Beschwerden, weil er Erinnerungen verpasst hat…

Zudem gab’s etwas mehr Kompatibilität spendiert, ab Thunderbird 3 sollte sich die Erweiterung jetzt installieren lassen. Sonst bleibt eigentlich alles so, wie es im letzten Post beschrieben worden ist.

Calendar Alarm Slider 0.0.4:

Vorläufig kompatibel mit:
Thunderbird 3 – 3.4a1pre
Sunbird 1.0b1pre – 1.0pre

Die Datei:
calalarmslider-0.0.4.xpi

Erweiterung „Calendar Alarm Slider“: Testversion 0.0.2 ist da

Es wurde schon erwähnt: Die Erinnerungsfunktion in Sunbird und Lightning hat immer wieder zu Kritik geführt, weil man relativ leicht Erinnerungen verpassen konnte, wenn sie sich hinter anderen Fenstern ‚versteckten‘.

Ich habe jetzt versucht, die in Bug 329676 ins Spiel gebrachte Idee eines Sliders in Form einer Erweiterung als Nachrüstung zur Verfügung zu stellen, und denke, dass das Dingen fast fertig ist.

So sieht es momentan aus:

Wenn Sunbird oder Lightning ein Erinnerungsfenster öffnen, werden auch das Overlay und die paar Bröckchen Code der Erweiterung geladen. Der Code basiert auf dem Toolkit-Slider, nutzt allerdings eine modifizierte Kopie, nicht den Originalcode.

Das alles kann dieser Slider auf diese Weise schon:

  • Wenn Sunbird oder Lightning ein Erinnerungsfenster öffnen, geht auch der Slider auf. Er tut dies immer im Vordergrund und zusätzlich zum Erinnerungsfenster. Er informiert darüber, wieviele offene Erinnerungen im Erinnerungsfenster angezeigt werden.
  • Wie lange der Slider zu sehen ist, lässt sich über die erweiterte Konfiguration individuell anpassen. Dort gibt es die Pref „calAlarmSlider.totalOpenTime“, für die ein eigener Wert in Millisekunden angegeben werden kann. Danach verschwindet der Slider – scheinbar spurlos. Trotzdem bestehen gute Chancen, offene Erinnerungen nicht zu verpassen, denn:
  • Wenn der Slider aufgerufen wird, wird außerdem eine Funktion aufgerufen, die in einem festgelegten Intervall überpüft, ob ein Erinnerungsfenster mit offenen Erinnerungen existiert. Wenn das so ist, erscheint der Slider erneut! Wie groß das Intervall für diese Überprüfung sein soll, lässt sich wiederum über die erweiterte Konfiguration individuell anpassen.Dort gibt es die Pref „calAlarmSlider.checkInterval“, für die ein eigener Wert in Millisekunden angegeben werden kann. Wenn ich also weiß, dass ich öfter nicht am Rechner oder aber abgelenkt bin, wenn dort für mich wichtige Erinnerungen aufpoppen, lasse ich den Slider eben alle 20 Sekunden (= 20000 Millisekunden) aufscheinen und werde so auf jeden Fall zeitnah erinnert. Wenn ich ein gemütlicher Mensch bin, gebe ich dem Slider dafür eben ein paar Minuten… Ausprobieren. Jeder, wie er mag.
  • Ein Klick auf den Slider schließt den Slider und gibt dem Erinnerungsfenster den Fokus. Außerdem wird mit diesem Klick die intervallartige Überpüfung abgebrochen: Mit dem Klick hat der Nutzer Aktivität gezeigt, er sollte seine Erinnerungen jetzt registriert haben und ist fortan selbst für alles verantwortlich.

Das kann der Slider (noch) nicht:

  • Schön wäre ein Einstellungen-Dialog, um die Konfiguration über ein UI vornehmen zu können.
  • Mein Linux ist platt, Mac hatte ich nie: Keine Ahnung, wie das alles auf anderen Systemen als Windows aussieht oder überhaupt funktioniert.
  • Schön wäre es, wenn die intervallartige Überprüfung des Slider auch dann abgebrochen würde, wenn der Nutzer von selbst (also ohne Klick auf den Slider) irgendwie das Erinnerungsfenster fokussiert. Bislang erscheint der Slider trotzdem immer wieder, so lange, bis alle Erinnerungen bearbeitet und/oder das Erinnerungsfenster geschlossen wurde(n).
  • Die Formulierungen des Sliders sind noch nicht optimal, aber mir ist nichts Besseres eingefallen!
  • Ein paar ungenutzte Code-Reste schlummern noch in den Dateien, nicht alles ist aufgeräumt.
  • Es könnte Szenarien geben, in denen sich mit den Konfig-Möglichkeiten grober Unfug anstellen lässt. Ich habe die diversen Zeitangaben im Zusammenspiel kaum getestet. Feedback?
  • Ich hätte gerne noch das „flashing alarm icon“ in den Titel des Sliders eingebaut.
  • Die install.rdf bräuchte sinnigerweise noch einen „required“-Abschnitt.

Gerne dürfen Interessierte diese Mankos ausbügeln oder Feedback geben!! Die Ferien sind allerdings so gut wie vorbei, ich werde in absehbarer Zeit nur *sehr* bedingt weiter basteln können… Außer vielleicht an den unterstützten Versionen in der install.rdf, da würde dann ein Update auf 0.0.3 ausgeliefert.

Calendar Alarm Slider 0.0.2:

Vorläufig kompatibel mit:
Thunderbird 3.4a1pre – 3.4a1pre
Sunbird 1.0b1pre – 1.0pre

Die Dateien:
calalarmslider-0.0.2.xpi

EDIT:

Version 0.0.3 ist auch mit Thunderbird 3.3a4pre („Miramar“) kompatibel:

calalarmslider-0.0.3.xpi