Patch 8.1.1499
Problem:    Ruler not updated after popup window was removed.
Solution:   use popup_mask in screen_puts().
Files:      src/screen.c, src/testdir/test_popupwin.vim,
            src/testdir/dumps/Test_popupwin_07.dump,
            src/testdir/dumps/Test_popupwin_08.dump


*** ../vim-8.1.1498/src/screen.c        2019-06-08 17:25:28.683640742 +0200
--- src/screen.c        2019-06-08 18:59:05.442533204 +0200
***************
*** 7897,7903 ****
                || ScreenAttrs[off] != attr
                || exmode_active;
  
!       if (need_redraw || force_redraw_this)
        {
  #if defined(FEAT_GUI) || defined(UNIX)
            /* The bold trick makes a single row of pixels appear in the next
--- 7897,7907 ----
                || ScreenAttrs[off] != attr
                || exmode_active;
  
!       if ((need_redraw || force_redraw_this)
! #ifdef FEAT_TEXT_PROP
!               && popup_mask[row * screen_Columns + col] <= screen_zindex
! #endif
!          )
        {
  #if defined(FEAT_GUI) || defined(UNIX)
            /* The bold trick makes a single row of pixels appear in the next
*** ../vim-8.1.1498/src/testdir/test_popupwin.vim       2019-06-06 
16:12:05.923134646 +0200
--- src/testdir/test_popupwin.vim       2019-06-08 18:56:53.631256309 +0200
***************
*** 51,56 ****
--- 51,69 ----
    call term_sendkeys(buf, ":redraw\<CR>")
    call VerifyScreenDump(buf, 'Test_popupwin_06', {})
  
+   " move popup over ruler
+   call term_sendkeys(buf, ":set cmdheight=2\<CR>")
+   call term_sendkeys(buf, ":call popup_move(popupwin, {'line': 7, 'col': 
55})\<CR>")
+   call VerifyScreenDump(buf, 'Test_popupwin_07', {})
+ 
+   " clear all popups after moving the cursor a bit, so that ruler is updated
+   call term_sendkeys(buf, "axxx\<Esc>")
+   call term_wait(buf)
+   call term_sendkeys(buf, "0")
+   call term_wait(buf)
+   call term_sendkeys(buf, ":popupclear\<CR>")
+   call VerifyScreenDump(buf, 'Test_popupwin_08', {})
+ 
    " clean up
    call StopVimInTerminal(buf)
    call delete('XtestPopup')
*** ../vim-8.1.1498/src/testdir/dumps/Test_popupwin_07.dump     2019-06-08 
19:00:43.117992757 +0200
--- src/testdir/dumps/Test_popupwin_07.dump     2019-06-08 18:57:13.299148929 
+0200
***************
*** 0 ****
--- 1,10 ----
+ > +0&#ffffff0@74
+ |~+0#4040ff13&| @73
+ |~| @73
+ |~| @73
+ |~| @73
+ |~| @73
+ |~| @52|o+0#0000001#ffd7ff255|t|h|e|r| |t|a|b| @11
+ |~+0#4040ff13#ffffff0| @52|a+0#0000001#ffd7ff255| |c+0#ff404010&|o|m@1|e|n|t| 
+0#0000001&|l|i|n|e| @6
+ |:+0#0000000#ffffff0|c|a|l@1| |p|o|p|u|p|_|m|o|v|e|(|p|o|p|u|p|w|i|n|,| 
|{|'|l|i|n|e|'|:| |7|,| |'|c|o|l|'|:| |5@1|}|)| @3|t+0#0000001#ffd7ff255|h|i|s| 
|l|i|n|e| |w|i|l@1| |n|o|t| |f|i
+ | +0#0000000#ffffff0@53|t+0#0000001#ffd7ff255| |h|e|r|e| @14
*** ../vim-8.1.1498/src/testdir/dumps/Test_popupwin_08.dump     2019-06-08 
19:00:43.121992734 +0200
--- src/testdir/dumps/Test_popupwin_08.dump     2019-06-08 18:59:23.862431523 
+0200
***************
*** 0 ****
--- 1,10 ----
+ >x+0&#ffffff0@2| @71
+ |~+0#4040ff13&| @73
+ |~| @73
+ |~| @73
+ |~| @73
+ |~| @73
+ |~| @73
+ |~| @73
+ | +0#0000000&@74
+ @57|1|,|1| @10|A|l@1| 
*** ../vim-8.1.1498/src/version.c       2019-06-08 18:07:17.748161711 +0200
--- src/version.c       2019-06-08 19:00:48.749961492 +0200
***************
*** 769,770 ****
--- 769,772 ----
  {   /* Add new patch number below this line */
+ /**/
+     1499,
  /**/

-- 
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?

 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/201906081701.x58H1ZtI006352%40masaka.moolenaar.net.
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui