aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/calendar.c
diff options
context:
space:
mode:
authorArturo Espinosa <unammx@src.gnome.org>1998-04-29 10:38:48 +0800
committerArturo Espinosa <unammx@src.gnome.org>1998-04-29 10:38:48 +0800
commit282114a676e69a0b4c0656b3a6266d27165b2039 (patch)
treed34c5be00109f8f6af69412bbe67a6265f112098 /calendar/calendar.c
parent55ae95fe78692dfa59a17520b40b6ac89fcad706 (diff)
downloadgsoc2013-evolution-282114a676e69a0b4c0656b3a6266d27165b2039.tar.gz
gsoc2013-evolution-282114a676e69a0b4c0656b3a6266d27165b2039.tar.zst
gsoc2013-evolution-282114a676e69a0b4c0656b3a6266d27165b2039.zip
Lots of fixes:
Lots of fixes: 1. Alarms are rescheduled when an event has been changed. 2. Avoid emitting spurious event changes. 3. Applied black magic to get the mail-notification working. Miguel. svn path=/trunk/; revision=199
Diffstat (limited to 'calendar/calendar.c')
-rw-r--r--calendar/calendar.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/calendar/calendar.c b/calendar/calendar.c
index 492ff24135..c53d2f1566 100644
--- a/calendar/calendar.c
+++ b/calendar/calendar.c
@@ -382,3 +382,15 @@ calendar_get_events_in_range (Calendar *cal, time_t start, time_t end)
calendar_iterate (cal, start, end, assemble_event_list, &l);
return l;
}
+
+void
+calendar_object_changed (Calendar *cal, iCalObject *obj, int flags)
+{
+ if (!(flags & CHANGE_DATES))
+ return;
+
+ /* Remove any alarms on the alarm list for this object */
+ while (alarm_kill (obj))
+ ;
+ ical_object_try_alarms (obj);
+}