diff options
author | Srinivasa Ragavan <sragavan@gnome.org> | 2010-03-23 16:45:36 +0800 |
---|---|---|
committer | Srinivasa Ragavan <sragavan@gnome.org> | 2010-03-23 16:45:36 +0800 |
commit | 73fbebb1b09499f16b07ae9db9c5970b3bf9ca63 (patch) | |
tree | ac932710913801cc3cedd3ed26d4bd15a93fbe66 /modules/calendar/e-cal-shell-view-actions.c | |
parent | 0d14d23d9ff94302ec4684ff1746e69d7eee132d (diff) | |
download | gsoc2013-evolution-73fbebb1b09499f16b07ae9db9c5970b3bf9ca63.tar.gz gsoc2013-evolution-73fbebb1b09499f16b07ae9db9c5970b3bf9ca63.tar.zst gsoc2013-evolution-73fbebb1b09499f16b07ae9db9c5970b3bf9ca63.zip |
Close only the current window than the entire shell.
Diffstat (limited to 'modules/calendar/e-cal-shell-view-actions.c')
-rw-r--r-- | modules/calendar/e-cal-shell-view-actions.c | 11 |
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 |