[evolution] Further tweaks for the command-line importing.



commit 48a400618b705696443f4aeacceaa1af0345a148
Author: Matthew Barnes <mbarnes redhat com>
Date:   Thu Nov 12 12:59:17 2009 -0500

    Further tweaks for the command-line importing.
    
    Includes Bastien Nocera's patch to register our importable MIME types
    with the MIME database.

 data/evolution.desktop.in.in             |    4 ++--
 doc/reference/shell/tmpl/e-shell.sgml    |    1 +
 mail/importers/evolution-mbox-importer.c |   12 ++++++++----
 shell/e-shell-utils.c                    |   12 +-----------
 widgets/misc/e-import-assistant.c        |    6 ++++--
 widgets/misc/e-import-assistant.h        |    4 +++-
 6 files changed, 19 insertions(+), 20 deletions(-)
---
diff --git a/data/evolution.desktop.in.in b/data/evolution.desktop.in.in
index 4dff9bc..86e03a8 100644
--- a/data/evolution.desktop.in.in
+++ b/data/evolution.desktop.in.in
@@ -3,7 +3,7 @@ _Name=Evolution
 _GenericName=Groupware Suite
 _X-GNOME-FullName=Evolution Mail and Calendar
 _Comment=Manage your email, contacts and schedule
-Exec=evolution
+Exec=evolution %U
 Icon=evolution
 Terminal=false
 Type=Application
@@ -14,4 +14,4 @@ X-GNOME-Bugzilla-Product=Evolution
 X-GNOME-Bugzilla-Component=BugBuddyBugs
 X-GNOME-Bugzilla-Version= BASE_VERSION@.x
 X-GNOME-Bugzilla-OtherBinaries=evolution-data-server- DATASERVER_EXEC_VERSION@;evolution-exchange-storage;evolution-alarm-notify;
-
+MimeType=text/calendar;text/x-vcard;text/directory;application/mbox;message/rfc822;
diff --git a/doc/reference/shell/tmpl/e-shell.sgml b/doc/reference/shell/tmpl/e-shell.sgml
index a34a083..58185fd 100644
--- a/doc/reference/shell/tmpl/e-shell.sgml
+++ b/doc/reference/shell/tmpl/e-shell.sgml
@@ -191,6 +191,7 @@ EShell
 
 @shell: 
 @uris: 
+ do_import: 
 @Returns: 
 
 
diff --git a/mail/importers/evolution-mbox-importer.c b/mail/importers/evolution-mbox-importer.c
index a100302..0112947 100644
--- a/mail/importers/evolution-mbox-importer.c
+++ b/mail/importers/evolution-mbox-importer.c
@@ -79,14 +79,18 @@ folder_selected(EMFolderSelectionButton *button, EImportTargetURI *target)
 static GtkWidget *
 mbox_getwidget(EImport *ei, EImportTarget *target, EImportImporter *im)
 {
+	GtkWindow *window;
 	GtkWidget *hbox, *w;
 	gchar *select_uri = NULL;
-	EShellWindow *shell_window;
 
 	/* preselect the folder selected in a mail view */
-	shell_window = E_SHELL_WINDOW (e_shell_get_active_window (e_shell_get_default ()));
-	if (shell_window) {
-		const gchar *view = e_shell_window_get_active_view (shell_window);
+	window = e_shell_get_active_window (e_shell_get_default ());
+	if (E_IS_SHELL_WINDOW (window)) {
+		EShellWindow *shell_window;
+		const gchar *view;
+
+		shell_window = E_SHELL_WINDOW (window);
+		view = e_shell_window_get_active_view (shell_window);
 
 		if (view && g_str_equal (view, "mail")) {
 			EShellView *shell_view = e_shell_window_get_shell_view (shell_window, view);
diff --git a/shell/e-shell-utils.c b/shell/e-shell-utils.c
index 30b658a..570f15b 100644
--- a/shell/e-shell-utils.c
+++ b/shell/e-shell-utils.c
@@ -183,14 +183,6 @@ exit:
 	return chosen_file;
 }
 
-static void
-assistant_weak_notify_cb (EShell *shell, GObject *where_the_object_was)
-{
-	/* close the application if the import assistant was the only window here */
-	if (e_shell_get_watched_windows (shell) == NULL)
-		gtk_main_quit ();
-}
-
 /**
  * e_shell_utils_import_uris:
  * @shell: The #EShell instance
@@ -228,9 +220,7 @@ e_shell_utils_import_uris (EShell *shell, gchar **uris, gboolean preview)
 			assistant, "finished",
 			G_CALLBACK (gtk_widget_destroy), NULL);
 
-		g_object_weak_ref (
-			G_OBJECT (assistant), (GWeakNotify)
-			assistant_weak_notify_cb, shell);
+		e_shell_watch_window (shell, GTK_WINDOW (assistant));
 
 		gtk_widget_show (assistant);
 	} else {
diff --git a/widgets/misc/e-import-assistant.c b/widgets/misc/e-import-assistant.c
index 9ac840c..10e60c6 100644
--- a/widgets/misc/e-import-assistant.c
+++ b/widgets/misc/e-import-assistant.c
@@ -1144,7 +1144,7 @@ import_assistant_class_init (EImportAssistantClass *class)
 			"is-simple",
 			NULL,
 			NULL,
-			TRUE,
+			FALSE,
 			G_PARAM_READWRITE |
 			G_PARAM_CONSTRUCT));
 
@@ -1332,7 +1332,9 @@ e_import_assistant_new (GtkWindow *parent)
  * Returns: EImportAssistant widget.
  */
 GtkWidget *
-e_import_assistant_new_simple (GtkWindow *parent, gchar **uris, gboolean preview)
+e_import_assistant_new_simple (GtkWindow *parent,
+                               gchar **uris,
+                               gboolean preview)
 {
 	GtkWidget *assistant;
 
diff --git a/widgets/misc/e-import-assistant.h b/widgets/misc/e-import-assistant.h
index f55c512..b2bba8d 100644
--- a/widgets/misc/e-import-assistant.h
+++ b/widgets/misc/e-import-assistant.h
@@ -60,7 +60,9 @@ struct _EImportAssistantClass {
 
 GType		e_import_assistant_get_type	(void);
 GtkWidget *	e_import_assistant_new		(GtkWindow *parent);
-GtkWidget *	e_import_assistant_new_simple	(GtkWindow *parent, gchar **uris, gboolean preview);
+GtkWidget *	e_import_assistant_new_simple	(GtkWindow *parent,
+						 gchar **uris,
+						 gboolean preview);
 
 G_END_DECLS
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]