comparison src/terminal.c @ 13829:044337cbf854 v8.0.1786

patch 8.0.1786: no test for 'termwinkey' commit https://github.com/vim/vim/commit/b2ac14c0b5e23f8ab97c5c784bcd83e13ba8ded3 Author: Bram Moolenaar <Bram@vim.org> Date: Tue May 1 18:47:59 2018 +0200 patch 8.0.1786: no test for 'termwinkey' Problem: No test for 'termwinkey'. Solution: Add a test. Make feedkeys() handle terminal_loop() returning before characters are consumed.
author Christian Brabandt <cb@256bit.org>
date Tue, 01 May 2018 19:00:07 +0200
parents d0d8125ba692
children 8e583c52eb44
comparison
equal deleted inserted replaced
13828:4dece4ef17bd 13829:044337cbf854
40 * TODO: 40 * TODO:
41 * - Win32: Make terminal used for :!cmd in the GUI work better. Allow for 41 * - Win32: Make terminal used for :!cmd in the GUI work better. Allow for
42 * redirection. Probably in call to channel_set_pipes(). 42 * redirection. Probably in call to channel_set_pipes().
43 * - Win32: Redirecting output does not work, Test_terminal_redir_file() 43 * - Win32: Redirecting output does not work, Test_terminal_redir_file()
44 * is disabled. 44 * is disabled.
45 * - Add test for 'termwinkey'.
46 * - When starting terminal window with shell in terminal, then using :gui to 45 * - When starting terminal window with shell in terminal, then using :gui to
47 * switch to GUI, shell stops working. Scrollback seems wrong, command 46 * switch to GUI, shell stops working. Scrollback seems wrong, command
48 * running in shell is still running. 47 * running in shell is still running.
49 * - GUI: when using tabs, focus in terminal, click on tab does not work. 48 * - GUI: when using tabs, focus in terminal, click on tab does not work.
50 * - handle_moverect() scrolls one line at a time. Postpone scrolling, count 49 * - handle_moverect() scrolls one line at a time. Postpone scrolling, count
1688 if (typed) 1687 if (typed)
1689 stuffcharReadbuff(c); 1688 stuffcharReadbuff(c);
1690 return FAIL; 1689 return FAIL;
1691 1690
1692 case K_IGNORE: 1691 case K_IGNORE:
1692 case K_CANCEL: // used for :normal when running out of chars
1693 return FAIL; 1693 return FAIL;
1694 1694
1695 case K_LEFTDRAG: 1695 case K_LEFTDRAG:
1696 case K_MIDDLEDRAG: 1696 case K_MIDDLEDRAG:
1697 case K_RIGHTDRAG: 1697 case K_RIGHTDRAG:
1824 } 1824 }
1825 list_free(l); 1825 list_free(l);
1826 } 1826 }
1827 } 1827 }
1828 1828
1829 #if defined(FEAT_GUI) || defined(PROTO) 1829 /*
1830 /* 1830 * Return TRUE when waiting for a character in the terminal, the cursor of the
1831 * Return TRUE when the cursor of the terminal should be displayed. 1831 * terminal should be displayed.
1832 */ 1832 */
1833 int 1833 int
1834 terminal_is_active() 1834 terminal_is_active()
1835 { 1835 {
1836 return in_terminal_loop != NULL; 1836 return in_terminal_loop != NULL;
1837 } 1837 }
1838 1838
1839 #if defined(FEAT_GUI) || defined(PROTO)
1839 cursorentry_T * 1840 cursorentry_T *
1840 term_get_cursor_shape(guicolor_T *fg, guicolor_T *bg) 1841 term_get_cursor_shape(guicolor_T *fg, guicolor_T *bg)
1841 { 1842 {
1842 term_T *term = in_terminal_loop; 1843 term_T *term = in_terminal_loop;
1843 static cursorentry_T entry; 1844 static cursorentry_T entry;