[Kde-pim] Review Request: Prevent KOrganizer from ignoring reminders that trigger during downtime

Frank Roscher onety-three at gmx.net
Wed Oct 24 19:35:59 BST 2012


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/106824/
-----------------------------------------------------------

(Updated Oct. 24, 2012, 6:35 p.m.)


Review request for KDEPIM.


Changes
-------

In accordance with David's comments and some private communication with him the code now also waits for all collections to be populated before the first check.
As we apparently cannot count on collectionTreeFetched and collectionPopulated signals to arrive in a specific order, we test our requirements each time either signal is received.

I'm not sure if the way I'm determining the status of the collection population is the most correct/elegant one, so please have a look at that. In my tests it did the right thing, though.


Description
-------

Since the switch to Akonadi, KOrganizer has had a pretty serious bug: If the collection and its items haven't already been loaded at the time of startup, the first check for reminders is performed against an empty collection. When the collection does show up, korgac thinks it has already checked for a backlog of reminders and thus only displays reminders that were supposed to trigger during the last minute or so. The result is that all reminders that are supposed to trigger while korgac is not running are silently ignored. This is especially harsh for birthday reminders, which usually get triggered at midnight.

This small patch tries to fix that using the new collectionTreeFetched/isCollectionTreeFetched functionality in EntityTreeModel, introduced by David Jarvie.


This addresses bug 282535.
    http://bugs.kde.org/show_bug.cgi?id=282535


Diffs (updated)
-----

  korganizer/korgac/koalarmclient.h adc8cef 
  korganizer/korgac/koalarmclient.cpp 34e9a42 

Diff: http://git.reviewboard.kde.org/r/106824/diff/


Testing
-------

I tested the triggering of reminders at startup in Xephyr sessions using a new user account. Reminders in two separate collections instead of only one were tested. All collections were local, though.
Disclaimer: I have a very limited knowledge about the Akonadi internals and might be fundamentally misunderstanding something about all this. Still, in my tests it has worked flawlessly.


Thanks,

Frank Roscher

_______________________________________________
KDE PIM mailing list kde-pim at kde.org
https://mail.kde.org/mailman/listinfo/kde-pim
KDE PIM home page at http://pim.kde.org/



More information about the kde-pim mailing list