To: vim_dev@googlegroups.com Subject: Patch 8.0.0819 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 8.0.0819 Problem: After changing current window the cursor position in the terminal window is not updated. Solution: Set w_wrow, w_wcol and w_valid. Files: src/terminal.c *** ../vim-8.0.0818/src/terminal.c 2017-07-30 18:28:34.816431660 +0200 --- src/terminal.c 2017-07-30 18:44:18.021690070 +0200 *************** *** 857,862 **** --- 857,870 ---- return OK; } + static void + position_cursor(win_T *wp, VTermPos *pos) + { + wp->w_wrow = MIN(pos->row, MAX(0, wp->w_height - 1)); + wp->w_wcol = MIN(pos->col, MAX(0, wp->w_width - 1)); + wp->w_valid |= (VALID_WCOL|VALID_WROW); + } + /* * Returns TRUE if the current window contains a terminal and we are sending * keys to the job. *************** *** 887,892 **** --- 895,901 ---- if (*curwin->w_p_tk != NUL) termkey = string_to_key(curwin->w_p_tk, TRUE); + position_cursor(curwin, &curbuf->b_term->tl_cursor_pos); for (;;) { *************** *** 972,984 **** } static void - position_cursor(win_T *wp, VTermPos *pos) - { - wp->w_wrow = MIN(pos->row, MAX(0, wp->w_height - 1)); - wp->w_wcol = MIN(pos->col, MAX(0, wp->w_width - 1)); - } - - static void may_toggle_cursor(term_T *term) { if (curbuf == term->tl_buffer) --- 981,986 ---- *** ../vim-8.0.0818/src/version.c 2017-07-30 18:28:34.816431660 +0200 --- src/version.c 2017-07-30 18:46:32.992723999 +0200 *************** *** 771,772 **** --- 771,774 ---- { /* Add new patch number below this line */ + /**/ + 819, /**/ -- Even got a Datapoint 3600(?) with a DD50 connector instead of the usual DB25... what a nightmare trying to figure out the pinout for *that* with no spex... /// Bram Moolenaar -- Bram@Moolenaar.net -- 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 ///