(e_storage_removed_folder): When a highlighted

folder gets removed, update the parent to not have a highlight.
[#24062]

svn path=/trunk/; revision=18085
This commit is contained in:
Ettore Perazzoli
2002-09-17 16:23:45 +00:00
parent 27a4ae4130
commit c395aaafd6
2 changed files with 24 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2002-09-17 Ettore Perazzoli <ettore@ximian.com>
* e-storage.c (e_storage_removed_folder): When a highlighted
folder gets removed, update the parent to not have a highlight.
[#24062]
2002-09-16 Ettore Perazzoli <ettore@ximian.com>
* evolution-nognome.in: New script to run Evolution under a

View File

@ -683,6 +683,8 @@ e_storage_removed_folder (EStorage *storage,
const char *path)
{
EStoragePrivate *priv;
EFolder *folder;
const char *p;
g_return_val_if_fail (storage != NULL, FALSE);
g_return_val_if_fail (E_IS_STORAGE (storage), FALSE);
@ -691,9 +693,24 @@ e_storage_removed_folder (EStorage *storage,
priv = storage->priv;
if (e_folder_tree_get_folder (priv->folder_tree, path) == NULL)
folder = e_folder_tree_get_folder (priv->folder_tree, path);
if (folder == NULL)
return FALSE;
p = strrchr (path, '/');
if (p != NULL && p != path) {
EFolder *parent_folder;
char *parent_path;
parent_path = g_strndup (path, p - path);
parent_folder = e_folder_tree_get_folder (priv->folder_tree, parent_path);
if (e_folder_get_highlighted (folder))
e_folder_set_child_highlight (parent_folder, FALSE);
g_free (parent_path);
}
gtk_signal_emit (GTK_OBJECT (storage), signals[REMOVED_FOLDER], path);
e_folder_tree_remove (priv->folder_tree, path);