diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2016-07-26 08:31:57 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2017-11-17 09:46:16 -0800 |
commit | 64d32af4244110a157efb7cfc906fc5f1a49b0e8 (patch) | |
tree | a355ae6f1d8eac7b6640461b94a0db0c9103eaa4 /newlib | |
parent | 2c6ae4de768ac4117f7e9696ab19d6887a0edf2e (diff) | |
download | cygnal-64d32af4244110a157efb7cfc906fc5f1a49b0e8.tar.gz cygnal-64d32af4244110a157efb7cfc906fc5f1a49b0e8.tar.bz2 cygnal-64d32af4244110a157efb7cfc906fc5f1a49b0e8.zip |
Console: integrate end-of-line hack with cursor positioning.
The previous work for simulating the beyond-right-edge of
screen cursor position is incomplete without integrating this
into the cursor positioning routines. By making the cursor
routines aware of the eat_newline flag, we allow cursor
movements to work correctly with regard to this simulated
position.
* winsup/cygwin/fhandler_console.cc
(fhandler_console::cursor_set): If the X position is beyond
the right edge of the screen, then set the cursor to the
start of the following line, rather than clipping to the
right edge, set the eat_newline flag, indicating that the
the true position is actually one character beyond the
previous line. In all other cases, clear the eat_newline
flag.
(fhandler_console::cursor_rel): Do not apply the delta vector
to the raw Win32 cursor position; call cursor_get and apply
it to the virtual cursor position which takes into account
the eat_newline flag.
(fhandler_console::cursor_get): Take into account the
eat_newline flag. If it is set, then report an adjusted
position that is one column beyond the end of the previous
line.
Diffstat (limited to 'newlib')
0 files changed, 0 insertions, 0 deletions