From fff61f253e7dcdcc2566579e213a0084356933db Mon Sep 17 00:00:00 2001 From: simon Date: Sat, 8 Sep 2001 12:37:48 +0000 Subject: [PATCH] Jan Holmen Holsten's patch for drag-selects to scroll the scrollback. git-svn-id: svn://svn.tartarus.org/sgt/putty@1252 cda61777-01e9-0310-a592-d414129be87e --- terminal.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/terminal.c b/terminal.c index a63d8be8..5b8a1838 100644 --- a/terminal.c +++ b/terminal.c @@ -3082,11 +3082,18 @@ void term_mouse(Mouse_Button b, Mouse_Action a, int x, int y, { pos selpoint; unsigned long *ldata; + int raw_mouse = xterm_mouse && !(cfg.mouse_override && shift); - if (y < 0) + if (y < 0) { y = 0; - if (y >= rows) + if (a == MA_DRAG && !raw_mouse) + term_scroll(0, -1); + } + if (y >= rows) { y = rows - 1; + if (a == MA_DRAG && !raw_mouse) + term_scroll(0, +1); + } if (x < 0) { if (y > 0) { x = cols - 1; @@ -3103,7 +3110,7 @@ void term_mouse(Mouse_Button b, Mouse_Action a, int x, int y, if ((ldata[cols] & LATTR_MODE) != LATTR_NORM) selpoint.x /= 2; - if (xterm_mouse && !(cfg.mouse_override && shift)) { + if (raw_mouse) { int encstate = 0, r, c; char abuf[16]; static int is_down = 0; -- 2.11.0