aboutsummaryrefslogtreecommitdiffstats
path: root/mail
diff options
context:
space:
mode:
Diffstat (limited to 'mail')
-rw-r--r--mail/ChangeLog6
-rw-r--r--mail/message-list.c4
2 files changed, 8 insertions, 2 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index 25be1c65b2..12bea76cf7 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,3 +1,9 @@
+2005-03-31 Not Zed <NotZed@Ximian.com>
+
+ * message-list.c (on_selection_changed_cmd): only noop if we only
+ have 1 message selected, otherwise we don't update the menu's.
+ Fixes a problem introduced by 64987's fix.
+
2005-03-30 Li Yuan <li.yuan@sun.com>
* em-account-prefs.c: (em_account_prefs_treeview_new):
diff --git a/mail/message-list.c b/mail/message-list.c
index 41a4d7a855..9a7aaaaeda 100644
--- a/mail/message-list.c
+++ b/mail/message-list.c
@@ -2881,7 +2881,7 @@ on_cursor_activated_idle (gpointer data)
MessageList *message_list = data;
ESelectionModel *esm = e_tree_get_selection_model (message_list->tree);
int selected = e_selection_model_selected_count (esm);
-
+
if (selected == 1 && message_list->cursor_uid) {
d(printf ("emitting cursor changed signal, for uid %s\n", message_list->cursor_uid));
g_signal_emit (message_list, message_list_signals[MESSAGE_SELECTED], 0, message_list->cursor_uid);
@@ -2940,7 +2940,7 @@ on_selection_changed_cmd(ETree *tree, MessageList *ml)
is also used for other updating. If it is empty, it might just be a setup event
from etree which we do need to ignore */
if ((newuid == NULL && ml->cursor_uid == NULL && uids->len == 0)
- || (newuid != NULL && ml->cursor_uid != NULL && !strcmp(ml->cursor_uid, newuid))) {
+ || (uids->len == 1 && newuid != NULL && ml->cursor_uid != NULL && !strcmp(ml->cursor_uid, newuid))) {
/* noop */
} else {
g_free(ml->cursor_uid);