aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEttore Perazzoli <ettore@src.gnome.org>2001-04-04 00:57:27 +0800
committerEttore Perazzoli <ettore@src.gnome.org>2001-04-04 00:57:27 +0800
commitd5dc15ddf0ff2a0e5a08887f740d6e009de1024a (patch)
treec091c4e519824cd2fa2c7d00a60a382899b648ba
parent2a49ef6020c589c05ab30deb10165059b39db1a1 (diff)
downloadgsoc2013-evolution-d5dc15ddf0ff2a0e5a08887f740d6e009de1024a.tar
gsoc2013-evolution-d5dc15ddf0ff2a0e5a08887f740d6e009de1024a.tar.gz
gsoc2013-evolution-d5dc15ddf0ff2a0e5a08887f740d6e009de1024a.tar.bz2
gsoc2013-evolution-d5dc15ddf0ff2a0e5a08887f740d6e009de1024a.tar.lz
gsoc2013-evolution-d5dc15ddf0ff2a0e5a08887f740d6e009de1024a.tar.xz
gsoc2013-evolution-d5dc15ddf0ff2a0e5a08887f740d6e009de1024a.tar.zst
gsoc2013-evolution-d5dc15ddf0ff2a0e5a08887f740d6e009de1024a.zip
Pulled up fixes from evolution-0-10-branch.
svn path=/trunk/; revision=9133
-rw-r--r--shell/ChangeLog21
-rw-r--r--shell/e-setup.c23
-rw-r--r--shell/e-shell-view.c9
3 files changed, 50 insertions, 3 deletions
diff --git a/shell/ChangeLog b/shell/ChangeLog
index a402bb638b..bce6012b7d 100644
--- a/shell/ChangeLog
+++ b/shell/ChangeLog
@@ -1,3 +1,24 @@
+2001-04-03 Ettore Perazzoli <ettore@ximian.com>
+
+ * e-shell-view.c: Fix bug #1878 "folder sometimes fails to
+ display?". Thanks to Dan for finding out an explanation for the
+ problem.
+ (e_shell_view_display_uri): Don't set `priv->uri' here.
+ (show_existing_view): Set it here instead, and before showing the
+ control.
+ (create_new_view_for_uri): And here, likewise.
+
+2001-04-03 Christopher James Lahey <clahey@ximian.com>
+
+ * e-shell-folder-selection-dialog.c (dbl_click_cb): Made double
+ clicking not crash here.
+
+2001-04-02 Ettore Perazzoli <ettore@ximian.com>
+
+ * e-setup.c (e_setup): If we have a local folder named "Trash" of
+ type "mail", rename it to "Trash.old" so that the new
+ vfolder-based trash type gets installed.
+
2001-04-03 Gediminas Paulauskas <menesis@delfi.lt>
* importer/evolution-importer-client.c (evolution_importer_client_load_file):
diff --git a/shell/e-setup.c b/shell/e-setup.c
index 867aa73d2f..1d6e75b71e 100644
--- a/shell/e-setup.c
+++ b/shell/e-setup.c
@@ -40,6 +40,8 @@
#include <libgnomeui/gnome-stock.h>
#include <gal/widgets/e-gui-utils.h>
+#include "e-local-folder.h"
+
#include "e-setup.h"
@@ -278,12 +280,33 @@ e_setup (const char *evolution_directory)
file = g_strdup_printf ("%s/config", evolution_directory);
if (stat (file, &statinfo) == 0 && ! S_ISDIR (statinfo.st_mode)) {
char *old = g_strdup_printf ("%s.old", file);
+
rename (file, old);
mkdir (file, 0700);
g_free (old);
}
g_free (file);
+ /* If the user has an old style trash folder, remove it so it gets
+ * replaced by the new vfolder-based trash folder. FIXME: This should
+ * go away at some point. */
+ file = g_strdup_printf ("%s/local/Trash", evolution_directory);
+ if (stat (file, &statinfo) == 0 && S_ISDIR (statinfo.st_mode)) {
+ EFolder *local_folder;
+
+ local_folder = e_local_folder_new_from_path (file);
+ if (local_folder != NULL
+ && strcmp (e_folder_get_type_string (local_folder), "mail") == 0) {
+ char *old = g_strdup_printf ("%s.old", file);
+
+ rename (file, old);
+ g_free (old);
+ }
+
+ gtk_object_unref (GTK_OBJECT (local_folder));
+ }
+ g_free (file);
+
/* User has evolution directory...
Check if it is up to date. */
return check_evolution_directory (evolution_directory);
diff --git a/shell/e-shell-view.c b/shell/e-shell-view.c
index 12f87a217c..28fc43a761 100644
--- a/shell/e-shell-view.c
+++ b/shell/e-shell-view.c
@@ -1452,6 +1452,9 @@ show_existing_view (EShellView *shell_view,
gtk_widget_show (control);
}
+ g_free (priv->uri);
+ priv->uri = g_strdup (uri);
+
set_current_notebook_page (shell_view, notebook_page);
return TRUE;
@@ -1471,6 +1474,9 @@ create_new_view_for_uri (EShellView *shell_view,
if (control == NULL)
return FALSE;
+ g_free (priv->uri);
+ priv->uri = g_strdup (uri);
+
gtk_widget_show (control);
gtk_notebook_append_page (GTK_NOTEBOOK (priv->notebook), control, NULL);
@@ -1532,9 +1538,6 @@ e_shell_view_display_uri (EShellView *shell_view,
goto end;
}
- g_free (priv->uri);
- priv->uri = g_strdup (uri);
-
retval = TRUE;
end: