aboutsummaryrefslogtreecommitdiffstats
path: root/modules/calendar
diff options
context:
space:
mode:
authorSrinivasa Ragavan <sragavan@gnome.org>2010-04-13 16:48:47 +0800
committerSrinivasa Ragavan <sragavan@gnome.org>2010-04-19 17:40:55 +0800
commit95a5742300d0ebd1c0c03141c17e1fc1f0d55e2e (patch)
treed75fb87cecff6b0996d1b46db60226b9d3745807 /modules/calendar
parent5825fb4eb1244f63e54423f52e21e402b1830ecf (diff)
downloadgsoc2013-evolution-95a5742300d0ebd1c0c03141c17e1fc1f0d55e2e.tar.gz
gsoc2013-evolution-95a5742300d0ebd1c0c03141c17e1fc1f0d55e2e.tar.zst
gsoc2013-evolution-95a5742300d0ebd1c0c03141c17e1fc1f0d55e2e.zip
Just close the window and not the entire shell
Diffstat (limited to 'modules/calendar')
-rw-r--r--modules/calendar/e-cal-shell-view-actions.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/modules/calendar/e-cal-shell-view-actions.c b/modules/calendar/e-cal-shell-view-actions.c
index b5609aa233..339faaa091 100644
--- a/modules/calendar/e-cal-shell-view-actions.c
+++ b/modules/calendar/e-cal-shell-view-actions.c
@@ -1202,13 +1202,18 @@ quit_calendar_cb (GtkAction *action,
{
EShellView *shell_view;
EShellWindow *shell_window;
- EShell *shell;
+ GdkEvent *event;
shell_view = E_SHELL_VIEW (cal_shell_view);
shell_window = e_shell_view_get_shell_window (shell_view);
+
+ /* Synthesize a delete_event on this window. */
+ event = gdk_event_new (GDK_DELETE);
+ event->any.window = g_object_ref (((GtkWidget *) shell_window)->window);
+ event->any.send_event = TRUE;
+ gtk_main_do_event (event);
+ gdk_event_free (event);
- shell = e_shell_window_get_shell (shell_window);
- e_shell_quit (shell);
}
static void