diff options
author | Not Zed <NotZed@Ximian.com> | 2001-03-17 12:56:54 +0800 |
---|---|---|
committer | Michael Zucci <zucchi@src.gnome.org> | 2001-03-17 12:56:54 +0800 |
commit | fcb4ed5a4f851aabae47aa5c376253246c3f216c (patch) | |
tree | 9fd83df35417be61fc6c155db7488081a27d1c14 /mail/mail-local.c | |
parent | a570bb037f3fd6b15e1e3d16a04827b6243ff85f (diff) | |
download | gsoc2013-evolution-fcb4ed5a4f851aabae47aa5c376253246c3f216c.tar.gz gsoc2013-evolution-fcb4ed5a4f851aabae47aa5c376253246c3f216c.tar.zst gsoc2013-evolution-fcb4ed5a4f851aabae47aa5c376253246c3f216c.zip |
Move the proxy event outside the lock (otherwise we always deadlock).
2001-03-17 Not Zed <NotZed@Ximian.com>
* mail-mt.c (mail_msg_free): Move the proxy event outside the lock
(otherwise we always deadlock).
* mail-local.c (reconfigure_clicked): Clear the message list
during update inside the folder thingy. This is a hell mess, need
to move the gui stuff to mail-callbacks and make this reconfigure
thing a more generic func.
* message-list.c (ml_value_to_string): Cleanup the logic to use
lookup tables.
(sort_uid_to_rows): Removed due to rewrite below.
(build_flat_diff): Changes for node/summary/etc changes. Also do
changed nodes too.
(clear_tree): Free the info reference for nodes in our hashtable.
(build_subtree): Ref the info reference in our hash/tree node.
(on_click): Dont free message info, since we just got our ref to
it.
(remove_node_diff): Free messageinfo off node.
(build_flat): Ref messageinfo.
(message_list_set_folder): Allow a NULL folder to be set -
i.e. clear the view.
(message_list_set_folder): Emit a no message sleeted signal.
(build_tree): Change cursor keeping stuff to work with new info.
Turned off BROKEN_ETREE - well maybe it'll work. Check for
duplicate messages displayed, etc.
2001-03-16 Not Zed <NotZed@Ximian.com>
* message-list.h: Added uid_nodemap; mapping of uid's to e-tree
nodes.
* message-list.c (build_flat): Changed to take a summary argument,
and to store node in node map, etc, and store info's in e-tree.
(build_subtree): Changed to store node in node map, and to store
info's in tree directly.
(ml_tree_value_at): Changed to get info directly from tree node,
removed allocated return value logic.
(ml_tree_value_at): Removed all "fake node" handling, no fake
nodes should ever exist.
(id_is_uid, id_is_subject, id_uid, id_subject): Removed macro's no
longer used.
(new_id_from_uid, new_id_from_subject): Removed no longer used.
(get_message_uid):
(get_message_info): Treat tree node data as messageinfo.
(message_list_select): Dont free the messageinfo, as its part of
our data, not retrieved from folder.
(message_list_drag_data_get): ditto.
(subtree_unread): Treat tree node data as messageinfo.
(subtree_size): ditto.
(subtree_earliest): ditto.
(clear_tree): Reset uid_nodemap on clear.
(save_node_state): tree nodes == messageinfo's.
(add_node_diff): ditto.
(remove_node_diff): ditto.
(main_folder_changed): use uid_nodemap to lookup changed nodes.
(main_message_changed): ditto.
svn path=/trunk/; revision=8775
Diffstat (limited to 'mail/mail-local.c')
-rw-r--r-- | mail/mail-local.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/mail/mail-local.c b/mail/mail-local.c index 5fd6dab667..574cb981c8 100644 --- a/mail/mail-local.c +++ b/mail/mail-local.c @@ -999,6 +999,9 @@ reconfigure_clicked(GnomeDialog *d, int button, struct _reconfigure_msg *m) int type; char *types[] = { "mbox", "maildir", "mh" }; + /* hack to clear the message list during update */ + message_list_set_folder(m->fb->message_list, NULL); + menu = (GtkMenu *)gtk_option_menu_get_menu(m->optionlist); type = g_list_index(GTK_MENU_SHELL(menu)->children, gtk_menu_get_active(menu)); if (type < 0 || type > 2) |