Keith Packard [Tue, 22 Sep 2009 18:23:20 +0000 (11:23 -0700)]
Allow thread index view to sort oldest first
This allows the thread index view to present oldest messages first
instead of always presenting newer messages at the top of the list.
This can be toggled using the 'o' key.
A config file option :inbox_newest_first controls whether this is
turned on by default when viewing the inbox
Refine searches inherit the order from the originating thread index.
Carl Worth [Wed, 26 Aug 2009 17:17:20 +0000 (10:17 -0700)]
Add a refine_search command to InboxMode
This is just a copy of SearchResultsMode's refine_search command.
A much cleaner, but more involved, approach would be to rework
InboxMode to derive from SearchResultsMode in the first place.
Michael Hamann [Sun, 6 Sep 2009 21:04:22 +0000 (23:04 +0200)]
sort labels in the dump
Sorting labels in the dump is useful when you e.g. want to keep track of
your dump using an incremental backup system that records diffs, with
this patch lines in the dump will only change when there is a real
change and no longer just because the random order of the labels
changes.
William Morgan [Wed, 9 Sep 2009 14:05:11 +0000 (10:05 -0400)]
don't require log-mode to auto-respawn
Don't require log-mode (and more importantly, subclasses thereof) to respawn.
If a buffer name is provided during initialization, respawning will be on;
otherwise, it will be off. Now e.g. console mode can use log-mode without
requiring a buffer name, or incurring potentially weird auto-respawn behavior.
William Morgan [Wed, 9 Sep 2009 14:03:08 +0000 (10:03 -0400)]
protect getch from ctrl-c's outside of the main event loop
The main event loop was interpreting ctrl-c's correctly, but other getch
callers (like asking for input) were not. This change will treat ctrl-c as
ctrl-g in those cases.
William Morgan [Sun, 6 Sep 2009 13:45:25 +0000 (09:45 -0400)]
bugfix: :sent label not being applied to sent messages
At least, for mbox sent sources. Modify the mbox source so that it calls
self.labels for the message labels instead of directly using @labels. This
allows the SentLoader subclass to apply the sent label by defining #labels.
Carl Worth [Wed, 26 Aug 2009 21:35:25 +0000 (14:35 -0700)]
make SUP_LOG_LEVEL self-documenting
The idea here is that if someone is looking at the log and not seeing
the information of interest, then the log itself should tell them
how to get more information, (by suggesting to set SUP_LOG_LEVEL
to the next lower level).
Rich Lane [Sat, 22 Aug 2009 18:28:15 +0000 (11:28 -0700)]
add Message#load_from_index! shortcut
Message#parse_header is slow, taking up to 2/3 of the time spent loading
threads in thread-index-mode. This patch adds a shortcut method that the index
can use to efficiently initialize a message.
Kevin Riggle [Fri, 21 Aug 2009 01:57:42 +0000 (21:57 -0400)]
add an after-add-message hook
I want to do some unrelated processing on each message I receive, but I
don't want to block the message being added to the index. This patch
adds a hook which runs /after/ the message is added to the index.
William Morgan [Mon, 24 Aug 2009 22:32:39 +0000 (18:32 -0400)]
fix proc locals, which must use the old method trick
For hook locals that are specified as procs (usually for performance
reasons), use methods instead of local variables. Sadly you don't get
all the regular variable semantics, but it is the only option for
delayed evaluation AFAICT.
Carl Worth [Thu, 20 Aug 2009 00:21:59 +0000 (17:21 -0700)]
convert a couple of arrays to sets for labels
This fixes some crashes when using 'l' in thread-view-mode that
have been present since commit 7aea418a8a62b7070eee764475fcfc0bdd8d58dd
("maintain labels as Sets rather than arrays").
Benoît PIERRE [Wed, 19 Aug 2009 20:56:55 +0000 (22:56 +0200)]
fix garbaged text in textfield when using ncursesw
Apparently, field_buffer content is not initialized to blanks when using
the wide-character version of ncurses. Forcing a call to
set_field_buffer fix the problem.