diff options
author | ache <ache@FreeBSD.org> | 2001-03-12 01:15:11 +0000 |
---|---|---|
committer | ache <ache@FreeBSD.org> | 2001-03-12 01:15:11 +0000 |
commit | 86ca9deb041d49eb04b47edfa898200177786642 (patch) | |
tree | 9e729e07b7c06088e670596999a6ec1525078519 /sys/dev/syscons | |
parent | 0a860f59d06301709a4f60ffa37e2a39fe52c492 (diff) | |
download | FreeBSD-src-86ca9deb041d49eb04b47edfa898200177786642.zip FreeBSD-src-86ca9deb041d49eb04b47edfa898200177786642.tar.gz |
Don't require that mouse cursor must be visible before mouse paste.
Paste always happens to current _text_ cursor position independently of
mouse cursor position in any case and old variant force user to press
mouse paste button _two_ times if mouse cursor is invisible.
Diffstat (limited to 'sys/dev/syscons')
-rw-r--r-- | sys/dev/syscons/scmouse.c | 3 | ||||
-rw-r--r-- | sys/dev/syscons/syscons.c | 19 |
2 files changed, 7 insertions, 15 deletions
diff --git a/sys/dev/syscons/scmouse.c b/sys/dev/syscons/scmouse.c index 5830cfb..dd1e2c5 100644 --- a/sys/dev/syscons/scmouse.c +++ b/sys/dev/syscons/scmouse.c @@ -591,8 +591,7 @@ mouse_cut_extend(scr_stat *scp) void sc_mouse_paste(scr_stat *scp) { - if (scp->status & MOUSE_VISIBLE) - sc_paste(scp, cut_buffer, strlen(cut_buffer)); + sc_paste(scp, cut_buffer, strlen(cut_buffer)); } #endif /* SC_NO_CUTPASTE */ diff --git a/sys/dev/syscons/syscons.c b/sys/dev/syscons/syscons.c index 7742dc6..af7fd94 100644 --- a/sys/dev/syscons/syscons.c +++ b/sys/dev/syscons/syscons.c @@ -3068,12 +3068,7 @@ next_code: case PASTE: #ifndef SC_NO_CUTPASTE - /* XXX need to set MOUSE_VISIBLE flag 'cause sc_mouse_paste() */ - /* and sc_paste() will not operate without it. */ - i = scp->status; - scp->status |= MOUSE_VISIBLE; sc_mouse_paste(scp); - scp->status = i; #endif break; @@ -3367,14 +3362,12 @@ sc_paste(scr_stat *scp, u_char *p, int count) struct tty *tp; u_char *rmap; - if (scp->status & MOUSE_VISIBLE) { - tp = VIRTUAL_TTY(scp->sc, scp->sc->cur_scp->index); - if (!(tp->t_state & TS_ISOPEN)) - return; - rmap = scp->sc->scr_rmap; - for (; count > 0; --count) - (*linesw[tp->t_line].l_rint)(rmap[*p++], tp); - } + tp = VIRTUAL_TTY(scp->sc, scp->sc->cur_scp->index); + if (!(tp->t_state & TS_ISOPEN)) + return; + rmap = scp->sc->scr_rmap; + for (; count > 0; --count) + (*linesw[tp->t_line].l_rint)(rmap[*p++], tp); } void |