Граф коммитов

40 Коммитов

Автор SHA1 Сообщение Дата
Simon Tatham 7a79df8fe6 Rethink the whole line discipline architecture. Instead of having
multiple switchable line disciplines, we now have a single unified
one which changes its behaviour based on option settings. Each
option setting can be suggested by the back end and/or the terminal
handler, and can be forcibly overridden by the configuration. Local
echo and local line editing are separate, independently switchable,
options.

[originally from svn r895]
2001-01-24 14:08:20 +00:00
Simon Tatham d9de560388 The `wrapnext' variable now states whether we _would_ wrap next
character if we were wrapping, not whether we _will_ wrap next
character. Makes for saner behaviour with vertical-line cursor and
also when changing autowrap mode while on rightmost column. Does
entail small behavioural changes to backspace and destructive-
backspace when in rightmost column with Auto Wrap off, but I don't
think they should be catastrophic, or indeed that there's a well
defined Right Behaviour.

[originally from svn r872]
2001-01-17 17:25:58 +00:00
Simon Tatham c68959b584 Introduce alternative cursor shapes: underline, vertical line
[originally from svn r870]
2001-01-17 16:57:33 +00:00
Simon Tatham 48b368d3ed Disable logging completely if the user selects Cancel when told the
file already exists

[originally from svn r851]
2001-01-08 16:24:13 +00:00
Simon Tatham 3a2a06b1fc Improved session logging courtesy of Roman Pompejus
[originally from svn r846]
2001-01-07 18:24:59 +00:00
Simon Tatham d75f3687fb Correct pointer types in new clipme function
[originally from svn r812]
2000-11-24 22:27:51 +00:00
Simon Tatham 9147f68fb6 Ron Kuris's "copy everything to clipboard" patch
[originally from svn r808]
2000-11-21 19:28:25 +00:00
Simon Tatham 384eeb3f76 Fix miscellaneous compiler warnings. Thanks to Jacob Nevins
[originally from svn r755]
2000-10-24 10:47:49 +00:00
Simon Tatham bbbda4110b Created a shiny new abstraction for the socket handling. Has many
advantages:
 - protocol modules can call sk_write() without having to worry
   about writes blocking, because blocking writes are handled in the
   abstraction layer and retried later.
 - `Lost connection while sending' is a thing of the past.
 - <winsock.h> is no longer needed in most modules, because
   "putty.h" doesn't have to declare `SOCKET' variables any more,
   only the abstracted `Socket' type.
 - select()-equivalent between multiple sockets will now be handled
   sensibly, which opens the way for things like SSH port
   forwarding.

[originally from svn r744]
2000-10-23 10:32:37 +00:00
Simon Tatham 6eb613e3c4 Three new configurable options:
- Robert de Bath's Compose key is now off by default and configurable on
 - The ages-old controversy over whether ALT by itself should bring the
   System menu up is now controllable by a config option
 - You can now independently configure whether scrollback resets on a
   keypress _and_ whether it resets on screen activity.

[originally from svn r741]
2000-10-21 16:30:58 +00:00
Simon Tatham e32603347c Introduce a sane interface function, from_backend(), for backends to
use when they have data from the network. Replaces the utterly daft
inbuf / inbuf_head / term_out() interface, which only made sense
when feeding to terminal.c. (terminal.c now implements
from_backend() as a small function that gateways to the old
interface.)

As a side effect, from_backend() also has an `is_stderr' parameter,
so scp can once again separate the server's pronouncements on stderr
from the actual protocol progress on stdout.

[originally from svn r729]
2000-10-20 13:51:46 +00:00
Simon Tatham a80fa10287 Remember to update scrollbar when scrollback is reset
[originally from svn r727]
2000-10-20 12:31:02 +00:00
Simon Tatham fe2ee468e6 Turn off paste-as-poorman for line drawing chars until it's configurable
[originally from svn r702]
2000-10-10 16:02:08 +00:00
Simon Tatham b5957e5732 Scroll regions of two lines are allowed
[originally from svn r700]
2000-10-10 10:50:14 +00:00
Simon Tatham fd5588d087 Robert de Bath's big patch:
- cope with strange WinSock wrappers not supporting SIOCATMARK
  - define yet more terminal compatibility modes
  - support UK-ASCII (just like US-ASCII but # is a sterling sign)
  - support connection keepalives at a configurable interval

[originally from svn r692]
2000-10-09 12:53:32 +00:00
Simon Tatham e48981def4 Miscellaneous fixes to try to make other compilers happier
[originally from svn r691]
2000-10-09 12:19:09 +00:00
Simon Tatham 7b6106d62a Add a parameter to write_clip() so that windlg.c need not call term_deselect
[originally from svn r681]
2000-10-06 12:32:25 +00:00
Simon Tatham 4f3def030a Add an invisible System Caret for blind-helper-software to track
[originally from svn r627]
2000-09-25 16:17:53 +00:00
Simon Tatham bed673083b Yet another pedantic fix for scroll margin setting :-)
[originally from svn r586]
2000-09-11 14:47:57 +00:00
Simon Tatham 0d5d39064a Robert de Bath's Big Patch, part 1
[originally from svn r516]
2000-07-26 12:13:51 +00:00
Simon Tatham 7a01fd48b6 Make beep optional - thanks to Antal Novak
[originally from svn r507]
[this commit reordered to come after creation of 0.49 tag]
2000-06-24 17:00:49 +00:00
Simon Tatham e0fac426c5 Hack to work around the rootshell.com xterm DoS problem. A better
fix might be possible, but it's unclear whether this is a productive
strategy in the long term.

[originally from svn r495]
2000-06-05 16:33:58 +00:00
Simon Tatham 7d85289621 Patch to RDB's blinking cursor: make it configurable and by default
off. It's terribly distracting.

[originally from svn r423]
2000-03-17 10:46:59 +00:00
Simon Tatham 693e51c934 RDB's patch. Oodles of new terminal functionality, including
ATTR_BLINK (as bold background) and VT52 support. Plus a
compatibility tracking system whereby all escape sequences can be
disabled for a pure-VT102 compatibility mode or other levels.

[originally from svn r421]
2000-03-17 10:39:05 +00:00
Simon Tatham 30ee1109f1 Robert de Bath's patch: ARG_DEFAULT is now zero because it's
apparently defined behaviour for _all_ CSI-type sequences that ESC[Q
should be equivalent to ESC[0Q. Which is a pain in the wossname and
not a sane way to do it, but if the standards say it then I suppose
... :-(

[originally from svn r406]
2000-03-11 14:16:55 +00:00
Simon Tatham 118524f442 Robert de Bath's patch: be a little more careful of main and
alternate screens when resizing the window. Should avoid lines of
alternate screen showing up in scrollback buffer.

[originally from svn r403]
2000-03-11 14:10:10 +00:00
Simon Tatham 06060def52 Robert de Bath's patch: sort out once and for all the confusion
between ESC [ ... Q and ESC [ ... ? Q (for all values of Q).

[originally from svn r402]
2000-03-11 14:08:36 +00:00
Simon Tatham 9e6856ef8e Oops - that unscroll stuff was a little broken...
[originally from svn r348]
1999-12-09 17:10:28 +00:00
Simon Tatham 396d6cd422 Turn #ifdef LOG into a command-line option for debugging use
[originally from svn r330]
1999-11-30 11:22:30 +00:00
Simon Tatham 97b5df1691 Oops - fix total idiocies in applying that patch
[originally from svn r329]
1999-11-30 11:13:33 +00:00
Simon Tatham a8d5838ebc Robert de Bath's multi-purpose patch, slightly modified.
- ^E answerback is now `PuTTY'.
 - The framework is now in place for the scrollback to reset to
   bottom on display _or_ keyboard events _or_ both. An actual
   configurable option isn't yet present, but most of the code is in
   place.
 - Try to deal with the problems where incoming data gets dropped
   after decoding but before display.
 - Scrollback behaviour has changed: instead of keying it off
   `scroll' versus `delete top line', things now go into the
   scrollback from _either_ of those but only if the primary screen
   is selected. Should fix problems with `less' and talkers.
 - must_update variable has gone because rdb correctly observed that
   it didn't seem to be doing a great deal :-)

[originally from svn r328]
1999-11-30 10:52:07 +00:00
Simon Tatham 429b6f4a83 Added local-editing line discipline to make raw backend usable
[originally from svn r287]
1999-11-09 12:05:34 +00:00
Simon Tatham e913e99b40 Oleg Panashchenko's Cyrillic support patch
[originally from svn r277]
1999-11-08 11:08:09 +00:00
Simon Tatham 97731141ad Fix misparse of ESC[?9r sequence; I must find out what it _should_ do
[originally from svn r176]
1999-07-07 13:16:41 +00:00
Simon Tatham 9a5b63aa03 Allow CSI 0;0r to set default scroll region (previously did nothing useful)
[originally from svn r85]
1999-03-11 10:27:12 +00:00
Simon Tatham 0fc1c0c9c9 Improve drag select (dragging outside LHS doesn't now select first
char too)

[originally from svn r20]
1999-01-22 09:36:21 +00:00
Simon Tatham e68a529cc9 Add SSH don't-allocate-pty option, and corresponding LF-implies-CR
terminal setting

[originally from svn r16]
1999-01-15 11:30:40 +00:00
Simon Tatham 3352f57942 Fix breakage in window redraw
[originally from svn r14]
1999-01-15 11:28:11 +00:00
Simon Tatham 60ab6a5d82 John Sullivan's patches plus more fixes:
- Stop using the identifier `environ' as some platforms make it a macro
  - Fix silly error box at end of connection in FWHACK mode
  - Fix GPF on maximise-then-restore
  - Use SetCapture to allow drag-selecting outside the window
  - Correctly update window title when iconic and in win_name_always mode

[originally from svn r12]
1999-01-08 13:10:19 +00:00
Simon Tatham c74130d423 Initial checkin: beta 0.43
[originally from svn r11]
1999-01-08 13:02:13 +00:00