summaryrefslogtreecommitdiff
path: root/sys/src/libdraw/enter.c
diff options
context:
space:
mode:
authormischief <mischief@offblast.org>2015-01-09 15:41:00 -0800
committermischief <mischief@offblast.org>2015-01-09 15:41:00 -0800
commitf6a9db1bd9b50f43c570ba55e5d5653558006763 (patch)
treeb309a2570d81bac28aa8f57345f5a8955afa20e3 /sys/src/libdraw/enter.c
parent79ff9d28bd2c3d447dfb1a7b3fb6ee5634145a7a (diff)
libdraw: don't redraw input box in enter/eenter when mouse is moved outside the rectangle
prevents some flickering when devdraw is used over a high latency connection. Fixes issue 236
Diffstat (limited to 'sys/src/libdraw/enter.c')
-rw-r--r--sys/src/libdraw/enter.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/src/libdraw/enter.c b/sys/src/libdraw/enter.c
index 09dafaa7d..4f0b6b6bf 100644
--- a/sys/src/libdraw/enter.c
+++ b/sys/src/libdraw/enter.c
@@ -120,6 +120,7 @@ enter(char *ask, char *buf, int len, Mousectl *mc, Keyboardctl *kc, Screen *scr)
}
flushimage(display, 1);
+nodraw:
switch(alt(a)){
case -1:
done = 1;
@@ -194,7 +195,7 @@ enter(char *ask, char *buf, int len, Mousectl *mc, Keyboardctl *kc, Screen *scr)
case 1:
if(!ptinrect(m.xy, r)){
down = 0;
- continue;
+ goto nodraw;
}
if(m.buttons & 7){
down = 1;