1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-01-10 18:07:59 +00:00
Commit Graph

275 Commits

Author SHA1 Message Date
Simon Tatham
43a4339ac5 Set up kbd_codepage at the start of the program, as well as when the
input locale changes. With any luck this should sort out the Polish
Unicode problems.

[originally from svn r1427]
2001-11-29 21:30:59 +00:00
Simon Tatham
59f3434672 RDB's general resizing cleanup. He's put his favourite resize mode
back in again, but as long as it's not the default it doesn't bother
me too much :-)

[originally from svn r1421]
2001-11-25 18:39:57 +00:00
Simon Tatham
bb1f5cec31 Add support for most of the ESC[<low number>t sequences, which xterm
uses to manipulate the window (minimise, maximise, front, back,
move, resize) and report things about the window (is it minimised or
maximised, how big is it, what's its title). Missing are ESC[4;X;Yt
(resize to a specified pixel size; our resize code doesn't like it)
and ESC[19;X;Yt (report size of _screen_ in _characters_, which it
isn't even obvious how to do when you've got a variable font size).

[originally from svn r1414]
2001-11-25 15:21:25 +00:00
Simon Tatham
92eb0710e3 Jacob's patch to make full-screen mode available even when Alt-Enter
isn't configured to do it: we now have a sysmenu option for it. In
addition, there's a special case such that clicking the top left
pixel on the screen in full-screen mode brings up the sysmenu (so
you can still get at the sysmenu in FS mode without Alt-anything
configured to bring it up and without ghastly fiddling with the
Windows key). Also Change Settings while in full-screen mode now
adds/removes the scrollbar in response to scrollbar_in_fullscreen
rather than scrollbar (oops).

[originally from svn r1410]
2001-11-25 10:24:29 +00:00
Simon Tatham
d9f7fc44bc Glenn Maynard's other IME fix
[originally from svn r1406]
2001-11-24 11:56:24 +00:00
Simon Tatham
6c19b2c413 Glenn Maynard's IMM cursor position fix
[originally from svn r1405]
2001-11-23 19:12:28 +00:00
Simon Tatham
cce8878289 Make sure we always unhide the mouse pointer when the System menu is
displayed.

[originally from svn r1393]
2001-11-21 22:31:05 +00:00
Simon Tatham
c2ae9e5537 Ctrl and Alt shouldn't reset the scrollback even if reset-on-
keypress is enabled. (Shift already didn't, because that was
necessary for Shift-Pg{Up,Dn} to work sanely.)

[originally from svn r1392]
2001-11-21 22:23:40 +00:00
Simon Tatham
98948bf236 Whoops - missed out a vital bit of RTF Unicode fallback handling
[originally from svn r1374]
2001-11-08 09:20:36 +00:00
Simon Tatham
7f1e73904a Implement writing RTF to the clipboard (off by default), so that if
you enable it text will paste into Word et al in the same font as
PuTTY itself is displaying in. In particular, this will be a fixed-
pitch font, so tables and `ls' and the like will naturally line up.

[originally from svn r1373]
2001-11-07 22:22:53 +00:00
Simon Tatham
4fd313f258 RDB's fix to full-screen mode. Apparently sorts out most of the
fullscreen/maximised confusions, by treating fullscreen as a special
case of maximised (fair enough). Removes dependency on multimon.h,
but Wez thinks (though he was unable to test) that this version
should naturally do the Right Thing on multi-monitor systems anyway.

[originally from svn r1365]
2001-11-04 16:41:26 +00:00
Simon Tatham
d2c9937691 Rectangular-block selection. Enabled by Alt+drag, unless you
configure it to be the default in which case it's _dis_abled by
Alt+drag.

[originally from svn r1350]
2001-10-31 18:50:09 +00:00
Simon Tatham
555ded7740 Fix the `SERIOUS NETWORK INTERNAL ERROR' oversight in winnet.c. See
the comment in try_send() for details of the problem.

[originally from svn r1335]
2001-10-28 09:57:47 +00:00
Simon Tatham
aa5f38e53c Add Jacob's patch for compiling without multimon.h.
[originally from svn r1315]
2001-10-23 20:25:34 +00:00
Simon Tatham
05226e43a9 Wez Furlong's patch to tidy up full-screen mode: make it
multi-monitor aware and make the scrollbar separately configurable
in and out of full-screen mode. Also (not Wez's patch, this bit) fix
the case where the user reconfigures _while_ the window is
full-screen, and disables full-screening. (In this case the window
should return gracefully to normal, rather than losing all its title
bars and getting confused.)

[originally from svn r1310]
2001-10-17 21:21:03 +00:00
Simon Tatham
07b6efb23d Revamp the window-resize behaviour UI so there are only three states
rather than four. Should fix all sorts of bugs, since the fourth
(and default!) state was behaving weirdly and nobody liked it.

[originally from svn r1307]
2001-10-12 21:10:56 +00:00
Simon Tatham
7466f4785c Ongoing pastes were being abandoned on any key-down event. Quite
apart from the debatable semantic sanity of abandoning mid-paste,
this was breaking Shift-paste (theoretically valid in any case,
actually necessary with xterm mouse reporting enabled) because when
you hold down Shift the window receives a steady stream of KEYDOWN
messages as the key auto-repeats. One of those is likely to show up
in mid-paste and scupper you. For the moment, this has been changed
so that only a key press that actually _generates session data_
aborts a paste. In future I plan to review just why we're doing this
anyway (it may be that paste-little-by-little was a response to
rubbish socket buffering, in which case we can dispense with it
completely now).

[originally from svn r1279]
2001-09-21 17:54:29 +00:00
Simon Tatham
39c3f9b8bc Fix pasting of newlines in local line editing mode. Possibly not a
very _good_ fix; something might want doing after the release.

[originally from svn r1277]
2001-09-19 20:07:15 +00:00
Simon Tatham
6364ff3e71 terminal.c's from_backend() no longer calls term_out(), because
term_out() can in turn call ldisc_send() which calls back to
from_backend() when local echo is enabled. This was giving rise to
crazy re-entrancy stuff and stack overflows. Instead from_backend()
deposits its data in a bufchain which term_out() empties the next
time it's called.

[originally from svn r1276]
2001-09-18 19:41:07 +00:00
Simon Tatham
f3a17c0715 Reintroduce Cyrillic Caps Lock mode, which was in 0.51 but got
kicked out by the Unicode patch. It's not very good - only works
sanely on US keyboards - but it's no worse than it was in 0.51.
After 0.52 maybe I should fix it properly.

[originally from svn r1273]
2001-09-18 18:51:10 +00:00
Simon Tatham
3d3ef9b8a4 Three more patches from RDB: one to make Atomica work right, one to
fiddle with the widths of characters in DBCS screen fonts, and (the
big one) one to enable a mode in which resizing the window locks the
terminal size and lets the font change, instead of vice versa. That
should shut up a few feature requests!

[originally from svn r1269]
2001-09-15 15:54:24 +00:00
Simon Tatham
fe43458dad Christopher Allene's patch for going full-screen on Alt-Enter.
[originally from svn r1267]
2001-09-13 18:24:51 +00:00
Simon Tatham
e1ecb1c61e Patch from RDB: fix the failure to display window-resize pointers
when in raw mouse mode.

[originally from svn r1241]
2001-09-07 22:43:31 +00:00
Simon Tatham
f08de20a1e Robert de Bath's asynchronous-connect patch. Helps a lot in port
forwarding; improves Event Log; and causes the PuTTY window to
appear earlier in the setup process.

[originally from svn r1239]
2001-09-07 22:39:01 +00:00
Simon Tatham
f1c2f2fcf0 Robert de Bath's `Patch.a_alt_key': clean up the handling of
Alt-Space, Alt-only and the System menu. It lets Windows do more of
the work, and also saves a static variable, so it must be good :-)

[originally from svn r1237]
2001-09-07 21:39:03 +00:00
Simon Tatham
5fad95e748 Jacob's patch to cause Shift to return to copy-and-paste when xterm
mouse tracking is enabled. (This can be turned off if your app
really wants Shift+mouse, but it defaults to on for general
usefulness.)

[originally from svn r1235]
2001-09-07 20:35:38 +00:00
Simon Tatham
fdb6435ef9 Oops, fix that fix. TranslateKey can return <0 and it needs to be
dealt with. I don't recall being told that; I should comment it at
some stage.

[originally from svn r1234]
2001-09-07 20:32:33 +00:00
Simon Tatham
e65095f52b Fix mouse hiding on keypresses, which was failing due to the Unicode
patch having done something bizarre to the semantics of TranslateKey.

[originally from svn r1233]
2001-09-07 20:18:55 +00:00
Simon Tatham
c87fa98d09 Extensive changes that _should_ fix the socket buffering problems,
by ceasing to listen on input channels if the corresponding output
channel isn't accepting data. Has had basic check-I-didn't-actually-
break-anything-too-badly testing, but hasn't been genuinely tested
in stress conditions (because concocting stress conditions is non-
trivial).

[originally from svn r1198]
2001-08-25 17:09:23 +00:00
Simon Tatham
50766ce729 SSH port forwarding! How cool is that?
Only currently works on SSH1; SSH2 should be doable but it's late
and I have other things to do tonight. The Cool Guy award for this
one goes to Nicolas Barry, for doing most of the work and actually
understanding the code he was adding to.

[originally from svn r1176]
2001-08-08 20:44:35 +00:00
Simon Tatham
4d3aad22f5 Remove the OSVERSIONINFOEX code because there's no obvious way to
determine whether it'll compile before receiving the compile error.
Gah.

[originally from svn r1175]
2001-08-07 08:42:17 +00:00
Simon Tatham
94d35cead5 Glenn Maynard's patch completely disabled PuTTY{,tel} on any system
that didn't support OSVERSIONINFOEX. For example, such wildly out of
date things as NT4. Now fixed.

[originally from svn r1174]
2001-08-04 15:45:25 +00:00
Simon Tatham
de987f33fe Glenn Maynard's IME patch
[originally from svn r1172]
2001-08-04 15:15:07 +00:00
Simon Tatham
dbe881a163 SCO function key mode now affects the small keypad (Ins, Del, etc)
in accordance with the keymap dump sent by Len Christiansen.

[originally from svn r1169]
2001-08-04 14:35:58 +00:00
Simon Tatham
7b7ec7e72e Add some spare SetForegroundWindow and SetActiveWindow calls to try
to improve window behaviour. Also make the About box a subdialog of
the config box instead of a separate child of the root.

[originally from svn r1139]
2001-05-19 15:23:12 +00:00
Simon Tatham
38b6d276d2 RDB: fix various UTF-8 glitches.
[originally from svn r1138]
2001-05-19 15:21:05 +00:00
Simon Tatham
079b6bc6f6 Reinstate the Shift-Ins paste behaviour, which was accidentally
broken by the mouse button redesignation that came with xterm mouse
reporting.

[originally from svn r1130]
2001-05-17 10:06:54 +00:00
Simon Tatham
d05e9f0b1a Fix wrong button codes in WM_MOUSEMOVE.
[originally from svn r1124]
2001-05-13 15:01:36 +00:00
Simon Tatham
84e58edf9f Glenn Maynard's patch (as adapted by Jacob) for taskbar flashing
when a bell occurs and the window is minimised.

[originally from svn r1123]
2001-05-13 14:42:17 +00:00
Simon Tatham
fb473cc16c Placate gcc's `-Wall' warnings.
[originally from svn r1121]
2001-05-13 14:02:28 +00:00
Simon Tatham
93e27a40ae Trim leading whitespace off the hostname if it's there.
[originally from svn r1120]
2001-05-13 13:23:12 +00:00
Simon Tatham
c0d65a351e Define WM_MOUSEWHEEL (to 0x20A) if it's not defined by windows.h.
[originally from svn r1115]
2001-05-13 11:19:20 +00:00
Simon Tatham
5723ec04de Fix the SCO function keys, which weren't quite right.
[originally from svn r1113]
2001-05-13 10:58:51 +00:00
Simon Tatham
26f1085038 RDB's Unicode patch. Fonts are now used in Unicode mode where
possible and we have a single unified means of trying to display any
Unicode code point. Instead of the various ad-hoc translation modes
we had before, we now have a single `codepage' option which allows
us to treat the incoming (and outgoing) text as any given character
set, and locally we map that to Unicode and back.

[originally from svn r1110]
2001-05-10 08:34:20 +00:00
Simon Tatham
e001f1533e From RDB: a patch to allow special keys (^C, ^Z, Delete, Return) to
send Telnet special sequences (Interrupt Process, Suspend, Erase
Char, End Of Line) instead of their ASCII equivalents. In particular
Return -> Telnet End Of Line is _always_ enabled irrespective of the
configuration, while the others are optional. Also in this patch, an
entertainingly ghastly use of `switch' to allow literal ^M^J to do
the same thing as magic-^M (the Return key) when in Raw protocol.

[originally from svn r1109]
2001-05-09 15:12:26 +00:00
Simon Tatham
c2eb57a034 `realhost', passed back from all the backend init functions, was
scoped within those functions. It's now dynamically allocated.

[originally from svn r1108]
2001-05-09 14:01:15 +00:00
Simon Tatham
9f32a1da35 From RDB: according to VT manuals, application cursor keys should
never be enabled when app keypad is disabled. Also CTRL+arrows flips
the application-ness to make it easy to generate the other sequences
if required.

[originally from svn r1105]
2001-05-09 13:30:06 +00:00
Simon Tatham
bc1a43efe8 RDB's alternative way to interpret the window size in Change
Settings: it describes the size of the _unmaximised_ window.
Maximisedness is a separate property which Change Settings doesn't
affect. So if you change the font while the window is maximised, the
terminal size adjusts accordingly. The downside is that you can't
read the width and height of a maximised window out of Change
Settings. Suggestions that restore this property are welcome.

[originally from svn r1102]
2001-05-09 13:03:16 +00:00
Simon Tatham
19b6dcc1ae Fix de Bath's last-ditch bell overload
[originally from svn r1100]
2001-05-06 16:18:58 +00:00
Simon Tatham
c1c1bc4715 Strip off and ignore `:port' on the end of a hostname.
[originally from svn r1099]
2001-05-06 15:09:32 +00:00
Simon Tatham
3730ada5ce Run entire source base through GNU indent to tidy up the varying
coding styles of the various contributors! Woohoo!

[originally from svn r1098]
2001-05-06 14:35:20 +00:00
Simon Tatham
93101b5a71 Wez Furlong's patch to add xterm mouse reporting and proper mouse
wheel support.

[originally from svn r1097]
2001-05-06 14:20:41 +00:00
Simon Tatham
50f50a009b Reduce out-of-focus timer interval to 2 seconds so we still have
some control over keepalives when not in the foreground.

[originally from svn r1093]
2001-04-28 18:23:58 +00:00
Simon Tatham
0086b20625 Add Jordan Russell's patch for a sunken-edge border like a DOS box.
Configurable, of course, because I for one like the border as thin
as possible.

[originally from svn r1092]
2001-04-28 18:02:19 +00:00
Simon Tatham
1c998f6482 Only update the system caret when we have the focus. This was
apparently causing the weird caret behaviour in Change Settings,
because that routine was still being called...

[originally from svn r1083]
2001-04-28 11:27:04 +00:00
Simon Tatham
5279229ad3 Include <mmsystem.h> and winmm.lib for PlaySound.
[originally from svn r1057]
2001-04-16 21:33:18 +00:00
Simon Tatham
abf6514f71 Put back Robert de Bath's second level of bell overload tracking. It
had a useful purpose: when primary overload handling is disabled, it
prevents MessageBeep calls overloading the program, because they
don't cancel each other like async PlaySounds do.

[originally from svn r1056]
2001-04-16 21:29:12 +00:00
Simon Tatham
a02e13ae3e Quote the hostname in the `unable to connect' box so that if the
user starts up N PuTTYs at once and one reports failure, they know
which one.

[originally from svn r1051]
2001-04-16 16:19:30 +00:00
Simon Tatham
19d76c9306 Add two more ghastly function key options. WE HAVE TOO MANY!
[originally from svn r1050]
2001-04-16 16:16:52 +00:00
Simon Tatham
639ab4c068 Roman Pompejus's patch to allow you to automatically select
overwrite or append in logging mode.

[originally from svn r1049]
2001-04-16 15:58:43 +00:00
Simon Tatham
953b7775b3 Small keyboard patches from Robert de Bath. Should fix the dead-key
problem and also some unspecified woe with the ever-problematic
Compose key.

[originally from svn r1046]
2001-04-16 12:08:37 +00:00
Simon Tatham
a9c6997326 Bell can now play an arbitrary sound file.
[originally from svn r1041]
2001-04-14 11:37:47 +00:00
Simon Tatham
a8116a8dae New improved bell handling. Choice between visual and audible bell;
configurable bell overload handling. Thanks to Robert de Bath for
galvanising me into doing this, but I've had to rip most of his code
out and redo it myself...

[originally from svn r1039]
2001-04-13 10:52:36 +00:00
Simon Tatham
d2369721bb Keyboard handling patch from RDB: the Windows Application key is now
always Compose (we have no better use for it), and Ctrl-Alt can be
made to act like AltGr (but it's never Compose even when AltGr is).

[originally from svn r1033]
2001-04-09 12:52:43 +00:00
Simon Tatham
9d9ca5300a Don't assume OEM fonts have a space in position 255. We know there's
one in position 32 so let's use that! (Thanks RDB.)

[originally from svn r1032]
2001-04-09 12:46:45 +00:00
Simon Tatham
313b332a38 Finally fixed the point/pixel confusion in font handling. Thanks to
Roman Surma for pointing me at the relevant bits of documentation. All
font sizes should now be measured in points, and everything should be
consistent, and (with any luck) old Registry settings should adapt
gracefully too.

[originally from svn r992]
2001-03-12 12:24:07 +00:00
Simon Tatham
5f0d3bd19d Fix problem with pointer hiding
[originally from svn r964]
2001-03-02 09:25:14 +00:00
Simon Tatham
4d830f7587 Jacob's patch to improve Close On Exit behaviour
[originally from svn r927]
2001-02-05 13:08:18 +00:00
Simon Tatham
d3185a40a0 Prevent "Connection closed" message box from appearing after the
"Network error" box. The latter on its own is enough.

[originally from svn r911]
2001-01-29 14:31:57 +00:00
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
bde2f9ac8a Roman Pompejus's fix for the TAB-not-working-in-Event-Log bug
[originally from svn r891]
2001-01-23 17:37:52 +00:00
Simon Tatham
beeaa85fc5 Ability to hide the mouse pointer on a keypress a la Word
[originally from svn r883]
2001-01-22 16:38:43 +00:00
Simon Tatham
72cdcc611a Keepalives are now in seconds not minutes
[originally from svn r874]
2001-01-19 09:01:50 +00:00
Simon Tatham
d199d419fa Tidy up that latest checkin. PS_DOTTED is spelled PS_DOT and in any
case doesn't really cut it; we have to SetPixel every other one
manually because although PS_ALTERNATE exists it only works under
NT. Meanwhile, IDC_CURSTATIC was already used, for the cursor
_keys_. Duh.

[originally from svn r871]
2001-01-17 17:20:28 +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
e4532bb582 Enable explicit changing of the window title after session start
[originally from svn r852]
2001-01-08 16:28:21 +00:00
Simon Tatham
170a75b520 Fix for spurious Space getting sent when alt_space and alt_only are
both set and you bring up the Sysmenu with an alt_space and dispatch
it with an alt_only. (The SYSKEYDOWN for alt_only is never received,
but we get the SYSKEYUP which PostMessages the space since it
expects to be triggering the _creation_ of a sysmenu. Solution: set
alt_state to 0 when an alt_space triggers a sysmenu, so that the
final SYSKEYUP will be seen as spurious, which it is. Perhaps we
could do this better.)

[originally from svn r848]
2001-01-07 19:15:59 +00:00
Simon Tatham
0026e5ada7 Kestutis Kupciunas's Lithuanian-friendliness patch to TranslateKey
[originally from svn r847]
2001-01-07 18:28:01 +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
947c03869e Squelch some spurious resize events.
[originally from svn r845]
2001-01-07 17:18:24 +00:00
Simon Tatham
1f22416c3c Oops - that do-we-need-to-resize-window check failed to spot font changes
[originally from svn r843]
2001-01-07 16:38:35 +00:00
Simon Tatham
175d849778 Fix the System Caret so it really is invisible, and the right size
too.

[originally from svn r842]
2001-01-07 16:35:44 +00:00
Simon Tatham
f2b13650c8 `Change Settings' now behaves sensibly w.r.t. window size.
[originally from svn r841]
2001-01-07 16:27:48 +00:00
Simon Tatham
5a908bb1d7 Apply `getservbyname' to the Port Number field in case it's
non-numeric. Patch due to Christian Biesinger.

[originally from svn r839]
2001-01-07 15:12:20 +00:00
Simon Tatham
a24c502f4f AltGr should now work again even when Compose key disabled
[originally from svn r838]
2001-01-07 14:30:00 +00:00
Simon Tatham
d5240d4157 Make memory management uniform: _everything_ now goes through the
smalloc() macros and thence to the safemalloc() functions in misc.c.
This should allow me to plug in a debugging allocator and track
memory leaks and segfaults and things.

[originally from svn r818]
2000-12-12 10:33:13 +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
f7aec0aa10 Patch from Robert de Bath: increase timer resolution.
[originally from svn r807]
2000-11-21 19:00:32 +00:00
Simon Tatham
8c0c31a0e9 Software invocation of the System menu now pops up the actual menu, rather
than just putting the window into the state where Down will do so

[originally from svn r793]
2000-11-07 17:50:59 +00:00
Simon Tatham
a739876719 Fix side-effect of Always On Top patch: any reconfiguring in mid-session
was zapping the window to the top left corner of the screen

[originally from svn r780]
2000-10-30 10:39:10 +00:00
Simon Tatham
21299d2c39 Reset compose state to zero when PuTTY window gains focus
[originally from svn r779]
2000-10-30 10:16:32 +00:00
Simon Tatham
091acb4e06 Add support for Always On Top. Patch due to Janes "Ender" Brown.
[originally from svn r773]
2000-10-27 09:46:04 +00:00
Simon Tatham
fc63ad0046 Gaaah, I might have known. Split combined app cursor / app keypad
disablement option into two options so the app cursor keys and app
keypad can be controlled separately. The Pedantic Software Award in
this case goes to the Midnight Commander for its egregious failure
to just use the terminal in Perfectly Normal mode.

[originally from svn r766]
2000-10-25 14:20:47 +00:00
Simon Tatham
fc9b38ed01 Add configurable option to disable application keypad/cursor keys totally
[originally from svn r760]
2000-10-24 13:49:23 +00:00
Simon Tatham
779069ccd3 Add a couple of ellipses in system menu
[originally from svn r759]
2000-10-24 13:40:19 +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
36156d858c Improved entropy gathering.
[originally from svn r750]
2000-10-23 15:20:05 +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
77c8e3c17c Chinese support patch from zmx@cdpa.nsysu.edu.tw
[originally from svn r740]
2000-10-20 18:36:15 +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
31374678c0 Trim trailing whitespace off saved session names on the command line
[originally from svn r728]
2000-10-20 13:23:24 +00:00
Simon Tatham
8e7a270f7f Miscellaneous cleanups and reorgs in preparation for building
PuTTYgen. In particular, moved self-managing controls stuff out of
windlg.c into the new and reusable winctrls.c.

[originally from svn r714]
2000-10-18 15:36:32 +00:00
Simon Tatham
e67f143e61 Implement a much more visually appealing, but much more internally
grotty, hack to get around Explorer maximising the config box.

[originally from svn r707]
2000-10-12 12:56:33 +00:00
Simon Tatham
fa731eaf82 Add UNE 10053 to the cleartext ones
[originally from svn r703]
2000-10-11 19:56:22 +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
f7d6cd2059 Alt-Enter was fouling up on Win95; added explicit handler
[originally from svn r687]
2000-10-07 08:10:32 +00:00
Simon Tatham
b584238186 Create settings.c and move the load/save session code out of
windlg.c into it. Allows plink and pscp to no longer link with
windlg.c, meaning they lose some of the sillier stub functions and
also can provide a console-based form of verify_ssh_host_key().

[originally from svn r683]
2000-10-06 13:21:36 +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
7fc8ef792f Add ability to configure the initial window title
[originally from svn r661]
2000-10-02 12:24:58 +00:00
Simon Tatham
138b090f3e Oops - remove ugly debugging test pattern in cursor
[originally from svn r652]
2000-09-29 12:04:27 +00:00
Simon Tatham
a3df90a2e3 Try to improve the caret usage
[originally from svn r651]
2000-09-29 10:32:07 +00:00
Simon Tatham
aad0a52dfb Rationalised host key storage. Also started code reorg: persistent-state
routines have been moved out into a replaceable module winstore.c.

[originally from svn r639]
2000-09-27 15:21:04 +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
f80f9d4299 Implement "putty -cleanup"
[originally from svn r626]
2000-09-25 15:47:57 +00:00
Simon Tatham
0fb760b16d Robert de Bath has a better alternative to revs 1.47/48 [r582,r583];
back out those changes and commit the simpler version

[originally from svn r625]
[r582 == 147fca411c]
[r583 == 22f91a3604]
2000-09-25 11:11:46 +00:00
Simon Tatham
117fd9affc Enable PuTTY command line to deal with "user@host" format
[originally from svn r620]
2000-09-25 09:27:26 +00:00
Simon Tatham
6522c357fc Avoid rapid-fire resize events during NT opaque drags
[originally from svn r617]
2000-09-22 14:10:58 +00:00
Simon Tatham
196d42f89c Everyone's favourite trivial change: Shift-Ins now pastes
[originally from svn r616]
2000-09-22 13:23:35 +00:00
Simon Tatham
e70425dda6 Enable better build-time flexibility over which WinSock to include
[originally from svn r615]
2000-09-22 13:16:49 +00:00
Simon Tatham
c0ac8ab9b4 Bug fix: line discipline selection is not enabled until after ssh
authentication phase to stop user/password prompts behaving oddly

[originally from svn r614]
2000-09-22 13:10:19 +00:00
Simon Tatham
e5ef37f3f5 Prevent network errors from summarily closing the window when CoE is off
[originally from svn r613]
2000-09-22 11:04:57 +00:00
Simon Tatham
985207d4a9 Num Lock shouldn't send anything in non-app-keypad mode
[originally from svn r612]
2000-09-22 09:49:34 +00:00
Simon Tatham
60b9871947 Work around the missing underline in some fonts
[originally from svn r609]
2000-09-22 09:30:11 +00:00
Simon Tatham
180b62b6b0 Miscellaneous ssh2 fixes. plink is now relatively sane
[originally from svn r608]
2000-09-21 14:34:32 +00:00
Simon Tatham
b18de5b924 Ensure backend netevent handlers are never reentered -
fixes many strange problems with the ssh.c coroutines

[originally from svn r603]
2000-09-20 11:40:23 +00:00
Simon Tatham
22f91a3604 Oops - remove diagnostics :-)
[originally from svn r583]
2000-09-11 09:36:12 +00:00
Simon Tatham
147fca411c Saner handling of WM_SYSCOMMAND:SC_KEYMENU to avoid problems on an
isolated press of the Alt key

[originally from svn r582]
2000-09-11 09:23:52 +00:00
Simon Tatham
8394a48620 Added a fourth application: plink, a command line connection utility
[originally from svn r575]
2000-09-08 14:45:20 +00:00
Simon Tatham
5ca4d2d1c5 telnet:// URLs don't always have the //. (Incorrect but common.)
[originally from svn r518]
2000-08-05 08:58:07 +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
1657255cd7 Oops; telnet:// URLs can have a trailing slash
[originally from svn r515]
2000-07-21 10:58:33 +00:00
Simon Tatham
777e064ed5 Enable handling of telnet:// URLs on command line
[originally from svn r514]
2000-07-21 10:53:24 +00:00
Simon Tatham
9922072a8d Peter Schellenbach's patch: re-implement the PuTTY cryptographic
functions as calls to the MS Crypto API. Not integrated into the
Makefile yet, but should eventually allow building of an SSH-enabled
PuTTY which contains no native crypto code, so it can be used
everywhere (and anyone who can get the MS encryption pack can still
use the SSH parts).

[originally from svn r425]
2000-03-24 09:45:49 +00:00
Simon Tatham
455cc2d387 Spelling fix to RDB's comments: fascist is spelled thus :-)
[originally from svn r422]
2000-03-17 10:40:36 +00:00
Simon Tatham
ee51d18b48 RDB's patch:
- use WM_TIMER for various things (blinking cursor; updates while
   moving/sizing; coping with overloading influx of netevents)
 - clip text output to avoid underlines outside character cell
 - even more careful font selection (we can now do OEMANSI by
   default)
 - a few extra keyboard mappings from the VTxxx terminals

[originally from svn r418]
2000-03-17 10:34:41 +00:00
Simon Tatham
96dbf9c6e6 First stab at the ability to compile puttytel.exe, an SSH-free
variant which is patent-safe in the US and legal in France and
Russia. This is a horrible hack in some ways: it's shown up serious
deficiencies in the module boundaries. Needs further work, probably
once the SSH implementations are recombined.

[originally from svn r410]
2000-03-15 15:08:48 +00:00
Simon Tatham
7aa84c296f Let's spell '\t' as VK_TAB in that last patch, in fact, just in case
[originally from svn r409]
2000-03-13 15:04:07 +00:00
Simon Tatham
41be6d6f4d Shift-Tab now sends ESC [ Z
[originally from svn r408]
2000-03-13 14:45:32 +00:00
Simon Tatham
dbc12bdd58 Robert de Bath's patch: be much more careful about font heights and
widths, including underline mode and OEM/ANSI size mismatch.

[originally from svn r405]
2000-03-11 14:15:24 +00:00
Simon Tatham
6ce983dc28 Robert de Bath's patch: a few more character translations for OEM
line drawing mode

[originally from svn r404]
2000-03-11 14:11:02 +00:00
Simon Tatham
3ee28098bc Robert de Bath's patch: integrate line disciplines into Telnet and have them
interoperate sensibly with ECHO negotiations

[originally from svn r401]
2000-03-11 14:06:11 +00:00
Simon Tatham
11821d4d27 Fix some picky compiler warnings kindly provided by Borland C++ 5.5
[originally from svn r396]
2000-03-08 10:21:13 +00:00
Simon Tatham
812ea3f61c Disable warn-on-close for inactive windows
[originally from svn r357]
1999-12-21 10:19:05 +00:00
Chris Emerson
ba279cafd0 Added keyboard shortcuts on the system menu.
I haven't tried to compile it, but the changes are trivial.

[originally from svn r345]
1999-12-06 14:57:49 +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
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
8446532e4a Cleanups to remove warnings for GNU/mingw32 compilation
[originally from svn r325]
1999-11-22 10:07:24 +00:00
Simon Tatham
55b8c21f0f Fix potential segfault on malloc failure
[originally from svn r323]
1999-11-17 14:22:12 +00:00