]> asedeno.scripts.mit.edu Git - PuTTY.git/commitdiff
Drag-select now autoscrolls more sensibly.
authorBen Harris <bjh21@bjh21.me.uk>
Sun, 14 Mar 1999 13:08:44 +0000 (13:08 +0000)
committerBen Harris <bjh21@bjh21.me.uk>
Sun, 14 Mar 1999 13:08:44 +0000 (13:08 +0000)
Selected text now ends up in the clipboard.

[originally from svn r98]

mac.c
macterm.c
terminal.c

diff --git a/mac.c b/mac.c
index db6ff19ab6d0fe87007dc0c22959cfb27a6fdcd1..72a95b8bd9a45781817c1f0876607a46c4680cca 100644 (file)
--- a/mac.c
+++ b/mac.c
@@ -1,4 +1,4 @@
-/* $Id: mac.c,v 1.1.2.14 1999/03/11 21:40:31 ben Exp $ */
+/* $Id: mac.c,v 1.1.2.15 1999/03/14 13:08:43 ben Exp $ */
 /*
  * Copyright (c) 1999 Ben Harris
  * All rights reserved.
@@ -393,16 +393,6 @@ static void mac_adjustcursor(void) {
     SetCursor(&qd.arrow);
 }
 
-void write_clip(void *data, int len) {
-
-    /* XXX: do something */
-}
-
-void get_clip(void **p, int *lenp) {
-
-    /* XXX: do something */
-}
-
 static void mac_shutdown(void) {
 
     exit(0);
index 9e9a4d4d5a24d7a62257026cdf342848dcacfe1a..9a5e0898d28b265166d356b48776a0a9a0d86157 100644 (file)
--- a/macterm.c
+++ b/macterm.c
@@ -1,4 +1,4 @@
-/* $Id: macterm.c,v 1.1.2.19 1999/03/13 18:23:24 ben Exp $ */
+/* $Id: macterm.c,v 1.1.2.20 1999/03/14 13:08:43 ben Exp $ */
 /*
  * Copyright (c) 1999 Ben Harris
  * All rights reserved.
@@ -300,7 +300,6 @@ static void text_click(struct mac_session *s, EventRecord *event) {
 
 void write_clip(void *data, int len) {
     
-    SysBeep(30);
     if (ZeroScrap() != noErr)
        return;
     PutScrap(len, 'TEXT', data);
index 416b10167b0ee02cc6c65d4e315def0eba81e7da..e4b1e667b313b813bab4152cb03ad444c334fe36 100644 (file)
@@ -1376,18 +1376,18 @@ static void sel_spread (void) {
 void term_mouse (Mouse_Button b, Mouse_Action a, int x, int y) {
     unsigned long *selpoint;
     
-    if (y<0) y = 0;
-    if (y>=rows) y = rows-1;
-    if (x<0) {
-        if (y > 0) {
-            x = cols-1;
-            y--;
-        } else
-            x = 0;
-    }
-    if (x>=cols) x = cols-1;
-
-    selpoint = disptop + y * (cols+1) + x;
+    if (x < 0) {
+       x = cols - 1;
+       y--;
+    } else if (x >= cols)
+       x = cols - 1;
+
+    selpoint = disptop + y * (cols + 1) + x;
+    if (selpoint < sbtop)
+       selpoint = sbtop;
+    else if (selpoint > scrtop + rows * (cols + 1) - 1)
+       /* XXX put this in a variable? */
+       selpoint = scrtop + rows * (cols + 1) - 1;
 
     if (b == MB_SELECT && a == MA_CLICK) {
        deselect();