To: vim-dev@vim.org Subject: Patch 7.2.103 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit ------------ Patch 7.2.103 Problem: When 'bomb' is changed the window title is updated to show/hide a "+", but the tab page label isn't. (Patrick Texier) Solution: Set "redraw_tabline" in most places where "need_maketitle" is set. (partly by Lech Lorens) Files: src/option.c *** ../vim-7.2.102/src/option.c Wed Feb 4 17:27:50 2009 --- src/option.c Wed Feb 4 17:40:02 2009 *************** *** 5268,5273 **** --- 5268,5288 ---- } #endif + #ifdef FEAT_TITLE + static void redraw_titles __ARGS((void)); + + /* + * Redraw the window title and/or tab page text later. + */ + static void redraw_titles() + { + need_maketitle = TRUE; + # ifdef FEAT_WINDOWS + redraw_tabline = TRUE; + # endif + } + #endif + /* * Set a string option to a new value (without checking the effect). * The string is copied into allocated memory. *************** *** 5672,5678 **** { # ifdef FEAT_TITLE /* May show a "+" in the title now. */ ! need_maketitle = TRUE; # endif /* Add 'fileencoding' to the swap file. */ ml_setflags(curbuf); --- 5687,5693 ---- { # ifdef FEAT_TITLE /* May show a "+" in the title now. */ ! redraw_titles(); # endif /* Add 'fileencoding' to the swap file. */ ml_setflags(curbuf); *************** *** 5691,5697 **** { errmsg = mb_init(); # ifdef FEAT_TITLE ! need_maketitle = TRUE; # endif } } --- 5706,5712 ---- { errmsg = mb_init(); # ifdef FEAT_TITLE ! redraw_titles(); # endif } } *************** *** 5800,5806 **** else curbuf->b_p_tx = FALSE; #ifdef FEAT_TITLE ! need_maketitle = TRUE; #endif /* update flag in swap file */ ml_setflags(curbuf); --- 5815,5821 ---- else curbuf->b_p_tx = FALSE; #ifdef FEAT_TITLE ! redraw_titles(); #endif /* update flag in swap file */ ml_setflags(curbuf); *************** *** 7127,7148 **** curbuf->b_did_warn = FALSE; #ifdef FEAT_TITLE ! need_maketitle = TRUE; #endif } #ifdef FEAT_TITLE /* when 'modifiable' is changed, redraw the window title */ else if ((int *)varp == &curbuf->b_p_ma) ! need_maketitle = TRUE; /* when 'endofline' is changed, redraw the window title */ else if ((int *)varp == &curbuf->b_p_eol) ! need_maketitle = TRUE; ! #ifdef FEAT_MBYTE ! /* when 'bomb' is changed, redraw the window title */ else if ((int *)varp == &curbuf->b_p_bomb) ! need_maketitle = TRUE; ! #endif #endif /* when 'bin' is set also set some other options */ --- 7142,7169 ---- curbuf->b_did_warn = FALSE; #ifdef FEAT_TITLE ! redraw_titles(); #endif } #ifdef FEAT_TITLE /* when 'modifiable' is changed, redraw the window title */ else if ((int *)varp == &curbuf->b_p_ma) ! { ! redraw_titles(); ! } /* when 'endofline' is changed, redraw the window title */ else if ((int *)varp == &curbuf->b_p_eol) ! { ! redraw_titles(); ! } ! # ifdef FEAT_MBYTE ! /* when 'bomb' is changed, redraw the window title and tab page text */ else if ((int *)varp == &curbuf->b_p_bomb) ! { ! redraw_titles(); ! } ! # endif #endif /* when 'bin' is set also set some other options */ *************** *** 7150,7156 **** { set_options_bin(old_value, curbuf->b_p_bin, opt_flags); #ifdef FEAT_TITLE ! need_maketitle = TRUE; #endif } --- 7171,7177 ---- { set_options_bin(old_value, curbuf->b_p_bin, opt_flags); #ifdef FEAT_TITLE ! redraw_titles(); #endif } *************** *** 7301,7307 **** if (!value) save_file_ff(curbuf); /* Buffer is unchanged */ #ifdef FEAT_TITLE ! need_maketitle = TRUE; #endif #ifdef FEAT_AUTOCMD modified_was_set = value; --- 7322,7328 ---- if (!value) save_file_ff(curbuf); /* Buffer is unchanged */ #ifdef FEAT_TITLE ! redraw_titles(); #endif #ifdef FEAT_AUTOCMD modified_was_set = value; *************** *** 7736,7742 **** newFoldLevel(); } ! /* 'foldminlevel' */ else if (pp == &curwin->w_p_fml) { foldUpdateAll(curwin); --- 7757,7763 ---- newFoldLevel(); } ! /* 'foldminlines' */ else if (pp == &curwin->w_p_fml) { foldUpdateAll(curwin); *** ../vim-7.2.102/src/version.c Thu Feb 5 20:47:14 2009 --- src/version.c Wed Feb 11 11:32:20 2009 *************** *** 678,679 **** --- 678,681 ---- { /* Add new patch number below this line */ + /**/ + 103, /**/ -- hundred-and-one symptoms of being an internet addict: 73. You give your dog used motherboards instead of bones /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ download, build and distribute -- http://www.A-A-P.org /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///