diff options
author | Srinivasa Ragavan <sragavan@src.gnome.org> | 2006-01-18 22:26:32 +0800 |
---|---|---|
committer | Srinivasa Ragavan <sragavan@src.gnome.org> | 2006-01-18 22:26:32 +0800 |
commit | 0d86641b0fa28a5950444c962abc0f5a830e7fc8 (patch) | |
tree | 10b2b1d3aa6f715262e36d11240e3e92cb3aea2a | |
parent | 1733cb9d6112bd8a860b515d71b04294cce61043 (diff) | |
download | gsoc2013-evolution-0d86641b0fa28a5950444c962abc0f5a830e7fc8.tar.gz gsoc2013-evolution-0d86641b0fa28a5950444c962abc0f5a830e7fc8.tar.zst gsoc2013-evolution-0d86641b0fa28a5950444c962abc0f5a830e7fc8.zip |
Committed Chax's fix for double click of events in week/month view. Partly fixes #207071
svn path=/trunk/; revision=31235
-rw-r--r-- | calendar/ChangeLog | 5 | ||||
-rw-r--r-- | calendar/gui/e-week-view.c | 27 |
2 files changed, 27 insertions, 5 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog index 769932fc71..96b9bc489e 100644 --- a/calendar/ChangeLog +++ b/calendar/ChangeLog @@ -1,3 +1,8 @@ +2006-01-17 P S Chakravarthi <pchakravarthi@novell.com> + + * gui/e-week-view.c : added some code in e_week_view_on_button_press () + to handle double click on an event in week and month view. + 2006-01-16 Johnny Jacob <johnnyjacob@gmail.com> * gui/dialogs/event-page.c (edit_button_cb): Added. diff --git a/calendar/gui/e-week-view.c b/calendar/gui/e-week-view.c index e1ba4b14b3..ce6b64eae1 100644 --- a/calendar/gui/e-week-view.c +++ b/calendar/gui/e-week-view.c @@ -2084,16 +2084,33 @@ e_week_view_on_button_press (GtkWidget *widget, day = e_week_view_convert_position_to_day (week_view, x, y); if (day == -1) return FALSE; + + if (event->type == GDK_2BUTTON_PRESS) { + GList *list; + ECalModelComponent *comp_data; + ECalendarViewEvent *ecalevent; + ECalComponent *comp = e_cal_component_new (); + gboolean is_meeting; - /* If an event is pressed just return. */ - if (week_view->pressed_event_num != -1) - return FALSE; + list = e_week_view_get_selected_events (E_CALENDAR_VIEW (week_view)); + ecalevent = (ECalendarViewEvent *)list->data; + comp_data = ecalevent->comp_data; + e_cal_component_set_icalcomponent (comp, icalcomponent_new_clone (comp_data->icalcomp)); - if (event->button == 1 && event->type == GDK_2BUTTON_PRESS) { - e_calendar_view_new_appointment_full (E_CALENDAR_VIEW (week_view), TRUE, FALSE); + is_meeting = e_cal_component_has_attendees (comp); + e_calendar_view_edit_appointment (E_CALENDAR_VIEW (week_view), + comp_data->client, + comp_data->icalcomp, is_meeting); + g_object_unref (comp); + g_list_free (list); return TRUE; } + + /* If an event is pressed just return. */ + if (week_view->pressed_event_num != -1) + return FALSE; + if (event->button == 1) { /* Start the selection drag. */ if (!GTK_WIDGET_HAS_FOCUS (week_view) && !GTK_WIDGET_HAS_FOCUS (week_view->main_canvas)) |