diff options
author | Chenthill Palanisamy <pchenthill@novell.com> | 2009-05-21 16:42:04 +0800 |
---|---|---|
committer | Chenthill Palanisamy <pchenthill@novell.com> | 2009-05-21 16:42:04 +0800 |
commit | ceb57eb3a8bc04eca26d859ff766130d06cb0e54 (patch) | |
tree | 67a8d7c4913e01fb6180f0ab6df71537597390c2 /calendar | |
parent | 3b946037007857c3d2be0c39db0782f9dbaef461 (diff) | |
download | gsoc2013-evolution-ceb57eb3a8bc04eca26d859ff766130d06cb0e54.tar.gz gsoc2013-evolution-ceb57eb3a8bc04eca26d859ff766130d06cb0e54.tar.zst gsoc2013-evolution-ceb57eb3a8bc04eca26d859ff766130d06cb0e54.zip |
Fixes bug 498712 (bnc) - deleting meetings sometimes does not work properly.
Diffstat (limited to 'calendar')
-rw-r--r-- | calendar/gui/dialogs/delete-comp.c | 6 | ||||
-rw-r--r-- | calendar/gui/dialogs/delete-comp.h | 2 | ||||
-rw-r--r-- | calendar/gui/e-calendar-table.c | 6 | ||||
-rw-r--r-- | calendar/gui/e-calendar-view.c | 9 |
4 files changed, 10 insertions, 13 deletions
diff --git a/calendar/gui/dialogs/delete-comp.c b/calendar/gui/dialogs/delete-comp.c index 3508f38f02..e5ae1e6cdc 100644 --- a/calendar/gui/dialogs/delete-comp.c +++ b/calendar/gui/dialogs/delete-comp.c @@ -167,7 +167,7 @@ cb_toggled_cb (GtkWidget *toggle, gpointer data) } gboolean -prompt_retract_dialog (ECalComponent *comp, char **retract_text, GtkWidget *parent) +prompt_retract_dialog (ECalComponent *comp, char **retract_text, GtkWidget *parent, gboolean *retract) { char *message = NULL; ECalComponentVType type = E_CAL_COMPONENT_NO_TYPE; @@ -232,13 +232,15 @@ prompt_retract_dialog (ECalComponent *comp, char **retract_text, GtkWidget *pare GtkTextIter text_iter_start, text_iter_end; GtkTextBuffer *text_buffer; + *retract = TRUE; text_buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (entry)); gtk_text_buffer_get_start_iter (text_buffer, &text_iter_start); gtk_text_buffer_get_end_iter (text_buffer, &text_iter_end); *retract_text = gtk_text_buffer_get_text (text_buffer, &text_iter_start, &text_iter_end, FALSE); - } + } else + *retract = FALSE; } gtk_widget_destroy ((GtkWidget *) dialog); diff --git a/calendar/gui/dialogs/delete-comp.h b/calendar/gui/dialogs/delete-comp.h index a2f85301a0..bb4b5983d9 100644 --- a/calendar/gui/dialogs/delete-comp.h +++ b/calendar/gui/dialogs/delete-comp.h @@ -33,6 +33,6 @@ gboolean delete_component_dialog (ECalComponent *comp, gboolean consider_as_untitled, int n_comps, ECalComponentVType vtype, GtkWidget *widget); -gboolean prompt_retract_dialog (ECalComponent *comp, char **retract_text, GtkWidget *parent); +gboolean prompt_retract_dialog (ECalComponent *comp, char **retract_text, GtkWidget *parent, gboolean *retract); #endif diff --git a/calendar/gui/e-calendar-table.c b/calendar/gui/e-calendar-table.c index d032066f86..ac920020f9 100644 --- a/calendar/gui/e-calendar-table.c +++ b/calendar/gui/e-calendar-table.c @@ -947,9 +947,6 @@ check_for_retract (ECalComponent *comp, ECal *client) ret_val = TRUE; } - if (!ret_val) - ret_val = e_account_list_find(itip_addresses_get(), E_ACCOUNT_FIND_ID_ADDRESS, strip) != NULL; - g_free (email); return ret_val; } @@ -995,8 +992,7 @@ e_calendar_table_delete_selected (ECalendarTable *cal_table) char *retract_comment = NULL; gboolean retract = FALSE; - retract = prompt_retract_dialog (comp, &retract_comment, GTK_WIDGET (cal_table)); - delete = retract; + delete = prompt_retract_dialog (comp, &retract_comment, GTK_WIDGET (cal_table), &retract); if (retract) { GList *users = NULL; icalcomponent *icalcomp = NULL, *mod_comp = NULL; diff --git a/calendar/gui/e-calendar-view.c b/calendar/gui/e-calendar-view.c index ffb08bbee0..4ceb8910c3 100644 --- a/calendar/gui/e-calendar-view.c +++ b/calendar/gui/e-calendar-view.c @@ -1005,9 +1005,6 @@ check_for_retract (ECalComponent *comp, ECal *client) ret_val = TRUE; } - if (!ret_val) - ret_val = e_account_list_find(itip_addresses_get(), E_ACCOUNT_FIND_ID_ADDRESS, strip) != NULL; - g_free (email); return ret_val; } @@ -1028,11 +1025,12 @@ delete_event (ECalendarView *cal_view, ECalendarViewEvent *event) if (!e_cal_get_static_capability (event->comp_data->client, CAL_STATIC_CAPABILITY_RECURRENCES_NO_MASTER)) e_cal_component_set_recurid (comp, NULL); + /*FIXME Retract should be moved to Groupwise features plugin */ if (check_for_retract (comp, event->comp_data->client)) { char *retract_comment = NULL; gboolean retract = FALSE; - retract = prompt_retract_dialog (comp, &retract_comment, GTK_WIDGET (cal_view)); + delete = prompt_retract_dialog (comp, &retract_comment, GTK_WIDGET (cal_view), &retract); if (retract) { GList *users = NULL; icalcomponent *icalcomp = NULL, *mod_comp = NULL; @@ -1144,11 +1142,12 @@ e_calendar_view_delete_selected_occurrence (ECalendarView *cal_view) e_cal_component_set_icalcomponent (comp, icalcomponent_new_clone (event->comp_data->icalcomp)); vtype = e_cal_component_get_vtype (comp); + /*FIXME Retract should be moved to Groupwise features plugin */ if (check_for_retract (comp, event->comp_data->client)) { char *retract_comment = NULL; gboolean retract = FALSE; - retract = prompt_retract_dialog (comp, &retract_comment, GTK_WIDGET (cal_view)); + delete = prompt_retract_dialog (comp, &retract_comment, GTK_WIDGET (cal_view), &retract); if (retract) { GList *users = NULL; icalcomponent *icalcomp = NULL, *mod_comp = NULL; |