From 1481168a6c76029e1d75d226c0be7bf68136f0e8 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sun, 6 Dec 2015 03:14:03 +0000 Subject: view: fix message truncation logic Avoid truncating messages if we requested the root anchor. This regression appeared in commit 62ee3cb36dd08f17e444e96dc80108464ee10cba ("view: do not shorten top-level messages in thread view") Also, make the "More..." link more prominent, as readers should be made aware they're not reading the full message. --- lib/PublicInbox/View.pm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'lib') diff --git a/lib/PublicInbox/View.pm b/lib/PublicInbox/View.pm index 2506c954..3c4e9547 100644 --- a/lib/PublicInbox/View.pm +++ b/lib/PublicInbox/View.pm @@ -88,7 +88,6 @@ sub index_entry { $from = PublicInbox::Hval->new_oneline($from)->as_html; $subj = PublicInbox::Hval->new_oneline($subj)->as_html; - my $more = 'permalink'; my $root_anchor = $state->{root_anchor} || ''; my $path = $root_anchor ? '../../' : ''; my $href = $mid->as_href; @@ -119,9 +118,11 @@ sub index_entry { my ($fhref, $more_ref); my $mhref = "${path}$href/"; + my $more = 'permalink'; # show full message if it's our root message - if ($root_anchor ne $id || ($level != 0 && !$ctx->{flat})) { + my $neq = $root_anchor ne $id; + if ($neq || ($neq && $level != 0 && !$ctx->{flat})) { $fhref = "${path}$href/f/"; $more_ref = \$more; } @@ -215,12 +216,14 @@ sub index_walk { my $s = add_text_body($enc, $part, $part_nr, $fhref); if ($more) { + my $m = 0; # drop the remainder of git patches, they're usually better # to review when the full message is viewed - $s =~ s!^---+\n.*\z!!ms and $$more = 'more...'; + $s =~ s!^---+\n.*\z!!ms and $m = 1; # Drop signatures - $s =~ s/^-- \n.*\z//ms and $$more = 'more...'; + $s =~ s/^-- \n.*\z//ms and $m = 1; + $$more = "More...\n\n$$more" if $m; } # kill any leading or trailing whitespace lines -- cgit v1.2.3-24-ge0c7