1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-07-06 22:12:47 -05:00
Commit Graph

165 Commits

Author SHA1 Message Date
0720fc12ad terminal.c should call the frontend beep() routine even with
mode==BELL_VISUAL, otherwise taskbar flashing won't happen on visual
bells. It's up to the frontend routine to spot BELL_VISUAL and avoid
making any noise.

[originally from svn r2155]
2002-10-28 21:58:07 +00:00
963742fd4e Fix Alt+numberpad in pterm. For a start, there was a bug whereby if
a pterm came up while Alt was down, then releasing it would cause a
^@ to be generated. Also, though, I've decided that Alt plus a
single numberpad key should not generate a low-numbered control
code, because that's too easy to do by mistake and the codes are too
powerful. Anyone who really _wants_ to create a ^C or ^D from the
numberpad can do Alt-03 or Alt-04 easily enough; two-digit codes and
more such as Alt-65 are unaffected.

[originally from svn r2153]
2002-10-28 17:34:45 +00:00
9a5939e9cf First bug discovered as a result of global-removal: pasting into
pterm caused a crash because I had the wrong prototype for the
selection_received event handler. Should be fixed.

[originally from svn r2150]
2002-10-28 09:38:28 +00:00
4756c15fc9 Yet more global-removal. The static variables in logging.c are now
absent, and also (I think) all the frontend request functions (such
as request_resize) take a context pointer, so that multiple windows
can be handled sensibly. I wouldn't swear to this, but I _think_
that only leaves the Unicode stuff as the last stubborn holdout.

[originally from svn r2147]
2002-10-26 12:58:13 +00:00
948f95d5e8 Reorganised the Unicode layer somewhat: moved luni_send and
lpage_send out into the line discipline, making them _clients_ of
the Unicode layer rather than part of it. This means they can access
ldisc->term, which in turn means I've been able to remove the
temporary global variable `term'. We're slowly getting there.

[originally from svn r2143]
2002-10-26 11:08:59 +00:00
24530b945e Port forwarding module now passes backend handles around properly.
As a result I've now been able to turn the global variables `back'
and `backhandle' into module-level statics in the individual front
ends. Now _that's_ progress!

[originally from svn r2142]
2002-10-26 10:33:59 +00:00
0b2523eeda Line discipline module now uses dynamically allocated data. Also
fixed one or two other minor problems.

[originally from svn r2141]
2002-10-26 10:16:19 +00:00
ba0468b983 Oops; remembering to call term_provide_resize_fn in the Unix front
end would probably help. Thanks Colin.

[originally from svn r2140]
2002-10-25 22:00:22 +00:00
528a826574 Fix the nasty flashing-light-grey-on-resize problem, after MCV
helpfully alerted me to the existence of gdk_window_set_background().

[originally from svn r2129]
2002-10-25 11:58:59 +00:00
6e2a0c079b pty backend now supports the changed function interface, so pterm
now compiles and runs again after the major destabilisation.
Unfortunately it wasn't feasible to actually encapsulate all of the
pty backend's data, since the utmp helper and the need to fork and
drop privileges before doing anything else at all rather confuses
matters. So the data handle passed around to the pty backend is a
null pointer, and the pty backend is just as global-ridden as it
always has been. Shame, but such is life.

[originally from svn r2128]
2002-10-25 11:50:51 +00:00
bdb47167d1 Implement handling of all Close On Exit modes. Default is to close
only on clean exit, which is a departure from most xterm-alikes but
Ian reckons people will love me for it. If this turns out to be
wrong, we can always change the default for Unix.

[originally from svn r2120]
2002-10-23 14:21:12 +00:00
0a80c983e2 Major destabilisation, phase 1. In this phase I've moved (I think)
all the global and function-static variables out of terminal.c into
a dynamically allocated data structure. Note that this does not yet
confer the ability to run more than one of them in the same process,
because other things (the line discipline, the back end) are still
global, and also in particular the address of the dynamically
allocated terminal-data structure is held in a global variable
`term'. But what I've got here represents a reasonable stopping
point at which to check things in. In _theory_ this should all still
work happily, on both Unix and Windows. In practice, who knows?

[originally from svn r2115]
2002-10-22 16:11:33 +00:00
48314f7dc0 Make -ut work the right way round! :-)
[originally from svn r2114]
2002-10-22 13:27:58 +00:00
07878d8b7c Implement Richard's really clever idea about bell overload mode:
it's automatically deactivated by any keypress, so that command-line
beeps from (e.g.) filename completion don't suddenly stop occurring,
but it still provides a rapid response to an accidental spewing of a
binary to your terminal.

[originally from svn r2107]
2002-10-20 13:23:30 +00:00
de8789b8f2 ScrollOnKey wasn't working because I failed to set seen_key_event in
pterm.c.

[originally from svn r2106]
2002-10-20 12:44:29 +00:00
a219808b15 Reject unrecognised command-line options; thanks rjk.
[originally from svn r2102]
2002-10-18 15:26:54 +00:00
dc7afc9ca7 Oops - that fix wasn't _quite_ right, since it killed all
non-function keys completely :-/

[originally from svn r2096]
2002-10-17 16:58:24 +00:00
7d7b523977 Make the shadow bold offset configurable, after discovering that
7x13 goes the other way to all other X fonts I've ever seen. (Arrgh.)

[originally from svn r2095]
2002-10-17 16:51:01 +00:00
34bdd30857 This should fix the bug causing Alt-Shift to generate Escape.
[originally from svn r2093]
2002-10-17 16:45:17 +00:00
3c6a770e9f Add the -xrm command-line option, to allow specification of an
arbitrary X resource which doesn't have a dedicated command-line
option.

[originally from svn r2089]
2002-10-16 22:54:58 +00:00
ac3d4e70ad A few more command-line options.
[originally from svn r2086]
2002-10-16 16:00:38 +00:00
1f2ee65ae9 Implement reading of X resources, and -name to change the name under
which to look them up.

[originally from svn r2084]
2002-10-16 14:32:06 +00:00
1aed45b4e1 Fix utmp and pty handling so that GTK never complains about running
set[ug]id. All privs-requiring pty operations are done at the very
start of the run, then privs are dropped before initialising GTK.
Utmp is handled by forking a still-privileged subprocess at this
point, and later asking it (through a pipe) to stamp utmp. The
subprocess cleans up utmp on exit, which has the additional
advantage that if the main pterm process suffers some sort of
unexpected termination (up to and including SIGKILL) the subprocess
can still mop up utmp.

[originally from svn r2082]
2002-10-16 12:17:51 +00:00
5bc8f34f58 Bug `shift-backspace': whichever of ^H and ^? is configured for
Backspace, Shift-Backspace should do the _other_ one. Thanks to
Justin Bradford.

[originally from svn r2079]
2002-10-16 09:40:36 +00:00
4f3806f735 Support bold-as-font, by means of a separate bold font (if one was
supplied) or shadow bolding (if not). As usual, can't yet be turned
on without a recompile.

[originally from svn r2077]
2002-10-15 18:42:48 +00:00
d3983ca06b Support underline and vertical-line cursors as well as block.
[originally from svn r2075]
2002-10-15 18:18:25 +00:00
58ee7d86a6 If we can't load the specified font, give an error message rather
than segfaulting.

[originally from svn r2074]
2002-10-15 17:41:22 +00:00
80063aeef7 Scrollbar can now be configured to go on the left (although the
current configuration mechanism doesn't support it).

[originally from svn r2072]
2002-10-15 17:24:13 +00:00
3584334835 Support ALT + numeric keypad for typing in strange character codes.
[originally from svn r2071]
2002-10-15 17:18:24 +00:00
0fdab304de Support scrolling with the mouse wheel (X servers apparently usually
send a button 4 press for an upward wheel movement and a button 5
press for a downward one). Untested since my own trackball's button
4 does nothing obvious. Someone with a mouse wheel should give this
a workout.

[originally from svn r2069]
2002-10-15 16:50:42 +00:00
6f9ce1b724 Support for blinking text and blinking cursor. Won't actually be
accessible until there's a way to configure it on, but it worked in
tests.

[originally from svn r2067]
2002-10-15 16:38:10 +00:00
69f78385ab Use the appalling gnome-terminal hack for server-controlled resizes
rather than the gtk_window_set_policy approach; the GNOME people say
that the former is the Right Thing in spite of the latter looking
obviously plausible.

[originally from svn r2066]
2002-10-15 16:24:42 +00:00
851a376359 Remove some rogue diagnostics.
[originally from svn r2065]
2002-10-15 15:44:23 +00:00
e18cf6b714 Don't forget to initialise the pixel size parameters of the window
as passed to the pty...

[originally from svn r2064]
2002-10-15 15:16:21 +00:00
8782e6a3b0 Richard's patch to make the scrollbar configurably absent. (Still
want a new option to configure it to be on the LHS though. And some
lunatic is bound to ask for an xterm-style scrollbar too... :-)

[originally from svn r2062]
2002-10-15 14:55:19 +00:00
c15a6ada0c Support for all the server-side window configuration requests,
including server-controlled resizing. Irritatingly I've had to use a
deprecated option to gtk_window_set_policy() to make this work,
resulting in me raising GNOME bug #95818 to ask for it to be un-
deprecated again...

[originally from svn r2061]
2002-10-15 14:31:06 +00:00
0c011dcbe0 Introduce the ability to control whether the shell run in pterm is a
login shell or not. Also moved these new pieces of configuration
into the Config structure, though they won't stay there forever
since they will need to be moved out into platform-dependent config.

[originally from svn r2060]
2002-10-15 13:07:18 +00:00
0813c25bf6 Finish up utmp processing: add the -ut- command-line option to
suppress stamping it at all. (I suppose this ought to be part of the
cfg structure really.)

[originally from svn r2059]
2002-10-15 12:42:58 +00:00
6118021749 Support for utmp, wtmp and lastlog. Probably not terribly portable
as yet, but seems to work plausibly on Linux.

[originally from svn r2058]
2002-10-15 12:29:52 +00:00
b8625a2bf5 Trim wide text properly at the RH edge of the screen.
[originally from svn r2055]
2002-10-15 09:30:16 +00:00
74f8f8e8ac Support for line attributes: ESC #3, #4 and #6 for double-width and
double-height text.

[originally from svn r2054]
2002-10-15 00:22:48 +00:00
cf74237900 Don't cause the mouse pointer to reappear just because it's changed
shape.

[originally from svn r2053]
2002-10-14 23:39:07 +00:00
8bc305cafe Only engage a GTK idle function when absolutely necessary, otherwise
the whole app spins on it and takes up CPU all the time.

[originally from svn r2052]
2002-10-14 23:32:00 +00:00
7dff77fccf Set up the palette _before_ trying to paint the window black.
[originally from svn r2051]
2002-10-14 22:14:54 +00:00
1d65d8ae5f Add the -log option, which activates full session logging. Should be
handy next time I need to debug any weird terminal problems...

[originally from svn r2050]
2002-10-14 10:33:34 +00:00
6b2f5c95ab Support server requests for colour palette changes.
[originally from svn r2048]
2002-10-14 10:21:35 +00:00
a8ba9f422b Don't forget to call term_paste() when we get the chance, or big
pastes won't go through. (Not sure whether I should remove this
weird behaviour completely for pterm. It's a bit bizarre.)

[originally from svn r2047]
2002-10-14 10:14:12 +00:00
209fe88b79 Support NetHack keypad mode. :-)
[originally from svn r2046]
2002-10-14 10:06:07 +00:00
e0c7339695 Support for hiding the mouse pointer on keypresses. Currently
activated by `-hide' on the command line.

[originally from svn r2045]
2002-10-14 09:58:27 +00:00
76cda50683 xterm-class programs should exit when their primary child process
dies, rather than waiting around until the last open handle on the
pty closes.

[originally from svn r2044]
2002-10-14 09:18:34 +00:00