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

69 Commits

Author SHA1 Message Date
Ben Harris
65b8dd1501 Remove a stray prototype for mac_set_attr_mask().
[originally from svn r2296]
2002-12-08 22:15:10 +00:00
Ben Harris
7522f5302d Slightly cheesy size-tip implementation. This is suboptimal in two ways:
* It paints over the top-left corner of the terminal window.  A little
   floating window would be rather nicer and not much harder to do.
 * It uses the low-memory global, DragHook, which is unavailable in Carbon
   and broken in some versions of Mac OS 8 (8.5?).  I suspect this is
   unavoidable, though.

[originally from svn r2287]
2002-12-08 01:17:31 +00:00
Ben Harris
f2bfdefe45 When scrolling part of the window, scroll the update region as well so that
parts that haven't been painted yet still get an update event in their new
location.  This code seems far too complicated, and I suspect there's a
better way.  Still, scrolling continuously with the window partially
off-screen now works.

[originally from svn r2284]
2002-12-07 15:21:56 +00:00
Ben Harris
12081087e7 Improve support for non-colour displays by adding a mask of attributes to
ignore when breaking text into runs for display, and implement setting this
on Mac (other ports just use 0xffffffff).

We don't use DeviceLoop for this any more because Apple Technical Q&A
QA1024 says we shouldn't.  Unlike their example, we don't depend on the
Display Manager's being present either.

[originally from svn r2264]
2002-11-29 00:32:03 +00:00
Ben Harris
26f8c13f7b Don't call SetFractEnable every time we draw some text, since
SetFractEnable unconditionally flushes the Font Manager's width cache,
and the default is fine for us anyway.  This more or less doubles
redraw speed, which is nice, but still not really fast enough.

[originally from svn r2263]
2002-11-28 21:10:55 +00:00
Ben Harris
4b3ed26016 Follow the recommendations in Tech Note TB575 for clipping off the space
for the horizontal scroll bar when drawing the grow box.

[originally from svn r2262]
2002-11-28 21:02:07 +00:00
Ben Harris
81b29767a4 Use StdText() rather than DrawText, so that (later) we can support scaling of
text to get double-width etc.

Also set the background when scrolling in Original Quickdraw.

[originally from svn r2261]
2002-11-28 00:25:09 +00:00
Ben Harris
a8e0271b8d Substantial overhaul of colour handling in do_text(). Highlights include:
* No more mucking about with transfer modes.  We always set up the foreground
  and background sensibly, EraseRect the whole lot and use srcOr.  Apple
  Tech Note QD505 suggests that this should be faster than srcCopy.
* Always use the Palette Manager if we've got Color QuickDraw, even in 1bpp
  modes.
* Apply the cursor colours _after_ all the other stuff, rather than trying to
  get them through everything else intact.

Unfortunately, this doesn't make much difference to the speed.

[originally from svn r2259]
2002-11-26 01:32:51 +00:00
Ben Harris
a1b5ba2270 Fix scrolling on systems without Color QuickDraw. It seems that the current
background colour and pen mode have some silly effects on ScrollRect, so
set them back to their defaults before calling it.

[originally from svn r2254]
2002-11-24 00:38:44 +00:00
Ben Harris
d63d02b743 Don't try to initialise the palette unless we have Color QuickDraw. This gets
PuTTY running on my Mac SE again (albeit very slowly and with scroll
optimisation broken for some reason).

[originally from svn r2253]
2002-11-23 22:36:56 +00:00
Ben Harris
d60ea36673 Add a Config * argument to ldisc_create(), and use it in place of the global
cfg throughout ldisc.c.  Not tested other than on Mac, but all other ports
just pass &cfg as this argument for now.

[originally from svn r2250]
2002-11-23 20:02:38 +00:00
Ben Harris
8280e645e4 Add a "Config *" argument to term_init(), and use that instead of the global
cfg throughout the terminal emulator.  Not tested in PuTTY and pterm, but they
just pass in &cfg.

[originally from svn r2248]
2002-11-23 19:01:01 +00:00
Ben Harris
721399ac82 On a keypress, hide the mouse cursor, send the key to the line discipline
(rather than straight to the backend), and then prod the terminal.  I think
this is closer to the correct set of things to do.

[originally from svn r2245]
2002-11-23 14:22:11 +00:00
Ben Harris
1eef3b7e84 Remove a debugging printf.
[originally from svn r2243]
2002-11-23 13:16:36 +00:00
Ben Harris
55c618d344 Fiddle with mac_initpalette() so that the cursor works in 2bpp modes as well.
[originally from svn r2233]
2002-11-20 00:33:44 +00:00
Ben Harris
55fc07c583 Remove has_focus from Session and use the one in Terminal. Active vs passive
cursor now behaves correctly.

[originally from svn r2232]
2002-11-20 00:11:05 +00:00
Ben Harris
d50ad9ddb9 Remove CURSOR_FG_BOLD and CURSOR_BG_BOLD, and hence bring reality in line
with palette_reset()'s expectations.

[originally from svn r2231]
2002-11-19 23:59:27 +00:00
Ben Harris
93a461028b Pass co-ordinates to term_paint() in characters rather than pixels. Partial
redraws now work rather better.

[originally from svn r2230]
2002-11-19 22:05:48 +00:00
Ben Harris
c4eebb49a9 Tentative merge of ben-mac-port (only dead for three years!) into the trunk.
This doesn't include any mkfiles.pl glue, and is missing one or two other
fixes.  The terminal emulator is kind of working, though, as, I believe, is
the store module.  Everything else is yet to be done.

[originally from svn r2226]
2002-11-19 02:13:46 +00:00