diff options
author | Kidd Wang <kidd.wang@sun.com> | 2004-03-12 13:49:35 +0800 |
---|---|---|
committer | Kidd Wang <kiddwang@src.gnome.org> | 2004-03-12 13:49:35 +0800 |
commit | 30436b730b5e470f17e587ce00b02a47c31b1be9 (patch) | |
tree | 31c54829be81a8fff93c70198b3722b68a92064f /calendar/gui | |
parent | e4f2ba413890a33507dfe1d8f6c48912a10f74b8 (diff) | |
download | gsoc2013-evolution-30436b730b5e470f17e587ce00b02a47c31b1be9.tar.gz gsoc2013-evolution-30436b730b5e470f17e587ce00b02a47c31b1be9.tar.zst gsoc2013-evolution-30436b730b5e470f17e587ce00b02a47c31b1be9.zip |
add a call to e_cal_component_commit_sequence since we have changed the
2004-03-09 Kidd Wang <kidd.wang@sun.com>
* gui/e-day-view.c: (e_day_view_finish_long_event_resize): add a call
to e_cal_component_commit_sequence since we have changed the property
of the component. Whether the new event is all day should also be
set properly according to the value of the original event.
svn path=/trunk/; revision=25039
Diffstat (limited to 'calendar/gui')
-rw-r--r-- | calendar/gui/e-day-view.c | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/calendar/gui/e-day-view.c b/calendar/gui/e-day-view.c index 71f9f916be..0354ba4797 100644 --- a/calendar/gui/e-day-view.c +++ b/calendar/gui/e-day-view.c @@ -3730,6 +3730,7 @@ e_day_view_finish_long_event_resize (EDayView *day_view) ECal *client; CalObjModType mod = CALOBJ_MOD_ALL; GtkWindow *toplevel; + int is_date; event_num = day_view->resize_event_num; event = &g_array_index (day_view->long_events, EDayViewEvent, @@ -3744,18 +3745,24 @@ e_day_view_finish_long_event_resize (EDayView *day_view) e_cal_component_set_icalcomponent (comp, icalcomponent_new_clone (event->comp_data->icalcomp)); date.value = &itt; - /* FIXME: Should probably keep the timezone of the original start - and end times. */ - date.tzid = icaltimezone_get_tzid (e_calendar_view_get_timezone (E_CALENDAR_VIEW (day_view))); + date.tzid = NULL; if (day_view->resize_drag_pos == E_CALENDAR_VIEW_POS_LEFT_EDGE) { + e_cal_component_get_dtstart (comp, &date); + is_date = date.value->is_date; + if (!is_date) + date.tzid = icaltimezone_get_tzid (e_calendar_view_get_timezone (E_CALENDAR_VIEW (day_view))); dt = day_view->day_starts[day_view->resize_start_row]; - *date.value = icaltime_from_timet_with_zone (dt, FALSE, + *date.value = icaltime_from_timet_with_zone (dt, is_date, e_calendar_view_get_timezone (E_CALENDAR_VIEW (day_view))); e_cal_component_set_dtstart (comp, &date); } else { + e_cal_component_get_dtend (comp, &date); + is_date = date.value->is_date; + if (!is_date) + date.tzid = icaltimezone_get_tzid (e_calendar_view_get_timezone (E_CALENDAR_VIEW (day_view))); dt = day_view->day_starts[day_view->resize_end_row + 1]; - *date.value = icaltime_from_timet_with_zone (dt, FALSE, + *date.value = icaltime_from_timet_with_zone (dt, is_date, e_calendar_view_get_timezone (E_CALENDAR_VIEW (day_view))); e_cal_component_set_dtend (comp, &date); } @@ -3769,6 +3776,7 @@ e_day_view_finish_long_event_resize (EDayView *day_view) toplevel = GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (day_view))); + e_cal_component_commit_sequence (comp); e_calendar_view_modify_and_send (comp, client, mod, toplevel, TRUE); out: |