changeset: 7035:6d4ceb8c5b9e user: Kevin McCarthy <ke...@8t8.us> date: Fri May 05 12:46:36 2017 -0700 link: http://dev.mutt.org/hg/mutt/rev/6d4ceb8c5b9e
Change message modifying operations to additively set redraw flags. With the ability to set redraw flags with the menu stack operations, some operations internally modify the current menu redraw flag. For instance, _mutt_set_flag() can now set REDRAW_SIDEBAR. Change the ops that modify messages to use 'redraw |= REDRAW_X' instead of overwriting the flag value. diffs (348 lines): diff -r c8ac1df1dcc9 -r 6d4ceb8c5b9e curs_main.c --- a/curs_main.c Thu May 04 18:11:47 2017 -0700 +++ b/curs_main.c Fri May 05 12:46:36 2017 -0700 @@ -479,7 +479,7 @@ if (menu->current < 0) menu->current = ci_first_message (); - menu->redraw = REDRAW_INDEX | REDRAW_STATUS; + menu->redraw |= REDRAW_INDEX | REDRAW_STATUS; } static const struct mapping_t IndexHelp[] = { @@ -904,7 +904,7 @@ CHECK_ATTACH; mutt_pattern_func (MUTT_DELETE, _("Delete messages matching: ")); - menu->redraw = REDRAW_INDEX | REDRAW_STATUS; + menu->redraw |= REDRAW_INDEX | REDRAW_STATUS; break; #ifdef USE_POP @@ -956,7 +956,6 @@ } else menu->current = 0; - menu->redraw = REDRAW_INDEX | REDRAW_STATUS; if (Context->msgcount && (Sort & SORT_MASK) == SORT_THREADS) mutt_draw_tree (Context); menu->redraw = REDRAW_FULL; @@ -1039,7 +1038,7 @@ { for (j = 0; j < Context->vcount; j++) mutt_set_flag (Context, Context->hdrs[Context->v2r[j]], MUTT_TAG, 0); - menu->redraw = REDRAW_STATUS | REDRAW_INDEX; + menu->redraw |= REDRAW_STATUS | REDRAW_INDEX; } else { @@ -1049,7 +1048,7 @@ ((Context->last_tag == CURHDR && !CURHDR->tagged) ? NULL : Context->last_tag); - menu->redraw = REDRAW_STATUS; + menu->redraw |= REDRAW_STATUS; if (option (OPTRESOLVE) && menu->current < Context->vcount - 1) { menu->current++; @@ -1065,7 +1064,7 @@ CHECK_MSGCOUNT; CHECK_VISIBLE; mutt_pattern_func (MUTT_TAG, _("Tag messages matching: ")); - menu->redraw = REDRAW_INDEX | REDRAW_STATUS; + menu->redraw |= REDRAW_INDEX | REDRAW_STATUS; break; case OP_MAIN_UNDELETE_PATTERN: @@ -1077,7 +1076,7 @@ CHECK_ACL(MUTT_ACL_DELETE, _("Cannot undelete message(s)")); if (mutt_pattern_func (MUTT_UNDELETE, _("Undelete messages matching: ")) == 0) - menu->redraw = REDRAW_INDEX | REDRAW_STATUS; + menu->redraw |= REDRAW_INDEX | REDRAW_STATUS; break; case OP_MAIN_UNTAG_PATTERN: @@ -1085,7 +1084,7 @@ CHECK_MSGCOUNT; CHECK_VISIBLE; if (mutt_pattern_func (MUTT_UNTAG, _("Untag messages matching: ")) == 0) - menu->redraw = REDRAW_INDEX | REDRAW_STATUS; + menu->redraw |= REDRAW_INDEX | REDRAW_STATUS; break; /* -------------------------------------------------------------------- @@ -1271,7 +1270,7 @@ update_index (menu, Context, check, oldcount, index_hint); set_option (OPTSEARCHINVALID); - menu->redraw = REDRAW_INDEX | REDRAW_STATUS; + menu->redraw |= REDRAW_INDEX | REDRAW_STATUS; break; } FREE (&Context); @@ -1716,13 +1715,13 @@ if ((menu->current = ci_next_undeleted (menu->current)) == -1) { menu->current = menu->oldcurrent; - menu->redraw = REDRAW_CURRENT; + menu->redraw |= REDRAW_CURRENT; } else - menu->redraw = REDRAW_MOTION_RESYNCH; + menu->redraw |= REDRAW_MOTION_RESYNCH; } else - menu->redraw = REDRAW_CURRENT; + menu->redraw |= REDRAW_CURRENT; } menu->redraw |= REDRAW_STATUS; break; @@ -1748,7 +1747,7 @@ mutt_set_flag (Context, Context->hdrs[Context->v2r[j]], MUTT_READ, 1); } } - menu->redraw = REDRAW_STATUS | REDRAW_INDEX; + menu->redraw |= REDRAW_STATUS | REDRAW_INDEX; } else { @@ -1762,13 +1761,13 @@ if ((menu->current = ci_next_undeleted (menu->current)) == -1) { menu->current = menu->oldcurrent; - menu->redraw = REDRAW_CURRENT; + menu->redraw |= REDRAW_CURRENT; } else - menu->redraw = REDRAW_MOTION_RESYNCH; + menu->redraw |= REDRAW_MOTION_RESYNCH; } else - menu->redraw = REDRAW_CURRENT; + menu->redraw |= REDRAW_CURRENT; menu->redraw |= REDRAW_STATUS; } break; @@ -1853,7 +1852,7 @@ if (mutt_change_flag (tag ? NULL : CURHDR, (op == OP_MAIN_SET_FLAG)) == 0) { - menu->redraw = REDRAW_STATUS; + menu->redraw |= REDRAW_STATUS; if (tag) menu->redraw |= REDRAW_INDEX; else if (option (OPTRESOLVE)) @@ -1997,7 +1996,7 @@ mutt_tag_set_flag (MUTT_PURGE, (op == OP_PURGE_MESSAGE)); if (option (OPTDELETEUNTAG)) mutt_tag_set_flag (MUTT_TAG, 0); - menu->redraw = REDRAW_INDEX; + menu->redraw |= REDRAW_INDEX; } else { @@ -2010,7 +2009,7 @@ if ((menu->current = ci_next_undeleted (menu->current)) == -1) { menu->current = menu->oldcurrent; - menu->redraw = REDRAW_CURRENT; + menu->redraw |= REDRAW_CURRENT; } else if (menu->menu == MENU_PAGER) { @@ -2021,7 +2020,7 @@ menu->redraw |= REDRAW_MOTION_RESYNCH; } else - menu->redraw = REDRAW_CURRENT; + menu->redraw |= REDRAW_CURRENT; } menu->redraw |= REDRAW_STATUS; break; @@ -2046,7 +2045,7 @@ if (option (OPTRESOLVE)) if ((menu->current = ci_next_undeleted (menu->current)) == -1) menu->current = menu->oldcurrent; - menu->redraw = REDRAW_INDEX | REDRAW_STATUS; + menu->redraw |= REDRAW_INDEX | REDRAW_STATUS; } break; @@ -2190,7 +2189,7 @@ */ if (Context->magic == MUTT_IMAP && !option (OPTIMAPPEEK)) { - menu->redraw = (tag ? REDRAW_INDEX : REDRAW_CURRENT) | REDRAW_STATUS; + menu->redraw |= (tag ? REDRAW_INDEX : REDRAW_CURRENT) | REDRAW_STATUS; } #endif @@ -2208,7 +2207,7 @@ */ if (Context->magic == MUTT_IMAP && !option (OPTIMAPPEEK)) { - menu->redraw = (tag ? REDRAW_INDEX : REDRAW_CURRENT) | REDRAW_STATUS; + menu->redraw |= (tag ? REDRAW_INDEX : REDRAW_CURRENT) | REDRAW_STATUS; } #endif @@ -2239,7 +2238,7 @@ continue; } } - menu->redraw = REDRAW_INDEX | REDRAW_STATUS; + menu->redraw |= REDRAW_INDEX | REDRAW_STATUS; } break; @@ -2344,7 +2343,7 @@ if (menu->current == -1) menu->current = menu->oldcurrent; } - menu->redraw = REDRAW_INDEX | REDRAW_STATUS; + menu->redraw |= REDRAW_INDEX | REDRAW_STATUS; } break; @@ -2360,7 +2359,7 @@ { mutt_tag_set_flag (MUTT_DELETE, 0); mutt_tag_set_flag (MUTT_PURGE, 0); - menu->redraw = REDRAW_INDEX; + menu->redraw |= REDRAW_INDEX; } else { @@ -2369,10 +2368,10 @@ if (option (OPTRESOLVE) && menu->current < Context->vcount - 1) { menu->current++; - menu->redraw = REDRAW_MOTION_RESYNCH; + menu->redraw |= REDRAW_MOTION_RESYNCH; } else - menu->redraw = REDRAW_CURRENT; + menu->redraw |= REDRAW_CURRENT; } menu->redraw |= REDRAW_STATUS; break; @@ -2403,7 +2402,7 @@ if (menu->current == -1) menu->current = menu->oldcurrent; } - menu->redraw = REDRAW_INDEX | REDRAW_STATUS; + menu->redraw |= REDRAW_INDEX | REDRAW_STATUS; } break; diff -r c8ac1df1dcc9 -r 6d4ceb8c5b9e menu.c --- a/menu.c Thu May 04 18:11:47 2017 -0700 +++ b/menu.c Fri May 05 12:46:36 2017 -0700 @@ -1133,7 +1133,7 @@ { for (i = 0; i < menu->max; i++) menu->tagged += menu->tag (menu, i, 0); - menu->redraw = REDRAW_INDEX; + menu->redraw |= REDRAW_INDEX; } else if (menu->max) { @@ -1142,10 +1142,10 @@ if (i && option (OPTRESOLVE) && menu->current < menu->max - 1) { menu->current++; - menu->redraw = REDRAW_MOTION_RESYNCH; + menu->redraw |= REDRAW_MOTION_RESYNCH; } else - menu->redraw = REDRAW_CURRENT; + menu->redraw |= REDRAW_CURRENT; } else mutt_error _("No entries."); diff -r c8ac1df1dcc9 -r 6d4ceb8c5b9e pager.c --- a/pager.c Thu May 04 18:11:47 2017 -0700 +++ b/pager.c Fri May 05 12:46:36 2017 -0700 @@ -2489,7 +2489,7 @@ mutt_set_flag (Context, extra->hdr, MUTT_PURGE, (ch == OP_PURGE_MESSAGE)); if (option (OPTDELETEUNTAG)) mutt_set_flag (Context, extra->hdr, MUTT_TAG, 0); - pager_menu->redraw = REDRAW_STATUS | REDRAW_INDEX; + pager_menu->redraw |= REDRAW_STATUS | REDRAW_INDEX; if (option (OPTRESOLVE)) { ch = -1; @@ -2535,7 +2535,7 @@ if (!option (OPTRESOLVE) && PagerIndexLines) pager_menu->redraw = REDRAW_FULL; else - pager_menu->redraw = REDRAW_STATUS | REDRAW_INDEX; + pager_menu->redraw |= REDRAW_STATUS | REDRAW_INDEX; } break; @@ -2635,7 +2635,7 @@ CHECK_ACL(MUTT_ACL_WRITE, "Cannot flag message"); mutt_set_flag (Context, extra->hdr, MUTT_FLAG, !extra->hdr->flagged); - pager_menu->redraw = REDRAW_STATUS | REDRAW_INDEX; + pager_menu->redraw |= REDRAW_STATUS | REDRAW_INDEX; if (option (OPTRESOLVE)) { ch = -1; @@ -2773,7 +2773,7 @@ ((Context->last_tag == extra->hdr && !extra->hdr->tagged) ? NULL : Context->last_tag); - pager_menu->redraw = REDRAW_STATUS | REDRAW_INDEX; + pager_menu->redraw |= REDRAW_STATUS | REDRAW_INDEX; if (option (OPTRESOLVE)) { ch = -1; @@ -2793,7 +2793,7 @@ mutt_set_flag (Context, extra->hdr, MUTT_READ, 1); first = 0; Context->msgnotreadyet = -1; - pager_menu->redraw = REDRAW_STATUS | REDRAW_INDEX; + pager_menu->redraw |= REDRAW_STATUS | REDRAW_INDEX; if (option (OPTRESOLVE)) { ch = -1; @@ -2809,7 +2809,7 @@ mutt_set_flag (Context, extra->hdr, MUTT_DELETE, 0); mutt_set_flag (Context, extra->hdr, MUTT_PURGE, 0); - pager_menu->redraw = REDRAW_STATUS | REDRAW_INDEX; + pager_menu->redraw |= REDRAW_STATUS | REDRAW_INDEX; if (option (OPTRESOLVE)) { ch = -1; @@ -2841,7 +2841,7 @@ if (!option (OPTRESOLVE) && PagerIndexLines) pager_menu->redraw = REDRAW_FULL; else - pager_menu->redraw = REDRAW_STATUS | REDRAW_INDEX; + pager_menu->redraw |= REDRAW_STATUS | REDRAW_INDEX; } break; diff -r c8ac1df1dcc9 -r 6d4ceb8c5b9e postpone.c --- a/postpone.c Thu May 04 18:11:47 2017 -0700 +++ b/postpone.c Fri May 05 12:46:36 2017 -0700 @@ -189,13 +189,13 @@ if (menu->current >= menu->top + menu->pagelen) { menu->top = menu->current; - menu->redraw = REDRAW_INDEX | REDRAW_STATUS; + menu->redraw |= REDRAW_INDEX | REDRAW_STATUS; } else menu->redraw |= REDRAW_MOTION_RESYNCH; } else - menu->redraw = REDRAW_CURRENT; + menu->redraw |= REDRAW_CURRENT; break; case OP_GENERIC_SELECT_ENTRY: