aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/modules/e-memo-shell-module.c
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@src.gnome.org>2009-01-29 06:28:57 +0800
committerMatthew Barnes <mbarnes@src.gnome.org>2009-01-29 06:28:57 +0800
commit70fce0bbb0712dc70a15c481c0b65d68a98a4ff7 (patch)
tree51b39245f74e32ac2878e4f65492e895a1ad0eb8 /calendar/modules/e-memo-shell-module.c
parent533d59e2cd30ba79a99a71907ffdda65505e633a (diff)
downloadgsoc2013-evolution-70fce0bbb0712dc70a15c481c0b65d68a98a4ff7.tar
gsoc2013-evolution-70fce0bbb0712dc70a15c481c0b65d68a98a4ff7.tar.gz
gsoc2013-evolution-70fce0bbb0712dc70a15c481c0b65d68a98a4ff7.tar.bz2
gsoc2013-evolution-70fce0bbb0712dc70a15c481c0b65d68a98a4ff7.tar.lz
gsoc2013-evolution-70fce0bbb0712dc70a15c481c0b65d68a98a4ff7.tar.xz
gsoc2013-evolution-70fce0bbb0712dc70a15c481c0b65d68a98a4ff7.tar.zst
gsoc2013-evolution-70fce0bbb0712dc70a15c481c0b65d68a98a4ff7.zip
When invoking Evolution with URIs on the command-line (e.g. mailto:),
terminate after all the windows for those URIs have been closed. svn path=/branches/kill-bonobo/; revision=37157
Diffstat (limited to 'calendar/modules/e-memo-shell-module.c')
-rw-r--r--calendar/modules/e-memo-shell-module.c19
1 files changed, 11 insertions, 8 deletions
diff --git a/calendar/modules/e-memo-shell-module.c b/calendar/modules/e-memo-shell-module.c
index a82a8c5235..5e8f9a53bf 100644
--- a/calendar/modules/e-memo-shell-module.c
+++ b/calendar/modules/e-memo-shell-module.c
@@ -306,8 +306,8 @@ static GtkActionEntry source_entries[] = {
};
static gboolean
-memo_module_handle_uri (EShellModule *shell_module,
- const gchar *uri)
+memo_module_handle_uri_cb (EShellModule *shell_module,
+ const gchar *uri)
{
CompEditor *editor;
CompEditorFlags flags = 0;
@@ -443,19 +443,22 @@ exit:
}
static void
-memo_module_window_created (EShellModule *shell_module,
- EShellWindow *shell_window)
+memo_module_window_created_cb (EShellModule *shell_module,
+ GtkWindow *window)
{
const gchar *module_name;
+ if (!E_IS_SHELL_WINDOW (window))
+ return;
+
module_name = G_TYPE_MODULE (shell_module)->name;
e_shell_window_register_new_item_actions (
- shell_window, module_name,
+ E_SHELL_WINDOW (window), module_name,
item_entries, G_N_ELEMENTS (item_entries));
e_shell_window_register_new_source_actions (
- shell_window, module_name,
+ E_SHELL_WINDOW (window), module_name,
source_entries, G_N_ELEMENTS (source_entries));
}
@@ -488,9 +491,9 @@ e_shell_module_init (GTypeModule *type_module)
g_signal_connect_swapped (
shell, "handle-uri",
- G_CALLBACK (memo_module_handle_uri), shell_module);
+ G_CALLBACK (memo_module_handle_uri_cb), shell_module);
g_signal_connect_swapped (
shell, "window-created",
- G_CALLBACK (memo_module_window_created), shell_module);
+ G_CALLBACK (memo_module_window_created_cb), shell_module);
}