Mercurial > vim
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; |