Check for input redirection could have accessed a NULL pointer if we tried to check for keys during PDC_scr_open(). We do that in DOS and Windows.
Bill-Gray
2023-01-29 20:39:57 -0500
In Windows SDL2, Alt-keystrokes were ignored; reported as wmcbrine/PDCurses#142. Hat tip to Benjamin Adamson for proposed fix (modified here).
Bill-Gray
2023-01-16 13:23:58 -0500
Negative window sizes should result in newwin(), wresize(), and similar functions returning ERR. Instead, they segfaulted. Raised as part of issue #266.
Bill-Gray
2023-01-09 10:00:28 -0500
If you resize 'ptest', it shouldn't advance to the next panel display in the series. Fixes a piece of issue #252. The remaining bit, in which the touching of panels goes unnoticed, remains to be fixed.
Bill-Gray
2023-01-07 14:56:38 -0500
Merge branch 'master' of https://www.github.com/Bill-Gray/PDCursesMod SDL2 now supports the Supplemental Multilingual Planes (SMP, Unicode beyond 0xffff) for SDL 2.0.18 and beyond.
Bill-Gray
2023-01-07 11:14:43 -0500
VT : the window sizing handler ought to be set to use the terminal file handle. That may be STDOUT_FILENO (if stdout hasn't been redirected to a file) or STDERR_FILENO (if stdout got redirected). See preceding commit a6618d94d7.
Bill-Gray
2023-01-06 21:25:09 -0500
VT : made the pointer to the terminal (usually stdout; stderr if stdout has been redirected) accessible via the new PDC_get_terminal_fd( ) function. This needs to be accessible so that the resizing handler is set to that file (see next commit).
Bill-Gray
2023-01-06 21:23:26 -0500
Scrolling was broken ever since we switched from line-by-line allocation for windows to allocating all lines at once. The existing code rearraged line pointers, so that win->_y[0] was no longer the pointer that ought to be freed. Solution was to scroll without rearranging line pointers.
Bill-Gray
2023-01-06 20:56:57 -0500
Changes to 'mbrot' resulted in a declaration of 'int i;' hiding a previous declaration. Hat tip to MSVC; gcc didn't warn me about it.
Bill-Gray
2023-01-06 11:23:19 -0500
wgetn_wstr() ought to get characters using wget_wch(), not wgetch(). The latter (ought to, soon will) return multi-byte sequences, rather than the Unicode points that are desired in this function.
Bill-Gray
2023-01-06 11:22:07 -0500
VT window resize handler used STDIN_FILENO. Pavel Stehule (see issue #256) pointed out that it should use STDOUT_FILENO.
Bill-Gray
2023-01-05 21:27:07 -0500
'mbrot' now can accept a command line argument '-i(input filename)' to test the ability to redirect input in newterm() (see preceding commit) for the fix to issue #256.
Bill-Gray
2023-01-05 21:22:24 -0500
We now look at the input file parameter for newterm() and use it (only in the VT platform at present). A partial fix for issue #256. If this works, we can extend it to the other platforms.
Bill-Gray
2023-01-05 21:18:59 -0500
SLK functions lacked 'man' documentation for extended_slk_color. Also, the return value for slk_attr() for the error case was wrong and caused casting warnings on MSVC. There is no really sensible return value here (and the debug behavior of asserting an error is correct). But A_REVERSE comes closest to a 'good' value to return.
Bill-Gray
2023-01-04 21:56:21 -0500
WinCon errored out if you defined both PDC_FORCE_UTF8 and PDC_WIDE. Should be able to do 'em both, though it's redundant.
Bill-Gray
2023-01-04 21:53:05 -0500
SDL2 didn't have a dependency for terminfo.h on term.h. A piece that slipped through commits 248146021e, ab1c007273 (re-implementing terminfo functions).
Bill-Gray
2023-01-04 21:50:41 -0500
'terminfo' fully restored (I think). Continuation of commit ab1c007273, which is itself a reversion of commit 22c4d82f8c. A fix for issue #253.
Bill-Gray
2022-12-28 22:55:08 -0500
WinGUI version of 'PDC_check_key()' got confused with out-of-order messages such as window resizes (issue #257). This reverts to our previous practice of calling PDC_napms(1 millisecond). However, we need not 'nap' every time; once every hundred calls is sufficient to ensure keys are read, while not limiting us to 1000 keys/second.
Bill-Gray
2022-12-28 21:34:36 -0500
Merge branch 'Bill-Gray:master' into master
Mark Hessling
2022-12-29 11:15:27 +1000
7055afaaa6Be consistent with booleans; CentOS 7.9 does not support true with current tests
Mark Hessling
2022-12-29 11:14:32 +1000
d23bdae024If _UNICODE is defined, WM_CHAR messages receive UTF16 characters; in this case, we'll convert them to a UTF8 byte sequence and enqueue the characters individually.
casey langen
2022-12-26 17:26:45 -0800
Reversion of commit b94c554977 : when running WinGUI under Wine, attempts to resize the window to the exact number of columns and rows will fail. So we check to see if we're running under Wine; if we are, we skip those resizes.
Bill-Gray
2022-12-24 21:17:38 -0500
VT flavor now allows for redirection of stdout, with some caveats : it manages this by sending output to stderr, so if you redirect stderr in Windows, or both stdout and stderr in Linux or MacOS, it'll still fail. Motivated by issue #256, which is about input (so this doesn't actually address that issue.)
Bill-Gray
2022-12-24 15:55:29 -0500
We partially 'restored' terminfo functions with commit 22c4d82f, but it was a very partial restoration : terminfo.c was not actually compiled/linked into the library on most platforms. Reported by Pavel Stehule, issue #253.
Bill-Gray
2022-12-15 17:19:22 -0500
WinCon, WinGUI makefiles used optimization switch -O4, to which clang objects (see first part of issue #250). gcc silently remaps this to -O3. As far as I know, nothing has a working -O4 switch, so let's change the fours to threes.
Bill-Gray
2022-11-29 13:41:37 -0500
See @GitMensch comment on commit 9c0f475287 : on at least some Windows platforms, the '.exe' must be explicitly added to get 'config_curses.exe' to run. I can think of no platforms where it is likely to cause trouble, so let's just always use it.
Bill-Gray
2022-11-29 13:17:17 -0500
MSVC warned about PDC_set_window_resized_callback() being declared without an explicit prototype. I am reasonably sure this is the same warning described in issue #250 with clang on Windows.
Bill-Gray
2022-11-29 13:10:35 -0500
'getch.c' : some casts made explicit, and PDC_millisecs declared to take 'void' (which it should have done from the beginning; see issue #250)
Bill-Gray
2022-11-29 12:46:28 -0500
In WinGUI, WinCon, and VT, one can run 'make configure (options)' to revise 'curses.h' to use the specified options for shared library, 32-bit chtypes, wide/UTF8/narrow builds, and/or ncurses-compatible mouse calls. See commit fe39e244d2.
Bill-Gray
2022-11-18 11:26:21 -0500
Some ncurses extensions for opaque WINDOW structs. See https://github.com/wmcbrine/PDCurses/pull/106. More commits to come for the remaining functions.
Markus Uhlin
2022-11-18 10:38:14 -0500
Starting changes to allow code to be compiled with g++. Casts are explicit where they were implicit; 'new_win' is used in place of 'new' (which is arguably more descriptive anyway)
Bill-Gray
2022-11-18 10:19:25 -0500
Initial 'config_curses.c' to allow one to reset DLL, chtype size, 8-bit/UTF-8/wide-character, and other settings. See issue #133 and the discussion starting at 'a bit of code to configure/reconfigure'.
Bill-Gray
2022-11-09 10:41:14 -0500
DRM port should use 'pitch' variable to determine bytes/line, instead of assuming it's width*sizeof(uint32_t). Found systems where the latter is wrong.
Bill-Gray
2022-11-06 14:59:42 -0500
Resizing of the window list should occur both when windows are added _and_ when they are removed. The memory savings are tiny from this; the main benefit is that it ensures that window_list is freed when the list becomes empty, in a more logical manner than would otherwise occur.
Bill-Gray
2022-10-09 13:37:34 -0400
Modified 'ptest' and 'speed' demos to ensure all memory is freed. The code _did_ work without those changes, but relied on the OS to free everything at shutdown. That's annoying when testing with Valgrind.
Bill-Gray
2022-10-09 13:16:46 -0400
WinCon : returned key code should be non-negative (unless it's ERR). This is consistent with ncurses and every other PDCurses/PDCursesMod platform.
Bill-Gray
2022-10-01 10:00:36 -0400
Added comment to 'test_pan' for those not using UTF-8 editors, plus a 'random repositioning' feature for panels. Moving with the keyboard can be a little slow.
Bill-Gray
2022-09-28 10:52:20 -0400
Removed a meaningless assert. I think the intent was to say 'if PDC_WIDE isn't defined, the character _must_ fit in eight bits; assert if it doesn't.' But as implemented, the assert doesn't do a censored thing.
Bill-Gray
2022-09-10 21:59:08 -0400
_default_background_idx and _default_foreground_idx are (again) static to pdcurses/color.c, rather than part of the 'opaque' structure in SCREEN. You could get problems if you tried to set background/foreground colors before the 'opaque' struct was allocated... getting around it would have been a pointless hairball, so the code is reverted.
Bill-Gray
2022-09-10 11:17:18 -0400