Fix HAVE_UT_UT_TV for cases where the static initializer might not work
[vte.git] / ChangeLog
1 2002-09-24 nalin
2         * gnome-pty-helper/acinclude.m4: Fix HAVE_UT_UT_TV for cases where
3         the static initializer might not work right (#93774, patch from
4         Kalpesh Shah).
5
6 2002-09-24 nalin
7         * README, gnome-pty-helper/README:  Doc fixups (mention gnome-terminal
8         instead of profterm, note the proper permissions for gnome-pty-helper,
9         #84505).
10
11 2002-09-20 nalin
12         * src/ring.c: Fix a ring-buffer manipulation bug (Red Hat #74290) which
13         might cause a new item to be inserted in the wrong location.
14
15 2002-09-19 nalin
16         * src/interpret.c: Munge input data the way the terminal does so that
17         conversion failures don't wedge us.
18
19 2002-09-19 Brian Cameron <Brian.Cameron@sun.com>
20         * src/vte.c: Backed out scrolldelay patches from 09-17 and 09-18 at
21         Nalin's request.  Left in the patch which allows programs which 
22         update the screen non-linearly like lynx to work properly.
23
24 2002-09-18 Brian Cameron <Brian.Cameron@sun.com>
25         * src/vte.c: Corrected a problem with yesterday's patch.  I am now
26         properly calling g_source_remove on the scroll_delay timeout
27         function.  This prevents VTE from core dumping if you start up
28         more than one VTE gnome-terminal and exit from one of them.  Also
29         made the vte_scroll_timeout function a little cleaner by using
30         the VTE_IS_TERMINAL macro.
31
32 2002-09-17 Brian Cameron <Brian.Cameron@sun.com>
33         * src/vte.c: Fixed bug with my 09/11 speedup fix which caused programs
34         that update the screen non-linearly like lynx to update incorrectly.
35         Also included a speed improvement which delays the scroll-down for
36         70ms.  Too fast to be noticeable to the user, but it speeds up VTE
37         greatly.
38
39 2002-09-13 nalin
40         * src/pty.c: Fix typo which broke builds on systems where MSG_NOSIGNAL
41         is defined.
42
43 2002-09-12 Brian Cameron <Brian.Cameron@sun.com>
44         * configure.in : Added -lsocket to LIBS if socket is in libsocket,
45         so VTE will compile on Solaris.
46
47 2002-09-12  jacob berkman  <jacob@ximian.com>
48
49         * src/pty.c: only use MSG_NOSIGNAL if it's defined
50
51         * gnome-pty-helper/gnome-pty-helper.c (struct pty_info): remove
52         master_fd and slave_fd fields
53         (shutdown_pty): don't close master/slave fd's here...
54         (pty_add): don't take master/slave fd args
55         (open_ptys): ...close master/slave fd's right after passing them
56
57         this fixes a hang after closing a window on os x, not sure why...
58
59         * gnome-pty-helper/Makefile.am (install-exec-hook): remove
60         trailing / after $DESTDIR
61
62         * configure.in: AC_CHECK_FUNC() doesn't do AC_DEFINE(HAVE_FOO), so
63         do that for socket() and socketpair() if they are found
64
65 2002-09-12 nalin
66         * src/vte.c(vte_invalidate_cursor_once): Remove the invalidate_cells
67         parameter, because the function is a big no-op if FALSE, in which case
68         we should just not call it instead. (vte_terminal_process_incoming):
69         refresh the right number of rows after processing a block of data.
70
71 2002-09-12 Brian Cameron <Brian.Cameron@sun.com>
72         * src/vte.c Fixed minor error with my previous patch.  This just makes
73         a warning go away.
74   
75 2002-09-11 nalin
76         * src/pty.c: Reorder definitions to avoid implicit declaration warnings.
77         * configure.in: Check for socketpair().  Check for socket() in libc
78         before poking around in libsocket.
79         * gnome-pty-helper/configure.in: Check for openpty() in libutil as well,
80         and do so before we check for other functions.
81
82 2002-09-11 nalin
83         * configure.in, gnome-pty-helper/cofnigure.in: Test for sendmsg() with
84         AC_CHECK_FUNCS instead of AC_TRY_COMPILE.
85         * acconfig.h: Removed.
86         * src/pty.c: Formatting.
87
88 2002-09-11 Brian Cameron <Brian.Cameron@sun.com>
89         * configure.in: Added check for socket library and SendMsg
90         check. 
91         * acconfig.h: Added this file with a HAVE_SENDMSG definition.
92         * gnome-pty-helper/configure.in: Added checks needed for the
93         source code, including the SendMsg check.
94         * src/pty.c: Corrected _vte_pty_pipe_open so it works on
95         Solaris.
96         *src/vte.c: Made some speed improvements so vte_invalidate_cells
97         is not called for every character in the while loop in 
98         vte_process_incoming, but only once when the while loop is done.
99
100 2002-09-11 nalin
101         * gnome-pty-helper: Update from libzvt CVS.
102         * python/Makefile.am: Fix some automake breakage.
103
104 2002-09-11 nalin
105         * python/Makefile.am: Fix my broken merge of Jacob's patch to make
106         inability to build python modules non-fatal.
107
108 2002-09-11 nalin
109         * src/vte.c: Skip lookups for padding information if we're pretty sure
110         we're using a monospaced font.
111
112 2002-09-10 nalin
113         * src/vte.c: Fix from Brian Cameron for uninitialized GError in
114         vte_wc_from_unichar().
115         * src/interpret.c, src/iso2022.c, src/pty.c, src/ring.h, src/table.c,
116         src/table.h, src/trie.c, src/vte.c, src/vteaccess.c: Signed/unsigned
117         int/size_t/gsize and pointer typecast warning fixes from Brian Cameron.
118         * src/vte.c: Avoid invalidating the cursor in the cursor blink
119         timeout unless we have focus.
120
121 2002-09-10  Jacob Berkman  <jacob@ximian.com>
122         * configure.in (ALL_LINGUAS: remove es until the file really gets
123         added.  also it wasn't added alphabetically
124
125 2002-09-10 Pablo Gonzalo del Campo <pablodc@bigfoot.com>
126
127         * configure.in: Added "es" to ALL_LINGUAS
128
129 2002-09-10 nalin
130         * src/pty.c, src/pty.h: Add vte_pty_close() and
131         vte_pty_open_with_logging(), breaking the ABI.
132         * src/vte.c, src/vte.h: Add vte_terminal_fork_logged_command(), breaking
133         the ABI.
134         * gnome-pty-helper/*: Swallow the pty helper bits of gnome-libs,
135         but install into $pkglibdir instead of $sbindir so that existing
136         packages don't suddenly start breaking.
137         * src/termcap.c(_vte_termcap_find_string_length): Fix signature to
138         match the declaration in termcap.h.  From patch by Jacob Berkman.
139
140 2002-09-06 nalin
141         * configure.in: Add $X_PRE_LIBS to the front of $X_LIBS, -lX11 and
142         $X_EXTRA_LIBS to the end of $X_LIBS.  Remove some cruftiness and set
143         CPPFLAGS when checking for Xft.  Check for the existence of wchar.h,
144         because it might not exist.  Use an automake conditional to make
145         compilation of the Python bindings non-critical.  From patch by
146         Jacob Berkman.
147         * src/pty.c: Silence compiler warning when exec() fails.  From patch
148         by Jacob Berkman.
149         * src/interpret.c, src/vte.c: Stop including langinfo.h since we don't
150         call nl_langinfo() any more.  Adapted from patch by Jacob Berkman.
151         * src/caps.c: Fill in a couple of missing initializers.
152         * src/vte.c, src/vte.h: Add accessor functions for use in language
153         bindings.
154         * python/vte.defs: Add defs for the new accessor functions.
155         * python/vte-demo.py: Add a scrollbar to the sample window, handle
156         more of the options the C version handles.  Stop expecting additional
157         arguments with a signal that doesn't include any.
158         * python/Makefile.am: We only have one target, so don't bother with
159         target-specific primaries if we can avoid it (#92252).
160         * vte.pc.in: Note build dependencies on ATK, Pango, and PangoX.
161
162 2002-09-05 nalin
163         * src/caps.c, src/caps.h, src/debug.c, src/debug.h, src/interpret.c,
164         src/iso2022.c, src/iso2022.h, src/pty.c, src/reaper.c, src/ring.c,
165         src/ring.h, src/table.c, src/table.h, src/termcap.c, src/termcap.h,
166         src/trie.c, src/trie.h, src/utf8echo.c, src/vte.c, src/vteaccess.c,
167         src/vteapp.c: prefix library-internal interfaces with underscores so
168         that gtk-doc doesn't guess they're public.
169         * src/vte.c: return FALSE from focus-in/focus-out/expose handlers.
170
171 2002-09-05 nalin
172         * src/caps.h, src/debug.h, src/iso2022.h, src/marshal.h, src/ring.h,
173         src/table.h, src/termcap.h, src/trie.h: add giant warnings about how
174         these headers define library-internal interfaces.
175         * vte.spec: 0.8.18
176
177 2002-09-05 nalin
178         * docs/reference: first pass at writing documentation
179         * src/termcap.c: fix how'd-that-ever-work in vte_termcap_strip(), patch
180         from Brian Cameron.  Take \\e as an alias for \\E, which is already
181         an alias for Escape.
182         * src/vte.c(vte_terminal_get_cursor): Return an absolute cursor position
183         instead of a relative position.
184
185 2002-09-04  jacob berkman  <jacob@ximian.com>
186
187         * src/vte.c (vte_default_substitute): only compile the FC_HINT_STYLE
188         part if FC_HINT_STYLE is defined
189
190 2002-09-04 nalin
191         * src/vte.c: Add missing <fontconfig/fontconfig.h> include for Xft2,
192         spotted by Jacob Berkman.
193
194 2002-09-04 Brian Cameron <Brian.Cameron@sun.com>
195         * src/vte.c: Avoid double color deallocations with Xft.
196         * configure.in: Added stropts.h check for Solaris.
197         * src/vte.c: Do not send data to the slave if the length is zero.
198         Some shells on Solaris do not handle this well.
199         * src/pty.c: Added ptem/ldterm/ttcompat ioctls so VTE will work
200         on Solaris.
201
202 2002-09-03 nalin
203         * src/vte.c: Avoid double color deallocations with Xft.
204
205 2002-09-03 nalin
206         * src/vte.c: Handle color allocation failures with Xft better.
207         * src/vte.h: Clean up typedef declarations.
208
209 2002-09-03 nalin
210         * src/marshal.list, src/reaper.c, src/reaper.h, src/vte.c: Modify the
211         child-exited signal to pass a signed int and an unmodified exit status,
212         allowing the callback to check for normal/abnormal exit status.
213
214 2002-09-02 nalin
215         * src/vte.c: Don't send zero-length strings to the child -- it may not
216         be able to cope properly.  Spotted by Brian Cameron.
217
218 2002-08-30 nalin
219         * src/vte.c: Handle cursor exposes correctly for multicolumn characters,
220         no matter which cell the cursor is in.  Fix autoscrolling boundary
221         checks for when allocation.y != 0.
222
223 2002-08-30 nalin
224         * src/vte.c(vte_terminal_insert_char): Wrap correctly to avoid screwing
225         up multicolumn characters.
226
227 2002-08-30 nalin
228         * src/vte.c: Get smarter about when it's necessary to start messing
229         with our adjustments (Red Hat #73091).  Change the way we clear the
230         screen so that all of the contents of the current screen become
231         scrollback data.
232
233 2002-08-30 nalin
234         * src/vte.c: Register VteTerminalEraseBinding with GObject as an
235         enumerated type.
236         * python/vte.defs: Update.
237         * python/vte.overrides: Ignore vte_terminal_get_text_range().
238
239 2002-08-30 nalin
240         * src/vte.c: Restore the focus-in/focus-out handlers -- the defaults
241         don't quite DTRT for us because they miss our im_context (#72946).  When
242         setting the cursor location for the input method, make the Y coordinate
243         relative to the window, not the scrollback buffer.  When resizing the
244         scrollback buffer, clamp the cursor to the set of possible locations,
245         not the visible locations.
246
247 2002-08-30 nalin
248         * src/vte.c: Initialize the pty master fd to -1 to avoid spurious
249         window resizes on fd 0.
250         * src/debug.c, src/debug.h: Add a "pty" debug message class.
251
252 2002-08-30 nalin
253         * src/iso2022.c: Fix a how'd-that-ever-work bug (not returning anything
254         from vte_iso2022_new()), spotted by Brian Cameron.
255         * configure.in: Use -Wall when building with gcc in maintainer mode.
256         * src/interpret.c, src/ring.h, src/table.c, src/trie.c, src/vte.c,
257         src/vteaccess.c: Warning cleanups.
258
259 2002-08-29 nalin
260         * src/vte.c: Clean up bookkeeping for mouse autoscrolling and adjustment
261         change notifications.  Reset the scrolling and insertion deltas when
262         clearing the history.
263         * src/interpret.c: Don't dump data on incomplete conversion errors,
264         which we're going to retry anyway.
265         * src/iso2022.txt: Add iso-2022-kr examples (no workee -- uses GR).
266
267 2002-08-28 nalin
268         * src/vte.c, src/vte.h: Add vte_terminal_copy_primary and
269         vte_terminal_paste_primary(), because I really want to let
270         profterm decide default values for key bindings.
271
272 2002-08-28  Gustavo Noronha Silva  <kov@debian.org>
273         * configure.in (ALL_LINGUAS): added pt_BR
274
275 2002-08-27 nalin
276         * src/vte.c: Stop autoscrolling on button release.
277
278 2002-08-27 nalin
279         * src/vte.c: When autoscrolling, clamp the new boundary to what the user
280         can see.
281
282 2002-08-27 nalin
283         * src/vte.c: Implement autoscroll (Red Hat #70481).
284
285 2002-08-27 nalin
286         * src/vte.c: Only perform cr-lf substitutions when pasting text, not
287         when inputting from a live user (Red Hat #72639).  Bind GDK_ISO_Left_Tab
288         to kB.  Formatting changes.
289         * termcaps/xterm: Bind kB to back-tab (Red Hat #70340).
290
291 2002-08-27 nalin
292         * src/vte.c: Don't tamper with the scrolling offsets -- they're updated
293         when we handle adjustment_changed notifications.  Scroll instead of just
294         moving the cursor down when soft-wrapping to the next line.  Avoid
295         emitting adjustment_changed when only the value has changed, likewise
296         for the value and the other fields of the adjustment.
297
298 2002-08-27 nalin
299         * src/vte.c: Keep cursor position and scrolling offsets from going
300         wonky when you resize, especially on the alternate screen.  Suppress
301         duplicate adjustment_changed notifications.
302         * src/vteapp.c: Set the MIN_SIZE geometry hints so that we can resize
303         to unreasonably-small dimensions.
304         * src/ring.c, src/ring.h: Add vte_ring_new_with_delta().
305
306 2002-08-26 nalin
307         * src/vte.c: Add padding spaces after full lines as well -- spotted by
308         both notting and pjones.
309
310 2002-08-26 nalin
311         * src/vte.c: Don't deadlock when substitution fails, spotted by msw.
312
313 2002-08-26 nalin
314         * src/vte.c: If GDK_USE_XFT is set, check the value of GDK_USE_XFT, not
315         VTE_USE_XFT.  Spotted by hp.
316
317 2002-08-25 nalin
318         * src/vte.c: Heed the reverse-video setting when painting character
319         cells again.  Make selection and matching coordinates global, fixing
320         the selecting-while-scrolling case.  Prevent overdraws into the padding
321         area on the right.
322
323 2002-08-25 nalin
324         * src/vte.c: Make nd() move right but not wrap -- according to Strang
325         it's undefined, but xterm doesn't wrap it.  Separate do/DO from sf/SF
326         and up/UP from sr/SR, because the scrolling behavior is supposed to be
327         different.  Add support for decset/decreset 7 (wraparound mode) and
328         1051 (Sun keyboard).  Add support for DECALN.  Remove some type checks
329         from run-time which the compiler can catch with certainty.
330
331 2002-08-25  Kjartan Maraas  <kmaraas@gnome.org>
332         * configure.in: Added Norwegian (no) to ALL_LINGUAS.
333         
334 2002-08-25  Pablo Saratxaga <pablo@mandrakesoft.com>
335         * configure.in: Added Vietnamese (vi) to ALL_LINGUAS
336
337 2002-08-22 nalin
338         * src/caps.c: Bind ENQ to "return-terminal-status".
339         * src/iso2022.c: Fix an off-by-one which incorrectly triggered an
340         assertion.
341         * src/vte.c: Implement send-primary/secondary-device-attributes.  Bind
342         shift+insert to "paste PRIMARY".  Guard against NULL window/icon title
343         when telling the child app what they are.  Prevent DO(), up(), and UP()
344         from scrolling.
345
346 2002-08-22 nalin
347         * src/vteapp.c: Set geometry hints using the initial font setup.
348 2002-08-22 nalin
349         * src/vte.c, src/vte.h: Make use of the visible bell a separate option
350         from use of the audible bell, allowing both/neither to be used.  Open
351         fonts right away again -- profterm reads the metrics right after calling
352         set_font(), so we have to open fonts ASAP.  Rework the Xft/Pango/Xlib
353         decision code to be more consistent.  Watch for style changes and reset
354         our font to the new style's font when we're already using the old
355         style's font.
356 2002-08-21 nalin
357         * src/iso2022.c(vte_iso2022_substitute): Take a vte_table as an
358         additional argument, and don't mess with text that's part of a control
359         sequence, even if it's in shifted-out text.
360         * src/table.c(vte_table_match): Speed up for the no-arguments-requested
361         case, which just became much more common.
362 2002-08-21 nalin
363         * src/vte.c(vte_terminal_draw_rows): Cap the maximum number of
364         characters we draw in a single call to vte_terminal_draw_cells at a
365         reasonable number.
366 2002-08-21 nalin
367         * src/table.c: Don't overwrite the original pattern pointers before
368         freeing the old value.
369         * src/vte.c: Use the same pango context whenever possible, to save on
370         PangoX startup time.
371 2002-08-20 nalin
372         * src/vte.c: Unref the output channel one more time when we're done
373         sending data to the child.  Free the background data GDK property when
374         we're finished with it.  Don't retrieve the pango context when drawing
375         unless Xft has already been disabled.  Don't try to use the pango layout
376         to draw unless it's valid.  Don't try to use the XftDraw item to draw
377         unless it's valid.
378 2002-08-20 nalin
379         * src/vte.c: Dispose of the updated substitution context properly when
380         processing blocks of input text.  Spotted by Arjan van de Ven.
381 2002-08-20 nalin
382         * src/ring.c: Debug when rows get freed.
383         * src/vte.c: Maybe-release pango contexts after unreffing layouts which
384         refer to them.  Decide on how we want to draw fonts before deciding
385         which fonts to draw, to avoid spurious font loading.  Remove output tags
386         when the output tag's callback is about to return FALSE.
387 2002-08-20 nalin
388         * src/vte.c: Don't leak the hintstyle and rgba settings.  Patch from
389         Arjan van de Ven.  Free PangoX contexts when we're done with them,
390         spotted by Arjan van de Ven.
391 2002-08-19 nalin
392         * src/vte.c: Load fonts just-in-time to avoid spurious reloads.  Don't
393         override the focus_in and focus_out event handlers -- the defaults DTRT.
394         * src/debug.c, src/debug.h: Add a RING debug class.
395 2002-08-19 nalin
396         * src/iso2022.c: Handle override maps which don't affect the font
397         palette correctly, resetting at newlines and escape marks.  Process
398         bogon data correctly.
399         * src/iso2022.txt: Add some sample text.
400 2002-08-19 nalin
401         * src/vte.c: Fixup some fontconfig/Xft mixups.  Set the hint style
402         instead of hinting when reading the GTK hint style setting (spotted
403         by katzj and otaylor).
404 2002-08-19 nalin
405         * src/vte.h, src/vte.c: Use gssize instead of ssize_t.  Perform
406         substitutions while processing.  Use PangoX contexts when we're using
407         the PangoX fontmap and when doing PangoX rendering.
408 2002-08-19 nalin
409         * src/mkunitables.sh,src/unitable.*: Add.
410         * src/iso2022.c, src/iso2022.h: Use unitables.
411         * src/caps.c: Remove sequences for designating character sets.  Switch
412         to using a second passed-in buffer for storing results in case the
413         caller doesn't want substitutions done in-place.
414         * src/debug.c, src/debug.h: Add a substitution debug flag.
415         * src/interpret.c: Perform substitution.
416         * src/table.c, src/table.h: Use gssize instead of ssize_t.
417         * src/termcap.c, src/termcap.h: Use gssize instead of ssize_t.
418         * src/utf8echo.c: Use strtol, allowing users to specify code points in
419         hex format.
420 2002-08-14 nalin
421         * src/vte.c(vte_terminal_configure_toplevel): repaint the entire window
422         to ensure that any overdraw area we're not paying attention to at least
423         gets cleared to the background.
424         * src/vte.c(vte_terminal_locale_encoding): don't try to second-guess
425         the local encoding, just use the current charset as returned by
426         g_get_charset().
427 2002-08-14 nalin
428         * src/vte.c(vte_terminal_reset): drop pending incoming data on reset.
429         * src/vte.c: give reprocessing of pending input data a higher priority
430         than reading it from the child to prevent backlogs on corrupt or invalid
431         multibyte data from building up and whacking us exponentially.
432 2002-08-13 nalin
433         * src/vte.c(vte_sequence_handler_delete_lines): initialize lines added
434         to the current default colors.  Spotted by jrb.
435         * src/vte.c(vte_terminal_set_font): don't try to pick up GTK Xft
436         settings unless we're using FontConfig.  Patch from otaylor.
437 2002-08-11 nalin
438         * src/vte.c: reorder set/reset processing for decset so that 1049
439         properly represents the combination of 1047 and 1048 (#90027).
440 2002-08-11 nalin
441         * src/caps.c: properly escape a sequence which had a bare '%' in it.
442 2002-08-11 nalin
443         * src/vte.c: change Xft-related defaults match whichever version of GTK
444         we were built with (hopefully).
445 2002-08-11 nalin
446         * src/vte.c: don't bother with cursor blinking or freezing/thawing
447         updates when the widget isn't realized.  Patch from Gustavo Giráldez.
448 2002-08-08 nalin
449         * src/vte.c: take extra steps to make sure that the cursor doesn't go
450         back into negative scrollback space.
451 2002-08-08 nalin
452         * src/vte.c(vte_terminal_invalidate_all): rewrite.
453 2002-08-08 nalin
454         * src/vte.c(vte_terminal_paint,vte_terminal_draw_cells): fill in the
455         background color when drawing the cursor, even if it's going to end up
456         as the default background color, spotted by Peter Jones.  Draw the
457         cursor correctly if it's over a graphic character.
458 2002-08-07 nalin
459         * src/vte.c(vte_terminal_draw_cells): once again, avoid drawing NULs.
460         * src/vte.c: add a small pad to each edge (#89048).
461         * src/vteapp.c: handle widget padding.
462 2002-08-07 nalin
463         * src/interpret.c: look for $pkgdatadir/termcap/$TERM first, as the
464         widget does, before consulting /etc/termcap.
465         * src/ring.c(vte_ring_free): check for a non-NULL removal function
466         before calling it.
467         * src/vte.c(vte_terminal_key_press): add an option for doing
468         VT220-style or Sun/PC-style modified function keys.  Default to VT220
469         for now, though, pending feedback.
470         * src/vte.c(vte_terminal_reset): scroll to the bottom when resetting.
471 2002-08-07 nalin
472         * src/vte.c(vte_terminal_draw_cells): don't trust XftDrawString32() to
473         advance linearly for monospaced fonts (#90164).
474
475 2002-08-07 nalin
476         * src/vte.c(vte_terminal_reset): reset the default setting as well
477         (#89506).
478
479 2002-08-07 nalin
480         * src/vte.c(vte_terminal_draw_cells): perform Xft remapping for Xft1,
481         switch back to PangoX.
482 2002-08-06 nalin
483         * src/vte.c(vte_terminal_set_encoding,
484         vte_sequence_handler_local_charset): use g_get_charset() instead of
485         nl_langinfo() to determine the default codeset, and to check if it's
486         UTF-8.  Patch from Hidetoshi Tajima.
487         * src/vte.c(vte_terminal_set_encoding): don't leak conversion
488         descriptors when changing the encoding fails.  Patch from Hidetoshi
489         Tajima.
490         * src/vte.c(vte_terminal_send): don't read past the converted string
491         when performing paste substitutions.
492         * src/vte.c: rework the straight-Pango rendering routines to call
493         normal Pango instead of PangoX.
494         * src/vte.c(vte_terminal_ensure_cursor): speed up the "add many cells"
495         case a bit.
496 2002-08-05 nalin
497         * src/vte.c(vte_cell_is_between): sort the two endpoints correctly and
498         provide a boolean to control whether or not the endpoint is "in".
499         * src/vte.c(vte_cell_draw_rows): check if a cell is selected using
500         the right indicator.
501         * src/vte.c(vte_terminal_get_text): when adding a newline to the end
502         of a returned line, don't show it as being in the rightmost column.
503         * src/vte.c(xlfd_from_pango_font_description): turn the DPI, pixel size,
504         and added info into wildcards.
505         * src/vte.c(vte_terminal_draw_cells): go back to drawing individual
506         cells when using Xlib.
507         * src/vte.c: Compute right-side padding as well as left.
508         * src/vte.c(vte_terminal_init): disable use of PangoX by default.
509         * src/vteapp.c: add -D to add the same patterns profterm does to test
510         dingus hiliting.
511
512 2002-08-03  Havoc Pennington  <hp@redhat.com>
513
514         * src/vte.c (vte_terminal_setup_background): add a gdk_flush()
515         before the error trap pop, just for paranoia, may help with 
516         #89049
517
518 2002-08-02 nalin
519         * src/vte.c(vte_terminal_send): Substitute carriage returns for
520         newlines when pasting text to the child, fixing weird paste behavior
521         in pico and friends.
522
523 2002-08-02  Christophe Merlet  <christophe@merlet.net>
524
525         * configure.in: Added fr to ALL_LINGUAS.
526
527 2002-08-01  nalin
528         * src/pty.c, src/pty.h: Expose vte_pty_set_size() and get_size() to
529         localize terminal ioctl usage.
530         * src/ring.c(vte_ring_validate): Don't repeatedly compute the same
531         value when we know it won't change.
532         * src/vte.c(vte_wc_from_unichar): Implement for the non-STDC_ISO_10646
533         case, heavily based on patch from Hidetoshi Tajima.
534         * src/vte.c(vte_terminal_ensure_cursor): Don't initialize the local
535         data unless we have to.
536         * src/vte.c(vte_terminal_process_incoming): Don't insert NUL characters
537         into the display, matching behavior of xterm.
538         * src/vte.c: Clean up use of various G_PRIORITY values throughout to
539         allow for simpler tuning.  Rewrite rendering code to use per-paint
540         PangoLayouts when they're needed, use Xft2's DrawCharSpec function when
541         available, and to cut down on X requests.  Don't paint on expose events
542         if the window isn't realized, drawable, and at least partially visible.
543         Don't deselect previous selection when the user clicks unless there's
544         also a drag first.
545 2002-07-31  nalin
546         * src/pty.c: Include <termios.h> if available, per patch from Hidetoshi
547         Tajima.
548         * src/trie.c: Include missing <wchar.h>, spotted by Hidetoshi Tajima.
549         * src/vte.c: Initialize new lines created in insert_lines() to the
550         current default attributes like al() does.
551 2002-07-30  nalin
552         * configure.in: Check for wint_t and attempt to allow compiles even
553         when wint_t isn't defined (this type is used only debug code, so it
554         shouldn't break anything).
555         * src/caps.c: Remove "te" and "ti", which are logical, in the same way
556         "so" is, from the known capabilities lists.  Add a "is a key" field to
557         the termcap list so that we don't match against keystrokes in case
558         they're also control sequences.
559         * src/interpret.c: Use tables instead of tries.  Don't add key sequences
560         to the table.
561         * src/pty.c: Fix incorrect invocation in sample.
562         * src/reaper.c: Include stdlib.h to quiet compiler warning.
563         * src/trie.c, src/trie.h: Remove the unused precomputing routines.
564         * src/utf8echo.c: Switch to link with tables instead of tries.
565         * src/vte.c: Switch to using tables instead of tries.  Map
566         cursor-backward to LE instead of le, which handles parameters right.
567         Don't add key sequences to the parsing table.  Tune updates so that
568         they occur less often when we're processing large amounts of data from
569         the child.  Add a 'status-line-changed' signal.  Implement fs() and
570         fix ts().  Add ::get_status_line() to get the contents of the status
571         line.  Obey it() when setting default tabstops.  Implement
572         cursor_next_line(), cursor_lower_left(), cursor_preceding_line(),
573         cursor_horizontal_and_vertical_position(), erase_characters(), and
574         insert_blank_characters().  Implement nw().
575
576 2002-07-26  nalin
577         * src/vte.c: Initialize new lines added for al().  Spotted by jrb.
578
579 2002-07-25  Ole Laursen  <olau@hardworking.dk>
580
581         * configure.in: Added Danish translation.
582
583 2002-07-25  nalin
584         * README: Note that bold isn't broken any more.
585         * termcaps/xterm: Note that k; was added.
586         * src/pty.c: Set the proper number of columns in the window size.
587         * src/ring.h: Change macro argument names to hopefully not step on
588         application code.
589         * src/vte.c: Set the terminal size to the default size as specified in
590         termcap at init-time.
591 2002-07-24  nalin
592         * src/pty.c: Add private vte_pty_set_size() function.
593         * src/pty.c, src/pty.h: vte_pty_open() takes size arguments now.
594         * src/vte.c: Open the PTY with the proper initial size.
595 2002-07-23  nalin
596         * src/ring.c, ring.h: Expose the ring implementation and convert several
597         simple functions into macros.
598         * src/vteapp.c: Pass all long options on to gtk_init().
599 2002-07-23  nalin
600         * src/vte.c: Fix realize/unrealize to be properly reversible.  Use the
601         font from the default style unless we're explicitly given one.
602         * src/vteapp.c: Don't set base size or minimum size geometry hints when
603         sizing the terminal widget.
604 2002-07-22  nalin
605         * src/pty.c(vte_pty_ptsname): Fix an incorrect logic check.
606 2002-07-19  nalin
607         * src/vte.c(vte_terminal_set_color_internal): If we're changing the
608         background color, apply it to the widget's window as well, from msw.
609 2002-07-19  nalin
610         * src/vte.c: Undo the scrolling changes -- there too many combinations
611         of circumstances that cause them to not work right.
612 2002-07-18  nalin
613         * src/vte.c: Fudge the repaint line count by one when scrolling regions
614         to ensure that the old cursor gets repainted.  Calculate the area which
615         needs to be repainted when reverse-scrolling correctly.
616 2002-07-18  nalin
617         * src/vte.c: Implement enough of set-mode and reset-mode to allow
618         toggling of insert mode using this sequence.  Move all scrolling into
619         vte_terminal_scroll_region and use gdk_draw_drawable to avoid repainting
620         from scratch whenever possible.
621 2002-07-17  nalin
622         * configure.in: Actually set ALL_LINGUAS so translations get installed.
623         * README: Document the weirdness that is cursor movement around wide
624         characters.
625         * src/vte.defs: Bind set_color_bold().
626         * src/debug.c: Suppress warnings when $VTE_DEBUG_FLAGS isn't set.
627         * src/pty.c, src/reaper.c, src/termcap.c, src/trie.c: Provide for
628         debug messages in the test program.
629         * src/interpret.c, src/trie.c: Use libc stdio instead of g_print for
630         printing what might be part of a multibyte sequence because g_print
631         checks for validity.
632         * src/interpret.c, src/trie.c, src/utf8echo.c, src/vte.c: Use gunichar
633         instead of wchar_t in places where a gunichar is expected.  Provide a
634         means for converting from wchar_t to gunichar for the sake of X11 calls
635         which want a wchar_t.
636         * src/trie.c: Provide vte_trie_wide_encoding() for finding a giconv
637         target which is hopefully compatible with gunichar.  Likewise provide
638         vte_trie_narrow_encoding() to find one compatible with iso-8859-1.
639         * src/vte.c: Fall back to ISO-8859-1 if we can't set things up for the
640         current locale encoding at startup time.  Fall back to the current
641         encoding if we can't perform a given dynamic switch.
642 2002-07-16  nalin
643         * configure.in: Set GETTEXT_PACKAGE correctly, noted by menthos.
644
645 2002-07-16  nalin
646         * src/vte.c (vte_terminal_set_colors): Guess at an appropriate bold
647         version of the foreground color instead of hard-coding in a default.
648         * src/vte.c, src/vte.h (vte_terminal_set_color_bold): Add.
649
650 2002-07-16  nalin
651         * src/trie.c: Correctly check for g_iconv_open() failure.
652         * src/vte.c (vte_terminal_set_encoding): Try to give a meaningful
653         error when g_iconv_open() fails, even though we're screwed.
654
655 2002-07-15  nalin
656         * src/vte.c: wrap the new Xft/fontconfig-specific code in HAVE_XFT
657         * src/vte.c: Revert some changes in how new cells were initialized,
658         removing various cosmetic problems.
659         * src/vte.c (vte_terminal_process_incoming): Discard the proper number
660         of characters when we don't recognize a sequence, previously we left
661         one byte that should have been removed.
662
663 2002-07-14  Havoc Pennington  <hp@pobox.com>
664         * src/vte.c (vte_terminal_get_cursor_position): decrement spaces
665         as we go through the loop, it was nice and infinite.
666
667 2002-07-13 nalin
668         * src/vte.c (vte_terminal_get_text): Add the proper number of attribute
669         structs to the attribute array to fix crashes which occurred when the
670         buffer contains non-ASCII text (Red Hat #67930).
671 2002-07-12 nalin
672         * src/vte.c: Small optimization in the al() and dl() handlers.  al()
673         doesn't move the cursor, per GNU termcap docs.  Check for a pixbuf in
674         the bgfx check instead of pixmap, which was the wrong type.
675 2002-07-12 nalin
676         * src/vte.c: Add patch to heed Xft/fontconfig settings as kept by GTK.
677         Based on patch from otaylor.
678 2002-07-12 nalin
679         * src/slowcat.c: Added.
680         * src/vteapp.c: Add -a/-b flags to control audible bell and blinking
681         cursors.  Only send "pwd" as an initial command if there wasn't a
682         command specified on the command line.  Add a simple help message.
683         * src/vte.c: Bind F13-F35 per termcap.  Treat GDK_KP_Delete as
684         GDK_Delete.  Map Ctrl+F1-F12 to F13-F24.  Fix dc() to ensure that the
685         rows stays full and that newly-added cells get the default attributes.
686         Fix cl() to clear all rows on the screen with the default attributes
687         (bce).  Default to using Xft if available for consistency with GTK.
688 2002-07-11 nalin
689         * src/vte.c: Treat super, hyper, meta, and alt as modifiers when
690         deciding to scroll-on-keypress.  Noted by jrb.
691         * src/vte.c: Always map \r and \n to cr and so, even when they're
692         defined by the termcap.
693         * src/vte.c, src/vte.h: Rework how default colors are set up, and add
694         vte_terminal_set_color_foreground and vte_terminal_set_color_background.
695         * src/vte.h: Remove includes for local headers which apps are not
696         likely to never use, cleaning up the namespace a little.
697         * python/vte.defs: Bind vte_terminal_set_color_{fore,back}ground.
698         * src/debug.h, src/ring.h: Use G_BEGIN_DECLS/G_END_DECLS.
699         * src/reaper.h: Use G_BEGIN_DECLS/G_END_DECLS in the right place.
700         * src/vteapp.c: Add -B/-T flags to set background images and
701         transparency.
702 2002-07-02 nalin
703         * src/vte.c: Make shift+button1 extend selection.
704 2002-07-01 nalin
705         * src/vte.c (vte_terminal_draw_char): Draw unicode line-drawing code
706         points natively as we do for the GR1 support, in case the current font
707         doesn't include glyphs for them.
708         * src/vte.c: Test for g_iconv_open() failure properly (compare result
709         to ((GIConv)-1), not NULL).
710         * src/vte.c: Rework recovery from illegal sequence errors in the input
711         stream to be much more aggressive about it.
712 2002-06-25 nalin
713         * src/vte.c: Bind F10 to "k;", not "k0".
714         * termcaps/xterm: Add "k;" defined as F10.
715 2002-06-25 nalin
716         * src/vte.c (vte_terminal_reset_rowdata): Check for redundant resizes.
717         * src/vte.c (vte_terminal_set_scrollback_lines): Keep the alternate
718         screen buffer size the same as the window height, because xterm's
719         alternate screen doesn't backscroll.
720         * src/vte.c (vte_terminal_get_text): Don't append spaces to multicolumn
721         characters when reading the screen's contents.
722         * src/vte.c: Don't overexpose neighboring cells any more.  Cleanups.
723         * src/ring.h, src/ring.c: Add vte_ring_max() to read a ring's maximum
724         size.
725 2002-06-24 nalin
726         * src/vte.c (vte_sequence_handler_decset_internal): Treat option 1049
727         as a combination of 1047 and 1048.
728         * src/vte.c (vte_terminal_finalize): When finalizing while holding the
729         selection, throw the selection onto the clipboard without an owner so
730         that it doesn't just disappear.
731 2002-06-19 nalin
732         * src/vte.c (vte_sequence_handler_set_title_int): Fix a logic bug
733         that got rid of the title always, not just when conversion failed.
734 2002-06-19 nalin
735         * src/vte.c: Clear the alternate screen when switching to it.
736 2002-06-18 nalin
737         * src/vte.c: Fix refs/derefs with IOChannels and sources.  Clean up
738         I/O GIConv descriptors at finalize-time.
739 2002-06-18 nalin
740         * src/vte.c: Make cursor_visible a widget-wide (not per-screen) setting.
741 2002-06-18 nalin
742         * autogen.sh: Correct automake version check to require 1.5, heads
743         up from Glynn Foster.
744 2002-06-18 nalin
745         * src/trie.c (vte_trie_match, vte_trie_match_x): Sort out greedy vs.
746         non-greedy pattern matching.
747         * src/vte.c (vte_sequence_handler_decset_internal): Make 1047 an alias
748         for 47 (use alternate buffer), and handle cursor save/restore properly.
749 2002-06-14 nalin
750         * src/vte.c, src/vte.h (vte_terminal_fork_command): Add a parameter for
751         passing in environment variables to add.
752         * src/termcap.c: Preprocess out unused comment() and generate() funcs.
753         * src/Makefile.am: Bump library version number.
754         * vte.spec: 0.4.0
755 2002-06-14 nalin
756         * configure.in, python/Makefile.am: Handle cases where pygtk isn't
757         installed in the prefix we're configuring for.
758         * src/Makefile.am: Link libvte to its library dependencies.
759 2002-06-13 nalin
760         * src/vteaccess.c: Stop watching for hierarchy-changed signals -- the
761         accessible container which is our parent handles it already (from msw).
762 2002-06-13 nalin
763         * src/vteaccess.c: Re-read cursor position immediately on "cursor-moved"
764         events, and emit the "text-caret-moved" signal then as well.  Don't
765         override the signal handlers for signals we emit, bad things can
766         happen (from msw).
767 2002-06-12 nalin
768         * src/vte.c: Re-read the termcap when we change emulation, because
769         the location of the file may have changed.
770         * src/reaper.c: Also tell the parent the child died when the child
771         dies due to an uncaught signal.
772         * python/vte.override (_wrap_vte_terminal_fork_command): Handle default
773         value for the command.
774 2002-06-12 msw
775         * python/vte.override (_wrap_vte_terminal_fork_command): implement
776 2002-06-12 msw
777         * acinclude.m4: added AM_CHECK_PYTHON_HEADERS from pygtk
778         * configure.in: rewrote python checks to be more robust
779         * python/Makefile.am (CFLAGS): include @PYTHON_INCLUDES@
780 2002-06-12 msw
781         * src/vte.c (vte_terminal_get_accessible): turn the logic around
782         to be the right way
783 2002-06-12 nalin
784         * src/vte.c: Cache the result of vte_terminal_get_accessible() and
785         unref it at finalize-time.  Add debug messages to log signals emitted
786         by the widget.  Implement vte_terminal_get_encoding and
787         vte_terminal_get_emulation, emit signals when these change.
788         * src/vteaccess.c: Emit a "text_caret_moved" signal when the cursor
789         moves.
790         * configure.in, src/Makefile.am: Add rules for building python modules.
791 2002-06-12 msw
792         * src/vteaccess.c (vte_terminal_accessible_get_text): accept
793         end_offset of -1, which means "until the end".
794         * src/vteaccess.c (vte_terminal_accessible_new): never set the
795         description to a NULL pointer
796 2002-06-10 nalin
797         * Makefile.am, configure.in: Include gettext support.
798         * src/vte.c, src/vte.h: Expose vte_terminal_set_encoding().
799         * src/vte.c: Finish merging otaylor's Xft2 patch (oops).  Compute
800         padding correctly.
801         * src/pty.c, src/reaper.c, src/trie.c, src/vte.c: Mark warnings for
802         possible translation.
803 2002-06-07 nalin
804         * src/vte.c: Center characters in their cells, caching their extents.
805 2002-06-06 nalin
806         * src/vte.c, src/vte.h: Add get_cursor_position(). Remove get_snapshot()
807         and free_shapshot().
808         * src/vte.c: Fix a logic bug that caused us to scroll to the bottom
809         even if the user just pressed and released a modifier key.  Fix saving
810         of the font in set_font() in most cases, where we weren't saving the
811         new font before.  Scroll-to-bottom on input method commits, which are
812         also the result of keystrokes, when scroll-on-keystroke is enabled.
813         * src/vteaccess.c: Rework to use get_text() and get_cursor_position()
814         instead of get_snapshot(), so that selection and accessibility both
815         agree on what's visible (or "visible").
816 2002-06-05 nalin
817         * configure.in: Check for pangoxft with Xft1 or Xft2, hopefully getting
818         things right for either case.  Originally from patch by andersca.
819         * src/reaper.c, src/reaper.h: Add a singleton object to watch for
820         SIGCHLD when child processes quit.
821         * src/vte.c: Emit a "child-exited" signal when a child started with
822         fork_command() exits.
823         * src/vte.c: Make a better guess at font metrics when using Xft by
824         measuring the extents for a string of representative characters.
825         * src/vte.defs: Add.  Not very useful yet.
826 2002-05-31 nalin
827         * src/vte.c: Implement font setting using PangoX to convert Pango
828         font descriptions to core font xlfds for use when drawing with Xlib.
829 2002-05-29 nalin
830         * src/trie.c, src,vte.c: Finish switching iconv to g_iconv.  I think
831         this was a part of Hidetoshi Tajima's patch that I lost.  Free regexes
832         when we're done with them.
833 2002-05-28 nalin
834         * src/vte.c: Fix matching when scrolling delta isn't zero.  Fix async
835         background updating (report from Richard Neal Plana).  Fix cb() and ce()
836         when the cursor is on a line without data (needed to create it) and when
837         cells being cleared don't exist (needed to create them) (report from
838         Garret LeSage).
839         * src/vte.c, src/vteaccess.c: Always free the segment when freeing
840         arrays and strings.
841
842 2002-05-24 nalin
843         * autogen.sh: Call libtoolize. (#82836)
844         * src/vte.c: Fix stupid segfault in set_scrollback_lines.  (Patch
845         from notting.)  Make another attempt to convert Pango font descriptions
846         to xlfds.
847         * src/vteapp.c: Add -c, -f, -t command-line flags for easier testing.
848
849 2002-05-22 nalin
850         * src/vte.c: Fix hiliting of matched strings.
851
852 2002-05-21 nalin
853         * src/vte.c: Filter key release events through input methods.  (Patch
854         from otaylor.)  When building with gcc, use -std=c99.
855
856 2002-05-21 nalin
857         * autogen.sh, src/termcap.c, src/utf8echo.c, src/vte.c: Patch from
858         Hidetoshi Tajima to fix building on Solaris systems, remove use of
859         syntax that might be specific to gcc, and fix an overrun in
860         vte_termcap_generate().  (#82433)
861
862 2002-05-18 andersca
863         * src/vte.c: Don't queue a background update if the background isn't
864         transparent.
865
866 2002-05-16 nalin
867         * src/vte.c: Snip trailing whitespace off of copied lines, insert
868         an end-of-line only when the copied line doesn't go to the right edge,
869         don't overrun right edge, even in insert mode.  Fix displaying of
870         underlined text.  Finish implementing matching.
871
872 2002-05-15 nalin
873         * src/vte.c: Send kI on insert key.  Don't send drag events when the
874         child has only asked for click events.  Fix crashbugs in selection.
875         When getting scroll events, send mouse 4/5 events to the child instead
876         of performing a history scroll if the child wants mouse events.  Start
877         adding match support, merging how selection views the buffer with how
878         matching views the buffer, though matching doesn't work yet.
879
880 2002-05-14 nalin
881         * src/vte.c: Don't try to draw nul characters, most fonts can't.  Don't
882         send motion-tracking events to the child unless we're dragging.  Fix
883         ce so that it works even right after startup.  Make sure that repainting
884         the entire window actually exposes the visible parts of the window.  Fix
885         tab clearing to also allow removal of the current tabstop.  Implement
886         save-mode and restore-mode.  Start on reverse-video mode.  Don't scroll
887         on modifier keypress events.  Rework part of clipboard copy.
888         * termcaps/xterm: Add missing F11/F12/End keysyms to bundled xterm
889         termcap.
890 2002-05-13 nalin
891         * src/debug.c: Add "ALL" as a debug flag, aliased to everything.
892         * src/pty.c: Print debug info after redirecting stdio.
893         * src/trie.c: When debugging, count only decision nodes.
894         * src/vte.c: Fix se, for real this time.  Add a mostly-ignored protected
895         attribute.  Handle am, bw, ul flags properly.  Make cd clear the current
896         line, too.  Make ce fill the current default attributes through the end
897         of the line.  Handle cS.  Fix cv to work when we have a scrollback
898         buffer.  Handle ll, mp.  Line wrap on nd.  Reset tab stops on hard
899         reset only.  Handle soft-reset and full-reset.  Handle uc.  Initialize
900         scrollback line count properly.  Tweak drawing of alternate 'a' to
901         get rid of artifacts.  Reset insert mode, cursor visibility, and
902         scrolling regions when resetting.
903 2002-05-10 nalin
904         * src/vte.c: Fix IC, which should *always* be done in insert mode,
905         from otaylor.  Make delete mode do nothing.
906 2002-05-09 nalin
907         * src/vte.c: Fixes to usage of iconv, from otaylor.  Remap certain
908         characters which are missing in the current Xft font to similar
909         characters if they are in the font, from otaylor.  Change default
910         emulation to "xterm", cleaning up confusion over what standout really
911         means.  Reorganize some internals.  Complain when an application sends
912         us a key-press sequence, as if we knew what to do with one of those.
913         Implement bt, ct, st.  Reimplement ta.
914         * src/debug.c, src/debug.h: Added.
915 2002-05-08 nalin
916         * src/vte.c: Implement mouse motion-event and any-event tracking.
917 2002-05-07 nalin
918         * src/vte.c: Implement the rest of the special graphics characters.
919 2002-05-06 nalin
920         * src/vte.c: Finish implementing window-manipulation sequences.  Rename
921         signals to be more consistent.  Add thin wrappers for emitting signals,
922         and use them everywhere.  Support pangox even when XFT isn't available.
923         Try to provide bold text again.  Add signals for most of the window
924         manipulation control sequences.  Start handling mouse button events.
925         Hide the mouse cursor when we get keyboard events.  Use a different
926         mouse cursor if the child is mouse-aware.  Handle eA() by treating it as
927         as().
928         * src/caps.c, src/caps.h: Export definitions of VTE_CAP_CSI and friends.
929 2002-05-04 nalin
930         * src/vte.c: Implement device-status-report and dec-device-status-
931         report.  Clamp location values in sequence_handler_cm() to the
932         dimensions of the terminal window so that resize(1) will work right.
933         Start handling window-manipulation sequences.
934 2002-05-03 nalin
935         * src/termcap.c: Export a vte_termcap_strip() function for preprocessing
936         escape sequences and whatnot from capability values.
937         * src/typescrypt: Removed.
938         * src/vte.c: Pass the hard-coded xterm-specific capabilities through
939         vte_termcap_strip(), which fixes a few weird bugs.  Discard invalid
940         might-be-control-sequence sequences, like other emulators do.  Don't
941         consider modifier keys, by themselves, to be enough to scroll-on-key.
942         When snapshotting, actually snapshot all of a row instead of just the
943         last character.  Don't run past the end of snapshot contents when
944         reading them.
945         * src/vteaccess.c: Clamp offsets so that they always sort right.
946 2002-05-02 nalin
947         * src/termcap.c: Fix handling of triple-digit escaped characters,
948         which weren't being processed right if the first digit was '1' instead
949         of '0'.
950         * src/trie.c: Rework trie matching to return the address of the
951         character which ended the match attempt, which should cut down on
952         useless initial-substring checks.  Fix a subtle bug which caused
953         intermittent off-by-somenumber errors in the return address.
954         * src/vte.c:  Remove several gdk_window_scroll() calls which apparently
955         aren't buffered.  Convert invalid multibyte characters to '?' instead of
956         just dropping them.  Provide a means of setting the backspace/delete
957         bindings.  Add a poor xlfd_from_pango mapping function which would need
958         serious work to be useful.  Get rid of warnings when we're transparent
959         and the root window pixmap isn't as big as the root window because it's
960         been tiled.  Setup bindings using the export functions.  Set the default
961         terminal size to 80x24 instead of 60x18, which was originally chosen for
962         debugging purposes.  Don't use $SHELL as the command to invoke when
963         starting up a default command (as in the test app) -- libtool wrappers
964         keep screwing this up.  Don't limit the number of characters we skip
965         over in invalid multibyte sequences -- sometimes that's not enough.
966         Hook up ts/te, ks/ke sequence handlers.
967         * src/vteaccess.h: Fix a crashbug due to mismatch between parent field
968         in the object's structure and its inherited object's type.  Fix more
969         crash bugs due to initialization weirdness.  More to go.
970 2002-05-01 nalin
971         * src/vte.c: Try @pkgdatadir@/termcap/$TERM when reading termcap files.
972         This fixes the app on systems with no /etc/termcap, and also speeds up
973         loads and reduces memory consumption for xterm-color at the expense of
974         making on-the-fly emulation changes impossible.  Don't xor reverse with
975         itself when drawing characters (this broke when snapshotting was added).
976         * termcaps/Makefile.am, termcaps/xterm-color: include a default termcap
977         for xterm-color.
978         * src/termcap.c src/termcap.h: make _find_boolean return a gboolean
979         instead of an int.
980         
981 2002-04-30 nalin
982         * src/vte.c: Disconnect from toplevel window_configure events at
983         finalize-time.
984
985 2002-04-30 18:06  nalin
986         * src/vte.c: Track and free idle task tags properly.  Change F11 and
987         F12 capabilities from 'k;' and 'F1' to 'F1' and 'F2'.  Send a NUL on
988         control space. (#80350)  Allow setting and checking of word characters,
989         and change select-by-word behavior to use the word character list.
990         Emit "contents_changed" signals whenever the visible contents change,
991         and "cursor_moved" when the cursor moves.  Add snapshotting method.
992         Scroll when auto-margin handling moves the cursor to the next line.
993         Assume that the locale charset is actually ISO-8859-1 when we're in
994         a UTF-8 locale, so we don't toggle from UTF-8 to UTF-8.  Treat
995         GDK_KP_Page_Up as a GDK_Page_Up, ditto for GDK_KP_Page_Down and
996         GDK_KP_Tab and GDK_KP_Space.  Add vte_terminal_get_font().  Don't bother
997         messing with ring buffers if we're resizing them to their current sizes.
998         * src/pty.c, src/vte.c: Return a pid from vte_terminal_fork_command().
999         * src/vteaccess.c, src/vteaccess.h: Add VteTerminalAccessible object
1000         type.  It might even work, mostly.
1001
1002 2002-04-29 14:25  nalin
1003         * src/vte.c: Handle me() by resetting all attributes (including
1004         colors, which we weren't resetting before).
1005
1006 2002-04-29 10:57  nalin
1007         * src/vte.c: Handle kb by treating it as a backspace.  Make pangox
1008         rendering the default.  Handle control-key sequences better, unless
1009         the input method is hiding the modifiers from us.  Set the default
1010         TERM variable to "xterm-color".
1011         * src/vte.c src/vte.h: Get rid of vte_terminal_set_core_font().
1012
1013 2002-04-26 19:14  nalin
1014         * src/vte.c: Punt all changes to background images and transparency
1015         to an idle task.  Only insert newlines into the copy buffer when the
1016         last column in a given line doesn't have a character in it.
1017 2002-04-26 17:35  notting
1018         * src/pty.c: use execlp/execvp
1019
1020 2002-04-26 12:09  nalin
1021         * src/Makefile.am, src/ring.c, ring.h: add a ring buffer for storing
1022         scrollback data.
1023         * src/vte.c: use a ring buffer instead of a GArray to hold scrollback
1024         rows.  Fix a bug in that.  Try to preserve what the user sees when the
1025         scrollback size changes.
1026         * src/vteapp.c: set a default scrollback buffer size of 100.
1027 2002-04-26 00:49  nalin
1028         * Makefile.am: run autogen before tagging so that the tag is always
1029         correct.
1030         * README: update.
1031         * configure.in: add pangox to the list of GTK+ 2.0 modules we link with.
1032         * src/vte.c, src/vte.h: add vte_terminal_set_scrollback_lines(), add
1033         some code to use pangox for rendering before trying core rendering,
1034         which should make font selection actually work.
1035         * vte.spec: tweak description text.
1036
1037 2002-04-25 12:23  nalin
1038
1039         * Makefile.am: Uncomment the tag target.
1040
1041 2002-04-25 12:22  nalin
1042
1043         * HACKING, Makefile.am, configure.in: Add some targets for building
1044         tarballs in a hopefully-reproducible way.
1045
1046 2002-04-25 12:12  nalin
1047
1048         * src/vte.c: Let GDK_USE_XFT turn on Xft as well as
1049         VTE_USE_XFT.
1050
1051 2002-04-25 01:45  nalin
1052
1053         * src/vte.c: Handle decoding errors
1054         better.
1055
1056 2002-04-25 00:49  nalin
1057
1058         * vte.spec: Include pkgconfig files in the package.
1059
1060 2002-04-25 00:43  nalin
1061
1062         * src/vte.c: src/vte.c: Make multiple calls to
1063         set_background_transparent() and set_background_image() do the
1064         right thing.
1065
1066 2002-04-25 00:05  nalin
1067
1068         * src/vte.c: Reverse the sanity check in
1069         vte_terminal_set_background_image_file() so that it rejects
1070         zero-length strings, not the other way around.
1071
1072 2002-04-24 23:54  nalin
1073
1074         * src/trie.c: Demote some debug messages to being trie-specific
1075         debug messages.
1076         * src/vte.h: Declare vte_terminal_set_core_font() for non-Xft use.
1077         * src/vte.c: Adjust idle priorities to make the terminal be more
1078         responsive. Fix a double-free that corrupted the heap on core font
1079         loads. Rework some pixbuf handling to only create new pixbufs when
1080         we need to modify what we are given. Revert a patch for profterm
1081         crackiness that's gone now.
1082
1083 2002-04-24 20:49  nalin
1084
1085         * README: update to-do list.
1086         * autogen.sh: remove --disable-shared.
1087         * src/pty.c: remove a memory leak.
1088         * src/termcap.c: fix a possible read-before-start-of-buffer.
1089         * src/trie.c: use iconv instead of mbrstowcs, even if it's just
1090         ASCII->W_CHAR_T.
1091         * src/vte.c: fix a few memory leaks. Only reset the IM context when
1092         we're realized, which is the only time we actually have an IM context.
1093         Don't create a copy of a pixbuf if we don't need to desaturate it,
1094         just ref it and use it directly.
1095
1096 2002-04-23 19:40  nalin
1097
1098         * src/vte.c: Display UTF-8 preedit strings properly, fix
1099         copy (no, really this time), and reset IM contexts when pasting
1100         text in.
1101
1102 2002-04-23 18:01  nalin
1103
1104         * src/pty.c: Print debug messages before redirecting stdio.
1105         * src/vte.c: Fix displaying of highlighted multi-column text.
1106         Use the GTK global setting for cursor blinking to control das
1107         blinkencursor.
1108         * src/vte.h: Remove function for setting blinking timeout.
1109
1110 2002-04-23 15:54  nalin
1111
1112         * src/pty.c: Fix a compile warning.
1113
1114 2002-04-23 15:54  nalin
1115
1116         * autogen.sh: Default to include optimization, even for debugging. 
1117         * configure.in: Move AM_CONFIG_HEADER to the top.
1118         * src/pty.c: Create non-login shells by default (when argv is NULL,
1119         otherwise it's up to the caller anyway.
1120         *  src/vte.c: Add mostly-complete input method support.
1121         * src/vte.h: Add vte_terminal_im_append_menuitems().
1122
1123 2002-04-23 13:04  hp
1124
1125         * src/vte.c, src/vte.h: add vte_terminal_set_font
1126
1127 2002-04-22 17:00  hp
1128
1129         * src/vte.c: when setting background color, use allocated color,
1130         and don't overwrite with bg of None
1131
1132 2002-04-22 16:50  hp
1133
1134         * src/vte.c: use gdk_rgb_find_color to allocate X colors
1135
1136 2002-04-22 16:35  nalin
1137
1138         * src/vte.c, src/vte.h, src/vteapp.c: Add vte_terminal_feed_child() to
1139         send UTF-8 strings to the child process, and actually apply Havoc's
1140         fix right this time.
1141
1142 2002-04-22 09:56  nalin
1143
1144         * src/vte.c: Prevent double-free of incoming buffer
1145         (patch from Havoc).
1146
1147 2002-04-16 01:43  nalin
1148
1149         * README: Fix typo.
1150         * src/vte.c: Make blinking cursors stay on while the user is typing,
1151         desaturate images using integer math.
1152
1153 2002-04-05 00:58  nalin
1154
1155         * vte.spec: Add less useless descriptions. 
1156         * src/vte.c: Fix an uninitialized variable and missing declaration
1157         error.
1158
1159 2002-03-24 21:52  nalin
1160
1161         * src/vte.c: Ensure that there's a data row
1162         whenever we scroll forward, fixing strangeness when I suspend and
1163         resume vim.
1164
1165 2002-03-24 19:08  nalin
1166
1167         * src/vte.c: Copy to clipboard synchronously, which
1168         fixes a number of problems.  Implement background transparency.
1169
1170 2002-03-17 20:59  nalin
1171
1172         * src/vte.c: Rework backgrounds to take advantage of gdk's automatic
1173         drawing.
1174         * src/vteapp.c: Try to enable transparency if no background
1175         image is present.
1176
1177 2002-03-17 20:58  nalin
1178
1179         * autogen.sh, configure.in: Adjust warnings used when in maintainer
1180         mode.
1181
1182 2002-03-17 01:15  nalin
1183
1184         * src/vte.c: Draw the cursor as an unfilled box when the widget does
1185         not have focus.
1186
1187 2002-03-17 01:04  nalin
1188
1189         * src/vte.c: Fix handling of scroll-on-output to always scroll when
1190         only we're at the bottom of the buffer.
1191         * src/vteapp.c: Disable scroll-on-output by default.
1192
1193 2002-03-17 00:45  nalin
1194
1195         * src/vte.c src/vte.h: Rework tiling of background images, and
1196         implement a blinking cursor.
1197         * src/vteapp.c: Set blinking cursor by default.
1198
1199 2002-03-14 02:58  nalin
1200
1201         * src/caps.c: Corrections to some xterm control sequences.
1202
1203 2002-03-14 02:32  nalin
1204
1205         * configure.in: Define PACKAGE correctly.
1206         * src/vte.c src/vteapp.c: Move most of the tear-down code into the
1207         widget finalize method; handle EOF and widget destruction correctly
1208         to prevent segfaults.
1209
1210 2002-03-14 00:48  nalin
1211
1212         * configure.in: * configure.in: Define PACKAGE.
1213
1214 2002-03-14 00:18  nalin
1215
1216         * configure.in: Disable gdk-pixbuf's deprecated functions.
1217         * vte.c: Discard non-ascii bytes to clear logjams that
1218         happen when we pass invalid terminal data to iconv().
1219
1220 2002-03-13 23:07  nalin
1221
1222         * src/iso8859mode.c, src/utf8mode.c, src/vte.c, src/vte.h:
1223         add missing includes
1224         * vte.c vte.h: implement background color setting, provide
1225         a function for setting the defaults, tile background images
1226         properly
1227
1228 2002-03-13 21:12  nalin
1229
1230         * configure.in, vte.pc.in, src/vte.c: Remove gdk-pixbuf-xlib
1231         dependency by using just gdk-pixbuf. 
1232         * src/vte.c: Perform background image desaturation locally.
1233
1234 2002-03-13 14:37  nalin
1235
1236         * src/vte.c: Don't add the widget's allocation offsets
1237         when generating expose events.
1238
1239 2002-03-13 14:22  nalin
1240
1241         * src/vteapp.c: Don't try to use transparency for now.
1242
1243 2002-03-13 13:29  andersca
1244
1245         * src/vte.c, src/vte.h: Add more functions that profterm can use.
1246
1247 2002-03-13 12:51  andersca
1248
1249         * .cvsignore, vte.pc.in: Silent cvs and add gdk-pixbuf-xlib to
1250         depends in the .pc.in file
1251
1252 2002-03-13 12:37  andersca
1253
1254         * src/.cvsignore: Sliff sloff
1255
1256 2002-03-13 12:37  andersca
1257
1258         * src/.cvsignore: sssh
1259
1260 2002-03-13 12:19  nalin
1261
1262         * configure.in: Add gdk-pixbuf-xlib-2.0 as a module requirement.
1263
1264 2002-03-13 01:21  nalin
1265
1266         * src/vte.c, vte.h, vteapp.c: * vte.c: Add set_size,
1267         set_audible_bell, set_scroll_on_output, set_scroll_on_keystroke,
1268         copy_clipboard, paste_clipboard, set_background_image,
1269         set_background_image_file, and set_background_saturation.  Also
1270         added a broken set_background_transparent.
1271
1272 2002-03-12 22:35  nalin
1273
1274         * src/vte.h: adjust the name of a declared function (was _set_size,
1275         is _size_set)
1276
1277 2002-03-12 22:11  nalin
1278
1279         * src/vte.c: Get rid of a global copy of the parent class.
1280         * vte.c: Implement ec, ic, and IC handlers.
1281
1282 2002-03-12 22:10  nalin
1283
1284         * src/vte.h: Fix a typo in a comment (we don't "omit" signals).
1285
1286 2002-03-12 15:48  nalin
1287
1288         * src/caps.c: Recognize xterm cursor-character-absolute sequence.
1289         * src/vte.c: Handle cursor-character-absolute.  Change the default font
1290         to "mono" 14 point when using Xft.
1291
1292 2002-03-12 15:22  nalin
1293
1294         * src/vte.c: Handle the ve (cursor visible) control sequence.
1295
1296 2002-03-12 15:19  nalin
1297
1298         * src/vte.c: Handle dec private mode set (cursor visibility).
1299
1300 2002-03-12 15:13  nalin
1301
1302         * src/vte.c, src/vte.h, src/vteapp.h: fix signed/unsigned problems
1303         (fixes from alexl)
1304
1305 2002-03-11 20:29  nalin
1306
1307         * src/vte.c: Make scroll-on-output scroll on control sequences, too.
1308
1309 2002-03-11 20:19  nalin
1310
1311         * src/Makefile.am, src/iso8859mode.c, src/utf8mode.c:
1312         Add simple programs for moving a terminal in and out of UTF-8 mode.
1313         * src/vte.c: Be more verbose about iconv() errors.  Implement dc and DC
1314         handlers.  Handle auto-wrapping (the "am" flag).  Remove scrolling
1315         cheats from the al handler, which made the window jump.
1316
1317 2002-03-11 02:39  andersca
1318
1319         * src/vte.c: Add a finalize handler and free our title strings
1320         there.
1321
1322 2002-03-11 02:05  nalin
1323
1324         * Makefile.am, configure.in, src/vte.c, src/vte.h, src/vteapp.c:
1325         Emit "window_title_changed" and "icon_title_changed" when the
1326         titles change, and store the new values in a public field so that a
1327         handler can retrieve the values (patch from Anders Carlsson).
1328
1329 2002-03-11 01:54  nalin
1330
1331         * vte.pc.in: Add vte.pc, from Anders Carlsson.
1332
1333 2002-03-11 01:47  nalin
1334
1335         * src/vte.c: Fix a duplicate-idle-handler bug.
1336
1337 2002-03-11 01:32  nalin
1338
1339         * README, src/vte.c: Fix selection (except maybe the end-of-line
1340         stuff).
1341
1342 2002-03-10 23:44  nalin
1343
1344         * src/vte.c: Whoops, I broke selection.  Fix that.  Implement
1345         selection by lines.
1346
1347 2002-03-10 23:08  nalin
1348
1349         * src/vte.c: Move character rendering into a common function so
1350         that the cursor is always drawn the same as other characters (fixes
1351         previous glitches when using Xft and when the cursor was over an
1352         alternate charset character).
1353
1354 2002-03-10 03:31  nalin
1355
1356         * src/vte.c: Differentiate between single, double, and triple-click
1357         for selection (still need to do something with that info).
1358
1359 2002-03-10 03:16  nalin
1360
1361         * stamp-h.in: remove this file
1362
1363 2002-03-10 03:15  nalin
1364
1365         * configure.in: Don't check for pango because we never call pango
1366         directly.
1367
1368 2002-03-10 03:13  nalin
1369
1370         * src/vte.c: Deselect properly when something else is inserted into
1371         the clipboard.
1372
1373 2002-03-10 02:26  nalin
1374
1375         * AUTHORS, HACKING, README, src/utf8echo.c, src/vte.c: Fix
1376         wide-character handling (now handles mid-stream encoding changes
1377         correctly).  Updates to the meager docs.
1378
1379 2002-03-09 02:41  nalin
1380
1381         * Makefile.am, vte.spec, src/Makefile.am: Add a .spec file (make
1382         dist; rpm -ts vte*.tar.gz; rpm --rebuild) to make building a
1383         package easier.
1384
1385 2002-03-09 02:24  nalin
1386
1387         * src/vte.c: skip over space columns when selecting
1388
1389 2002-03-09 02:20  nalin
1390
1391         * src/pty.c, src/vteapp.c: Use a login shell by default.
1392
1393 2002-03-09 02:10  nalin
1394
1395         * src/vte.c, src/vte.h, src/vteapp.c: Rework input queueing to allow for
1396         feeding without a pty.  Use gdk_window_scroll() in _al and _up
1397         handlers, and in the _do handler, because it's usually faster.
1398
1399 2002-03-08 02:52  nalin
1400
1401         * src/vte.c: Implement copy and almost-correct selection
1402         highlighting.
1403
1404 2002-03-07 21:30  nalin
1405
1406         * src/vte.c: Use a queue for pasting data.  Try to get dragging
1407         detected right (doesn't work).
1408
1409 2002-03-05 19:21  nalin
1410
1411         * src/vte.c: Mark the beginning of a selected area.
1412
1413 2002-03-05 19:17  nalin
1414
1415         * src/vte.c: Make pasting asynchronous.
1416
1417 2002-03-05 19:07  nalin
1418
1419         * src/vte.c: actually free clipboard data when finished with it
1420
1421 2002-03-05 19:02  nalin
1422
1423         * src/vte.c: Implement middle-button paste.
1424
1425 2002-03-05 18:55  nalin
1426
1427         * src/vte.c: Properly convert from utf-8 or wchar_t strings when
1428         sending data to the pseudo-terminal.
1429
1430 2002-03-04 19:53  nalin
1431
1432         * src/vte.c: Implement shift/pgup/pgdown scrolling.  Make
1433         scroll-on-keypress and -on-output easier to toggle.
1434
1435 2002-03-04 19:26  nalin
1436
1437         * src/vte.c: Spec out the rest of the alternate characters I
1438         haven't implemented yet.  Remove a function that can't be easily
1439         written (scroll_rows).  Correctly update the insertion delta when
1440         scrolling, to fix man(1) again.
1441
1442 2002-03-04 19:16  nalin
1443
1444         * src/vte.c: Discard redundant cursor-position exposes.
1445
1446 2002-03-04 18:57  nalin
1447
1448         * src/termcap.c, src/termcap.h, src/vte.c: Use ssize_t to measure string
1449         offsets in termcap, and don't assume that all capabilities have
1450         values.  This fixes some nasty crashes.
1451
1452 2002-03-04 11:53  nalin
1453
1454         * src/vte.c: add a missing bounds-check in the erase-in-row
1455         function
1456
1457 2002-03-04 01:13  nalin
1458
1459         * README, src/vte.c: Send the slave pty's erase character when the
1460         user hits backspace.
1461
1462 2002-03-04 00:59  nalin
1463
1464         * src/vte.c: Draw cursors to fill the entire cell.  Draw the blank
1465         alternate character (ooh, tough).  Remove a redundant expose.
1466
1467 2002-03-03 23:49  nalin
1468
1469         * src/trie.c: stop using wcsnlen, which is a GNU extension
1470
1471 2002-03-03 23:43  nalin
1472
1473         * src/caps.h, src/pty.h, src/termcap.h, src/trie.h, src/vte.c,
1474         src/vte.h: Add support for the line-drawing characters in the special
1475         characters and line-drawing character set. (See
1476         [http://vt100.net/docs/vt102-ug/table5-13.html].)
1477
1478 2002-03-03 21:57  nalin
1479
1480         * src/pty.c, src/pty.h, src/vte.c: Properly differentiate insertion
1481         delta (working screen) from scrolling delta.    Add environment setting
1482         to the pty code.
1483
1484 2002-02-27 21:54  nalin
1485
1486         * src/trie.c, src/vte.c, src/vte.h: Make the Xft support use long-lived
1487         data items.  Clean up a lot of other Xft-related code.
1488
1489 2002-02-27 10:45  nalin
1490
1491         * src/vte.c: actually hook up the nd handler to the "nd" sequence
1492
1493 2002-02-27 00:05  nalin
1494
1495         * autogen.sh, configure.in, src/vte.c, src/vte.h: - Add sub-optimal
1496         Xft rendering (set VTE_USE_XFT to "1" to try it); still needs
1497         quite a bit of work to be useful.  Implement character-position-absolute
1498         and line-position-absolute, which I  think are the only sequences which
1499         emacs uses and which weren't implemented.
1500
1501 2002-02-25 12:43  nalin
1502
1503         * src/Makefile.am: distcheck fixes
1504
1505 2002-02-25 12:41  nalin
1506
1507         * README: add that line-drawing does not work to README
1508
1509 2002-02-25 12:40  nalin
1510
1511         * configure.in, src/Makefile.am: tree fixups
1512
1513 2002-02-25 12:38  nalin
1514
1515         * configure.in: fix autoconf reference file problem
1516
1517 2002-02-25 12:38  nalin
1518
1519         * src/Makefile.in: remove stuff which should never have been added
1520
1521 2002-02-25 12:37  nalin
1522
1523         * configure.ac, configure.in, src/Makefile.in: rename configure.ac
1524         to configure.in, remove 2.5isms
1525
1526 2002-02-25 12:35  nalin
1527
1528         * doc/ctlseqs.ps, Makefile.in, aclocal.m4, config.h.in, configure:
1529         remove stuff that should never have been in there
1530
1531 2002-02-25 12:30  nalin
1532
1533         * AUTHORS, ChangeLog, Makefile.am, NEWS, README, autogen.sh,
1534         configure.ac, COPYING, HACKING, Makefile.in, aclocal.m4,
1535         config.h.in, configure, stamp-h.in, doc/ctlseqs.ms, doc/ctlseqs.ps,
1536         doc/readme.txt, doc/vttest.tar.gz, src/Makefile.am,
1537         src/Makefile.in, src/caps.c, src/caps.h, src/interpret.c,
1538         src/marshal.list, src/pty.c, src/pty.h, src/termcap.c,
1539         src/termcap.h, src/trie.c, src/trie.h, src/typescript,
1540         src/utf8echo.c, src/vte.c, src/vte.h, src/vteapp.c: Initial
1541         revision
1542
1543 2002-02-25 12:30  nalin
1544
1545         * AUTHORS, ChangeLog, Makefile.am, NEWS, README, autogen.sh,
1546         configure.ac, COPYING, HACKING, Makefile.in, aclocal.m4,
1547         config.h.in, configure, stamp-h.in, doc/ctlseqs.ms, doc/ctlseqs.ps,
1548         doc/readme.txt, doc/vttest.tar.gz, src/Makefile.am,
1549         src/Makefile.in, src/caps.c, src/caps.h, src/interpret.c,
1550         src/marshal.list, src/pty.c, src/pty.h, src/termcap.c,
1551         src/termcap.h, src/trie.c, src/trie.h, src/typescript,
1552         src/utf8echo.c, src/vte.c, src/vte.h, src/vteapp.c: imported from
1553         private cvs
1554