aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mail/ChangeLog5
-rw-r--r--mail/mail-component.c18
2 files changed, 17 insertions, 6 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index 51db8c22cc..ab1bbb6378 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,3 +1,8 @@
+2003-11-13 Jeffrey Stedfast <fejj@ximian.com>
+
+ * mail-component.c (create_view_widget): If the user selects a
+ store node, don't try to open it as a folder.
+
2003-11-13 Ettore Perazzoli <ettore@ximian.com>
* mail-component.c (impl_sendAndReceive): New, implementation for
diff --git a/mail/mail-component.c b/mail/mail-component.c
index 5c2c56ac7e..8d6abf07bf 100644
--- a/mail/mail-component.c
+++ b/mail/mail-component.c
@@ -242,13 +242,19 @@ create_view_widget (EMFolderTree *emft, const char *path, const char *uri)
const char *noselect;
CamelURL *url;
- url = camel_url_new (uri, NULL);
- noselect = url ? camel_url_get_param (url, "noselect") : NULL;
- if (noselect && !strcasecmp (noselect, "yes"))
+ if (!strcmp (path, "/")) {
+ /* user selected a CamelStore node... */
+ /* NOTE: we *could* display some sort of statistics control for the store here, maybe? something like Outlook does? */
control = create_noselect_control ();
- else
- control = folder_browser_factory_new_control (uri);
- camel_url_free (url);
+ } else {
+ url = camel_url_new (uri, NULL);
+ noselect = url ? camel_url_get_param (url, "noselect") : NULL;
+ if (noselect && !strcasecmp (noselect, "yes"))
+ control = create_noselect_control ();
+ else
+ control = folder_browser_factory_new_control (uri);
+ camel_url_free (url);
+ }
if (!control)
return NULL;