aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--calendar/ChangeLog13
-rw-r--r--calendar/gui/e-day-view.c38
-rw-r--r--calendar/gui/e-week-view.c8
3 files changed, 50 insertions, 9 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog
index 017ca0c2f1..e6e3a1b17b 100644
--- a/calendar/ChangeLog
+++ b/calendar/ChangeLog
@@ -1,3 +1,16 @@
+2001-12-12 JP Rosevear <jpr@ximian.com>
+
+ * gui/e-day-view.c (e_day_view_on_top_canvas_button_release):
+ ungrab the pointer before calling
+ e_day_view_finish_long_event_resize
+ (e_day_view_on_main_canvas_button_release): ditto
+ (e_day_view_finish_long_event_resize): ask if the meeting should
+ be sent
+ (e_day_view_finish_resize): ditto
+ (e_day_view_on_editing_stopped): ditto
+ (e_day_view_on_top_canvas_drag_data_received): ditto
+ (e_day_view_on_main_canvas_drag_data_received): ditto
+
2001-12-11 JP Rosevear <jpr@ximian.com>
* gui/e-meeting-model.c (process_free_busy_comp): properly convert
diff --git a/calendar/gui/e-day-view.c b/calendar/gui/e-day-view.c
index 7d00a208f3..dc8441e88a 100644
--- a/calendar/gui/e-day-view.c
+++ b/calendar/gui/e-day-view.c
@@ -49,7 +49,9 @@
#include "cal-util/timeutil.h"
#include "dialogs/delete-comp.h"
+#include "dialogs/send-comp.h"
#include "comp-util.h"
+#include "itip-utils.h"
#include "calendar-commands.h"
#include "calendar-config.h"
#include "goto.h"
@@ -3932,8 +3934,8 @@ e_day_view_on_top_canvas_button_release (GtkWidget *widget,
gdk_pointer_ungrab (event->time);
e_day_view_finish_selection (day_view);
} else if (day_view->resize_drag_pos != E_DAY_VIEW_POS_NONE) {
- e_day_view_finish_long_event_resize (day_view);
gdk_pointer_ungrab (event->time);
+ e_day_view_finish_long_event_resize (day_view);
} else if (day_view->pressed_event_day != -1) {
e_day_view_start_editing_event (day_view,
day_view->pressed_event_day,
@@ -3961,8 +3963,8 @@ e_day_view_on_main_canvas_button_release (GtkWidget *widget,
e_day_view_finish_selection (day_view);
e_day_view_stop_auto_scroll (day_view);
} else if (day_view->resize_drag_pos != E_DAY_VIEW_POS_NONE) {
- e_day_view_finish_resize (day_view);
gdk_pointer_ungrab (event->time);
+ e_day_view_finish_resize (day_view);
e_day_view_stop_auto_scroll (day_view);
} else if (day_view->pressed_event_day != -1) {
e_day_view_start_editing_event (day_view,
@@ -4434,8 +4436,12 @@ e_day_view_finish_long_event_resize (EDayView *day_view)
day_view->resize_drag_pos = E_DAY_VIEW_POS_NONE;
- if (!cal_client_update_object (day_view->client, comp))
+ if (cal_client_update_object (day_view->client, comp)) {
+ if (cal_component_has_attendees (comp) && send_component_dialog (comp))
+ itip_send_comp (CAL_COMPONENT_METHOD_REQUEST, comp);
+ } else {
g_message ("e_day_view_finish_long_event_resize(): Could not update the object!");
+ }
gtk_object_unref (GTK_OBJECT (comp));
}
@@ -4491,9 +4497,13 @@ e_day_view_finish_resize (EDayView *day_view)
day_view->resize_drag_pos = E_DAY_VIEW_POS_NONE;
- if (!cal_client_update_object (day_view->client, comp))
+ if (cal_client_update_object (day_view->client, comp)) {
+ if (cal_component_has_attendees (comp) && send_component_dialog (comp))
+ itip_send_comp (CAL_COMPONENT_METHOD_REQUEST, comp);
+ } else {
g_message ("e_day_view_finish_resize(): Could not update the object!");
-
+ }
+
gtk_object_unref (GTK_OBJECT (comp));
}
@@ -5830,8 +5840,12 @@ e_day_view_on_editing_stopped (EDayView *day_view,
summary.altrep = NULL;
cal_component_set_summary (event->comp, &summary);
- if (!cal_client_update_object (day_view->client, event->comp))
+ if (cal_client_update_object (day_view->client, event->comp)) {
+ if (cal_component_has_attendees (event->comp) && send_component_dialog (event->comp))
+ itip_send_comp (CAL_COMPONENT_METHOD_REQUEST, event->comp);
+ } else {
g_message ("e_day_view_on_editing_stopped(): Could not update the object!");
+ }
}
out:
@@ -6874,9 +6888,13 @@ e_day_view_on_top_canvas_drag_data_received (GtkWidget *widget,
if (event->canvas_item)
gnome_canvas_item_show (event->canvas_item);
- if (!cal_client_update_object (day_view->client, comp))
+ if (cal_client_update_object (day_view->client, comp)) {
+ if (cal_component_has_attendees (comp) && send_component_dialog (comp))
+ itip_send_comp (CAL_COMPONENT_METHOD_REQUEST, comp);
+ } else {
g_message ("e_day_view_on_top_canvas_drag_data_received(): Could "
"not update the object!");
+ }
gtk_object_unref (GTK_OBJECT (comp));
@@ -6982,9 +7000,13 @@ e_day_view_on_main_canvas_drag_data_received (GtkWidget *widget,
if (event->canvas_item)
gnome_canvas_item_show (event->canvas_item);
- if (!cal_client_update_object (day_view->client, comp))
+ if (cal_client_update_object (day_view->client, comp)) {
+ if (cal_component_has_attendees (comp) && send_component_dialog (comp))
+ itip_send_comp (CAL_COMPONENT_METHOD_REQUEST, comp);
+ } else {
g_message ("e_day_view_on_main_canvas_drag_data_received(): "
"Could not update the object!");
+ }
gtk_object_unref (GTK_OBJECT (comp));
diff --git a/calendar/gui/e-week-view.c b/calendar/gui/e-week-view.c
index ba54529e4b..df489ef710 100644
--- a/calendar/gui/e-week-view.c
+++ b/calendar/gui/e-week-view.c
@@ -48,7 +48,9 @@
#include <gal/widgets/e-canvas-utils.h>
#include <gal/widgets/e-unicode.h>
#include "dialogs/delete-comp.h"
+#include "dialogs/send-comp.h"
#include "comp-util.h"
+#include "itip-utils.h"
#include "cal-util/timeutil.h"
#include "calendar-commands.h"
#include "calendar-config.h"
@@ -3185,8 +3187,12 @@ e_week_view_on_editing_stopped (EWeekView *week_view,
summary.altrep = NULL;
cal_component_set_summary (event->comp, &summary);
- if (!cal_client_update_object (week_view->client, event->comp))
+ if (cal_client_update_object (week_view->client, event->comp)) {
+ if (cal_component_has_attendees (event->comp) && send_component_dialog (event->comp))
+ itip_send_comp (CAL_COMPONENT_METHOD_REQUEST, event->comp);
+ } else {
g_message ("e_week_view_on_editing_stopped(): Could not update the object!");
+ }
}
out: