From: Eric Wong Date: Fri, 24 Mar 2017 01:41:11 +0000 (+0000) Subject: searchview: show full (&x=t) messages in ascending chronlogical order X-Git-Tag: v1.0.0~75 X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;ds=inline;h=4ba430497bfb4763691b0ad8af573eb6ff420b96;p=public-inbox.git searchview: show full (&x=t) messages in ascending chronlogical order When displaying search results with full messages, it makes more sense to show them in ascending chronological order when going by date. Reverse chronological order makes more sense for search results which only show the subject. --- diff --git a/lib/PublicInbox/SearchView.pm b/lib/PublicInbox/SearchView.pm index b867d002..cec87c6a 100644 --- a/lib/PublicInbox/SearchView.pm +++ b/lib/PublicInbox/SearchView.pm @@ -185,9 +185,9 @@ sub mset_thread { $pct{$smsg->mid} = $i->get_percent; $smsg; } ($mset->items) ]}); - + my $r = $q->{r}; my $rootset = PublicInbox::SearchThread::thread($msgs, - $q->{r} ? sort_relevance(\%pct) : *PublicInbox::View::sort_ts); + $r ? sort_relevance(\%pct) : *PublicInbox::View::sort_ts); my $skel = search_nav_bot($mset, $q). "
";
 	my $inbox = $ctx->{-inbox};
 	$ctx->{-upfx} = '';
@@ -203,11 +203,11 @@ sub mset_thread {
 
 	PublicInbox::View::walk_thread($rootset, $ctx,
 		*PublicInbox::View::pre_thread);
-
+	@$msgs = reverse @$msgs if $r;
 	my $mime;
 	sub {
 		return unless $msgs;
-		while ($mime = shift @$msgs) {
+		while ($mime = pop @$msgs) {
 			$mime = $inbox->msg_by_smsg($mime) and last;
 		}
 		if ($mime) {