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

174 Коммитов

Автор SHA1 Сообщение Дата
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