Patch 9.0.1171
Problem:    Screen is not redrawn after using setcellwidths().
Solution:   Redraw the screen when the cell widths have changed. (Yasuhiro
            Matsumoto, closes #11800)
Files:      src/mbyte.c, src/testdir/test_utf8.vim,
            src/testdir/dumps/Test_setcellwidths_dump_1.dump,
            src/testdir/dumps/Test_setcellwidths_dump_2.dump


*** ../vim-9.0.1170/src/mbyte.c 2022-11-07 11:05:47.617214227 +0000
--- src/mbyte.c 2023-01-10 16:01:43.056410200 +0000
***************
*** 5742,5747 ****
--- 5742,5748 ----
      }
  
      vim_free(cw_table_save);
+     redraw_all_later(UPD_CLEAR);
  }
  
      void
*** ../vim-9.0.1170/src/testdir/test_utf8.vim   2022-09-01 12:22:19.751659183 
+0100
--- src/testdir/test_utf8.vim   2023-01-10 15:59:45.716618656 +0000
***************
*** 2,7 ****
--- 2,8 ----
   
  source check.vim
  source view_util.vim
+ source screendump.vim
  
  " Visual block Insert adjusts for multi-byte char
  func Test_visual_block_insert()
***************
*** 198,203 ****
--- 199,220 ----
    call setcellwidths([])
  endfunc
  
+ func Test_setcellwidths_dump()
+   CheckRunVimInTerminal
+ 
+   let lines =<< trim END
+       call setline(1, "\ue5ffDesktop")
+   END
+   call writefile(lines, 'XCellwidths', 'D')
+   let buf = RunVimInTerminal('-S XCellwidths', {'rows': 6})
+   call VerifyScreenDump(buf, 'Test_setcellwidths_dump_1', {})
+ 
+   call term_sendkeys(buf, ":call setcellwidths([[0xe5ff, 0xe5ff, 2]])\<CR>")
+   call VerifyScreenDump(buf, 'Test_setcellwidths_dump_2', {})
+ 
+   call StopVimInTerminal(buf)
+ endfunc
+ 
  func Test_print_overlong()
    " Text with more composing characters than MB_MAXBYTES.
    new
*** ../vim-9.0.1170/src/testdir/dumps/Test_setcellwidths_dump_1.dump    
2023-01-10 16:02:06.640370473 +0000
--- src/testdir/dumps/Test_setcellwidths_dump_1.dump    2023-01-10 
16:00:08.412576808 +0000
***************
*** 0 ****
--- 1,6 ----
+ >+0&#ffffff0|D|e|s|k|t|o|p| @66
+ |~+0#4040ff13&| @73
+ |~| @73
+ |~| @73
+ |~| @73
+ | +0#0000000&@56|1|,|1| @10|A|l@1| 
*** ../vim-9.0.1170/src/testdir/dumps/Test_setcellwidths_dump_2.dump    
2023-01-10 16:02:06.648370459 +0000
--- src/testdir/dumps/Test_setcellwidths_dump_2.dump    2023-01-10 
16:00:09.568574699 +0000
***************
*** 0 ****
--- 1,6 ----
+ >+0&#ffffff0| |D|e|s|k|t|o|p| @65
+ |~+0#4040ff13&| @73
+ |~| @73
+ |~| @73
+ |~| @73
+ | +0#0000000&@56|1|,|1| @10|A|l@1| 
*** ../vim-9.0.1170/src/version.c       2023-01-10 14:05:19.318606854 +0000
--- src/version.c       2023-01-10 15:56:06.713069339 +0000
***************
*** 697,698 ****
--- 697,700 ----
  {   /* Add new patch number below this line */
+ /**/
+     1171,
  /**/

-- 
For large projects, Team Leaders use sophisticated project management software
to keep track of who's doing what.  The software collects the lies and guesses
of the project team and organizes them in to instantly outdated charts that
are too boring to look at closely.  This is called "planning".
                                (Scott Adams - The Dilbert principle)

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///                                                                      \\\
\\\        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to vim_dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/20230110160342.767D61C0494%40moolenaar.net.

Raspunde prin e-mail lui