diff options
author | Dan Winship <danw@src.gnome.org> | 2000-07-11 04:04:32 +0800 |
---|---|---|
committer | Dan Winship <danw@src.gnome.org> | 2000-07-11 04:04:32 +0800 |
commit | e17db743f3fef10ec8039b3f38254a9dce3f6c44 (patch) | |
tree | 29ebf0fb4b74bed5784f72024701e69fa4c6c271 /mail/folder-browser.c | |
parent | 8844e57744dfdda537911efc6b9a4d80e7eb4407 (diff) | |
download | gsoc2013-evolution-e17db743f3fef10ec8039b3f38254a9dce3f6c44.tar gsoc2013-evolution-e17db743f3fef10ec8039b3f38254a9dce3f6c44.tar.gz gsoc2013-evolution-e17db743f3fef10ec8039b3f38254a9dce3f6c44.tar.bz2 gsoc2013-evolution-e17db743f3fef10ec8039b3f38254a9dce3f6c44.tar.lz gsoc2013-evolution-e17db743f3fef10ec8039b3f38254a9dce3f6c44.tar.xz gsoc2013-evolution-e17db743f3fef10ec8039b3f38254a9dce3f6c44.tar.zst gsoc2013-evolution-e17db743f3fef10ec8039b3f38254a9dce3f6c44.zip |
Update message_list_select_next to do either next or previous.
* message-list.c (message_list_select): Update
message_list_select_next to do either next or previous.
* folder-browser.c (etable_key): Make 'n' and 'p' do next and
previous unread message.
* mail-ops.c (select_first_unread): Update.
(real_fetch_mail): clean up a bit.
svn path=/trunk/; revision=4046
Diffstat (limited to 'mail/folder-browser.c')
-rw-r--r-- | mail/folder-browser.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/mail/folder-browser.c b/mail/folder-browser.c index 201a7d9252..5fa536118e 100644 --- a/mail/folder-browser.c +++ b/mail/folder-browser.c @@ -8,6 +8,7 @@ * (C) 2000 Helix Code, Inc. */ #include <config.h> +#include <ctype.h> #include <gnome.h> #include "e-util/e-util.h" #include "e-util/e-sexp.h" @@ -319,7 +320,7 @@ folder_browser_clear_search (FolderBrowser *fb) static int etable_key (ETable *table, int row, int col, GdkEvent *ev, FolderBrowser *fb) { - if (ev->key.state != 0) + if ((ev->key.state & !(GDK_SHIFT_MASK | GDK_LOCK_MASK)) != 0) return FALSE; if (ev->key.keyval == GDK_space || ev->key.keyval == GDK_BackSpace) { @@ -346,9 +347,17 @@ etable_key (ETable *table, int row, int col, GdkEvent *ev, FolderBrowser *fb) } else if (ev->key.keyval == GDK_Delete || ev->key.keyval == GDK_KP_Delete) { delete_msg (NULL, fb); - message_list_select_next (fb->message_list, row, - 0, CAMEL_MESSAGE_DELETED); + message_list_select (fb->message_list, row, + MESSAGE_LIST_SELECT_NEXT, + 0, CAMEL_MESSAGE_DELETED); return TRUE; + } else if (ev->key.keyval == 'n' || ev->key.keyval == 'N' || + ev->key.keyval == 'p' || ev->key.keyval == 'P') { + message_list_select (fb->message_list, row, + tolower (ev->key.keyval) == 'p' ? + MESSAGE_LIST_SELECT_PREVIOUS : + MESSAGE_LIST_SELECT_NEXT, + 0, CAMEL_MESSAGE_SEEN); } return FALSE; |