j = -1;
while (display_line (fp, &last_pos, &lineInfo, ++i, &lastLine, &maxLine,
has_types | SearchFlag, &QuoteList, &q_level, &force_redraw,
- &SearchRE) == 0)
- if (!lineInfo[i].continuation && ++j == lines)
- {
- topline = i;
- if (!SearchFlag)
- break;
- }
+ &SearchRE) == 0) {
+ if (!lineInfo[i].continuation && ++j == lines)
+ {
+ topline = i;
+ if (!SearchFlag)
+ break;
+ }
+ redraw |= REDRAW_SIDEBAR;
+ } /* while */
}
if ((redraw & REDRAW_BODY) || topline != oldtopline)
lines++;
curline++;
move(lines + bodyoffset, SidebarWidth);
+ redraw |= REDRAW_SIDEBAR;
}
last_offset = lineInfo[curline].offset;
} while (force_redraw);
SETCOLOR (MT_COLOR_NORMAL);
}
+ if (redraw & REDRAW_SIDEBAR)
+ draw_sidebar(MENU_PAGER);
+
if ((redraw & REDRAW_INDEX) && index)
{
/* redraw the pager_index indicator, because the
while (display_line (fp, &last_pos, &lineInfo, i, &lastLine,
&maxLine, M_SEARCH | (flags & M_PAGER_NSKIP),
&QuoteList, &q_level,
- &force_redraw, &SearchRE) == 0)
+ &force_redraw, &SearchRE) == 0) {
i++;
+ redraw |= REDRAW_SIDEBAR;
+ }
if (!SearchBack)
{
(0 == (dretval = display_line (fp, &last_pos, &lineInfo,
new_topline, &lastLine, &maxLine, M_TYPES,
&QuoteList, &q_level, &force_redraw, &SearchRE))))
- && lineInfo[new_topline].type != MT_COLOR_QUOTED)
+ && lineInfo[new_topline].type != MT_COLOR_QUOTED) {
+ redraw |= REDRAW_SIDEBAR;
new_topline++;
+ }
if (dretval < 0)
{
(0 == (dretval = display_line (fp, &last_pos, &lineInfo,
new_topline, &lastLine, &maxLine, M_TYPES,
&QuoteList, &q_level, &force_redraw, &SearchRE))))
- && lineInfo[new_topline].type == MT_COLOR_QUOTED)
+ && lineInfo[new_topline].type == MT_COLOR_QUOTED) {
new_topline++;
+ redraw |= REDRAW_SIDEBAR;
+ }
if (dretval < 0)
{
while (display_line (fp, &last_pos, &lineInfo, i, &lastLine,
&maxLine, has_types,
&QuoteList, &q_level, &force_redraw,
- &SearchRE) == 0)
+ &SearchRE) == 0) {
i++;
+ redraw |= REDRAW_SIDEBAR;
+ }
topline = upNLines (bodylen, lineInfo, lastLine, hideQuoted);
}
else
&QuoteList, &q_level, &force_redraw,
&SearchRE) == 0)
{
+ redraw |= REDRAW_SIDEBAR;
if (! lineInfo[topline].continuation)
j--;
if (j > 0)
case OP_TAG:
CHECK_MODE(IsHeader (extra));
mutt_set_flag (Context, extra->hdr, M_TAG, !extra->hdr->tagged);
+
+ Context->last_tag = extra->hdr->tagged ? extra->hdr :
+ ((Context->last_tag == extra->hdr && !extra->hdr->tagged)
+ ? NULL : Context->last_tag);
+
redraw = REDRAW_STATUS | REDRAW_INDEX;
if (option (OPTRESOLVE))
{