History log of /src/lib/libcurses/insch.c |
Revision | | Date | Author | Comments |
1.29 |
| 23-Dec-2024 |
blymn | Sprinkle about some cycle wasting checks for the win pointer being null. Unfortunately, ncurses does this and there is some sloppy code out there that relies on the check resulting in segfaults in NetBSD curses which then, of course, gets blamed for the error.
|
1.28 |
| 19-Oct-2022 |
blymn | branches: 1.28.4; Fixes for lib/56926 amongst other things: - plod now correctly accounts for wide characters when plodding - use erase line when in color mode if the terminal has the capability - ensure that the CA_CONTINUATION flag is applied consistently to the subsequent characters in a wide character. - fix a bunch of refresh bugs that caused inconsistent placement of wide characters.
|
1.27 |
| 25-Jan-2022 |
blymn | Correct (hopefully) the handling of wide characters.
* Remove the WCOL family of macros, these were "stealing" the upper bits of a character attribute to store the column width of a character. No warning was given about this in curses.h which meant it was easy to accidentally reuse the bits in use by the WCOL macros (we already did). Add couple of 16bit ints to the character structure iff HAVE_WCHAR is true to hold the display width and wide char related flags (just continuation at the moment) * Convert all instances of WCOL macros to just reference the column width in the char structure so it is not obfuscated. * Fix cursor positioning so placing a cursor in the middle of a wide char actually does just that. * Fix plod so it understands that if the cursor is going to be positioned in the middle of a wide char it cannot just reprint the char to get there. * Fix plodput so it correctly counts the number of output characters for wide characters. * Fix slk routines to properly size the wctomb() buffer.
|
1.26 |
| 06-Jul-2020 |
uwe | mvwins*(WINDOW *win, ...) functions - call wins* on win, not stdscr. From Naman Jain in PR lib/55460.
|
1.25 |
| 09-Jun-2019 |
blymn | branches: 1.25.2; Rework previous fix for getch cursor position when cursor is moved without refresh. If the window is not dirty but the window cursor position does not match curscr then move the cursor. This fixes the issues seen in PR lib/54263.
|
1.24 |
| 20-May-2019 |
blymn | Back out incorrect fix for PR 53617 and fix it in a different way. Keep track of the cursor location, if getch is called without a refresh and without pending updates (dirty windows) then move the cursor to the correct location directly. Doing this prevents unnecessary refreshes.
|
1.23 |
| 06-Jan-2017 |
roy | branches: 1.23.6; 1.23.14; KNF. Normalise coding style. White space police. Sprinkle some extra braces to make the flow more clear.
No functional changes.
|
1.22 |
| 22-Jul-2009 |
roy | branches: 1.22.28; Prepare curses for the possibility of changing from termcap to terminfo. term.h #defines lines, pad_char and no_color_video macros which conflict with existing curses code. We change lines to alines and nlines depending on use, pad_char to padchar and no_color_video becomes no_color_attributes but with a strong alias from no_color_video.
|
1.21 |
| 28-May-2007 |
blymn | Merge in wide curses code done as a Summer of Code project by Ruibiao Qiu.
|
1.20 |
| 05-Feb-2006 |
jdc | branches: 1.20.6; Use the background attributes for the background when inserting characters.
|
1.19 |
| 26-Jan-2006 |
jdc | Use the window background colour, not the default colour. Should fix PR install/32617
|
1.18 |
| 15-Jan-2006 |
jdc | Background characters and attributes don't need to be kept per character cell, as they are merged when characters are added. Remove the per cell storage and clarify the manual page. Pointed out by ruibiao@.
|
1.17 |
| 07-Aug-2003 |
agc | Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22280, verified by myself.
|
1.16 |
| 02-Jan-2002 |
blymn | Remove extraneous tabs from blank lines.
|
1.15 |
| 20-May-2000 |
mycroft | GC __FORCEPAINT.
|
1.14 |
| 18-Apr-2000 |
jdc | Set background character and attributes for added characters.
|
1.13 |
| 15-Apr-2000 |
blymn | Added functions to replace what were previously macros in curses.h (this is a requirement of SUSv2) - the old macro behaviour can be restored by defining _CURSES_USE_MACROS. Changed function prototypes to use ANSI style. All externally visible functions now have ANSI style declarations.
|
1.12 |
| 11-Apr-2000 |
blymn | Made data structures opaque
|
1.11 |
| 13-Apr-1999 |
mrg | branches: 1.11.6; Upgrades the standard NetBSD curses library to provide some of the SYSV curses facilities. The added features are the collapsing of arrow and function keysequences (as defined by termcap for the terminal) into symbolic code returns thus relieving the application of recognising multi-character key sequences. Other features are the capability to perform a timed wait for a key (good for when you are not sure if there is a keypress ready or not) and the capability for turning off the inter-key timeout when assembling multi-character function keys.
this work was done by Julian Coleman <J.D.Coleman@newcastle.ac.uk> and blymn@baea.com.au (Brett Lymn). i'm just integrating it. thanks HEAPS guys!
|
1.10 |
| 19-Aug-1998 |
thorpej | Add some braces to make egcs happy.
|
1.9 |
| 03-Feb-1998 |
perry | remove obsolete register declarations
|
1.8 |
| 22-Jul-1997 |
mikel | RCSid police, fix warnings
|
1.7 |
| 17-Aug-1994 |
cgd | branches: 1.7.2; clean up import
|
1.6 |
| 09-Nov-1993 |
cgd | repeat after me: "I hate rcs ids"
|
1.5 |
| 09-Nov-1993 |
cgd | update to new version from berkeley. doesn't compile yet, nor does it have rcsid's. this is for diffs.
|
1.4 |
| 07-Aug-1993 |
mycroft | New version from uunet.
|
1.3 |
| 01-Aug-1993 |
mycroft | Add RCS identifiers.
|
1.2 |
| 09-Jul-1993 |
alm | added Andrew Chernov's patch set: Standard curses library use eight bit for standout mode, so 8-bit characters displays like highlighted 7-bit characters.
This patch produce library which is fully compatible with all curses programs and add 8-bit chars to all input/display functions. --- I don't think, that any programs wish to use internal curses attribute _STANDOUT directly, in expressions like: addch( ch | _STANDOUT ); Normal interface use standout() and standend() functions instead. Many programs use 'char' type (with sign extention) for input characters and sign extention becomes _STANDOUT mode in this case. So, I refuse this future and allow 8-bit characters for programs, which is designed for 7-bit only ('char' type using instead of 'unsigned char'). --- This small patch fix unpleasant standard curses bug: curses can't expand TAB at all (but tries). A man who wrote this curses misplace SYNC_IN and SYNCH_OUT, this patch exchange macro calls.
This patch useful for standard 7-bit curses too, for this you must delete '_' symbol before waddbytes and apply patch. --- Oh, NO! This curses are really buggy!
This small patch fix following problem: [ assumed scrollok(stdscr, TRUE) ] when addch(ch) at lower right corner of screen, curses are realy gone mad instead if simple scrolling... Curses code assumed that this will be done correctly, but implement it with two bugs.
|
1.1 |
| 21-Mar-1993 |
cgd | branches: 1.1.1; Initial revision
|
1.1.1.2 |
| 17-Aug-1994 |
cgd | new libcurses, from new nvi
|
1.1.1.1 |
| 21-Mar-1993 |
cgd | initial import of 386bsd-0.1 sources
|
1.7.2.2 |
| 17-Aug-1994 |
cgd | clean up import
|
1.7.2.1 |
| 17-Aug-1994 |
cgd | file insch.c was added on branch netbsd-1-0 on 1994-08-17 21:52:25 +0000
|
1.11.6.1 |
| 09-Jan-2000 |
jdc | Changes to make libcurses SUS v2 compatible.
|
1.20.6.4 |
| 25-Jan-2007 |
blymn | * rearrange code to ensure that SET_WCOL() is called after attributes are copied/set.
* fix some instances where attributes were being checked without masking with WA_ATTRIBUTES
* Replace another instance of non-spacing character copying with function call.
|
1.20.6.3 |
| 22-Jan-2007 |
blymn | * Make WCHAR libcurses the default build * Sprinkle about some SET_WCOL() calls where they were missing
|
1.20.6.2 |
| 21-Jan-2007 |
jdc | Apply the changes that add debug "areas" on HEAD to the wcurses branch. Add correspending changes to the debug code that is only present on the branch.
|
1.20.6.1 |
| 21-Jan-2007 |
blymn | Wide curses merge
|
1.22.28.1 |
| 07-Jan-2017 |
pgoyette | Sync with HEAD. (Note that most of these changes are simply $NetBSD$ tag issues.)
|
1.23.14.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|
1.23.6.1 |
| 07-Jul-2020 |
martin | Pull up following revision(s) (requested by uwe in ticket #1567):
lib/libcurses/insch.c: revision 1.26 lib/libcurses/ins_wch.c: revision 1.15 lib/libcurses/ins_wstr.c: revision 1.15 lib/libcurses/insstr.c: revision 1.8
mvwins*(WINDOW *win, ...) functions - call wins* on win, not stdscr. From Naman Jain in PR lib/55460.
|
1.25.2.1 |
| 07-Jul-2020 |
martin | Pull up following revision(s) (requested by uwe in ticket #986):
lib/libcurses/insch.c: revision 1.26 lib/libcurses/ins_wch.c: revision 1.15 lib/libcurses/ins_wstr.c: revision 1.15 lib/libcurses/insstr.c: revision 1.8
mvwins*(WINDOW *win, ...) functions - call wins* on win, not stdscr. From Naman Jain in PR lib/55460.
|
1.28.4.1 |
| 02-Aug-2025 |
perseant | Sync with HEAD
|