aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/e-week-view.c
diff options
context:
space:
mode:
authorSuman Manjunath <msuman@src.gnome.org>2008-09-14 16:17:20 +0800
committerSuman Manjunath <msuman@src.gnome.org>2008-09-14 16:17:20 +0800
commit0418253eff2bc00c1b9ae9f4daa7af82a71b4899 (patch)
tree9d5b0631457059d7d22a0c13c9e07f5c11490301 /calendar/gui/e-week-view.c
parent9f755b0c6d2c880b7d2f44531d513ef0777d1e91 (diff)
downloadgsoc2013-evolution-0418253eff2bc00c1b9ae9f4daa7af82a71b4899.tar
gsoc2013-evolution-0418253eff2bc00c1b9ae9f4daa7af82a71b4899.tar.gz
gsoc2013-evolution-0418253eff2bc00c1b9ae9f4daa7af82a71b4899.tar.bz2
gsoc2013-evolution-0418253eff2bc00c1b9ae9f4daa7af82a71b4899.tar.lz
gsoc2013-evolution-0418253eff2bc00c1b9ae9f4daa7af82a71b4899.tar.xz
gsoc2013-evolution-0418253eff2bc00c1b9ae9f4daa7af82a71b4899.tar.zst
gsoc2013-evolution-0418253eff2bc00c1b9ae9f4daa7af82a71b4899.zip
Chenthill Palanisamy <pchenthill@novell.com> ** Fix for bug #551628 (Remove old events from the view when objects are modified).
svn path=/trunk/; revision=36322
Diffstat (limited to 'calendar/gui/e-week-view.c')
-rw-r--r--calendar/gui/e-week-view.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/calendar/gui/e-week-view.c b/calendar/gui/e-week-view.c
index 67dc931c68..419934297f 100644
--- a/calendar/gui/e-week-view.c
+++ b/calendar/gui/e-week-view.c
@@ -337,10 +337,28 @@ update_row (EWeekView *week_view, int row)
{
ECalModelComponent *comp_data;
ECalModel *model;
+ gint event_num;
+ const char *uid;
+ char *rid = NULL;
model = e_calendar_view_get_model (E_CALENDAR_VIEW (week_view));
comp_data = e_cal_model_get_component_at (model, row);
g_return_if_fail (comp_data != NULL);
+
+ uid = icalcomponent_get_uid (comp_data->icalcomp);
+ if (e_cal_util_component_is_instance (comp_data->icalcomp)) {
+ icalproperty *prop;
+
+ prop = icalcomponent_get_first_property (comp_data->icalcomp, ICAL_RECURRENCEID_PROPERTY);
+ if (prop)
+ rid = icaltime_as_ical_string (icalcomponent_get_recurrenceid (comp_data->icalcomp));
+ }
+
+ if (e_week_view_find_event_from_uid (week_view, comp_data->client, uid, rid, &event_num))
+ e_week_view_remove_event_cb (week_view, event_num, NULL);
+
+ g_free (rid);
+
process_component (week_view, comp_data);
gtk_widget_queue_draw (week_view->main_canvas);