comparison src/terminal.c @ 12170:1345621ecdfb v8.0.0965

patch 8.0.0965: not restoring cursor shape after it was set in a terminal commit https://github.com/vim/vim/commit/3eee06e7d4c3a8e2dbb2577a1eef0e0f108e0288 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Aug 19 19:40:50 2017 +0200 patch 8.0.0965: not restoring cursor shape after it was set in a terminal Problem: The cursor shape is not reset after it was changed in a terminal. Solution: Request the original cursor shape and restore it. Add t_RS. Do not add t_SH for now, it does not work properly.
author Christian Brabandt <cb@256bit.org>
date Sat, 19 Aug 2017 19:45:04 +0200
parents b80c0172d1a8
children 782a06ba2187
comparison
equal deleted inserted replaced
12169:28f606bb906c 12170:1345621ecdfb
36 * that buffer, attributes come from the scrollback buffer tl_scrollback. 36 * that buffer, attributes come from the scrollback buffer tl_scrollback.
37 * When the buffer is changed it is turned into a normal buffer, the attributes 37 * When the buffer is changed it is turned into a normal buffer, the attributes
38 * in tl_scrollback are no longer used. 38 * in tl_scrollback are no longer used.
39 * 39 *
40 * TODO: 40 * TODO:
41 * - help index for winptydll, optwin entry for winptydll
41 * - make [range]terminal pipe [range] lines to the terminal 42 * - make [range]terminal pipe [range] lines to the terminal
42 * - implement term_setsize() 43 * - implement term_setsize()
43 * - add test for giving error for invalid 'termsize' value. 44 * - add test for giving error for invalid 'termsize' value.
44 * - support minimal size when 'termsize' is "rows*cols". 45 * - support minimal size when 'termsize' is "rows*cols".
45 * - support minimal size when 'termsize' is empty? 46 * - support minimal size when 'termsize' is empty?
1285 return; 1286 return;
1286 #endif 1287 #endif
1287 if (did_change_cursor) 1288 if (did_change_cursor)
1288 { 1289 {
1289 did_change_cursor = FALSE; 1290 did_change_cursor = FALSE;
1290 ui_cursor_shape_forced(TRUE);
1291 term_cursor_color((char_u *)""); 1291 term_cursor_color((char_u *)"");
1292 term_cursor_blink(FALSE); 1292 term_cursor_blink(FALSE);
1293 /* this will restore the initial cursor style, if possible */
1294 ui_cursor_shape_forced(TRUE);
1293 } 1295 }
1294 } 1296 }
1295 1297
1296 /* 1298 /*
1297 * Returns TRUE if the current window contains a terminal and we are sending 1299 * Returns TRUE if the current window contains a terminal and we are sending