BearLibTerminal / Changelog

===== ===== ==== 0.15.8 (2022-12-06) ==== * Add support for drawing NumPy structured arrays. ==== 0.15.7 (2017-11-20) ==== * Relax restriction on maximum terminal size from 256x256 to 1024x1024 cells. * Add output.texture-filter option (value is linear or nearest). * Make output.texture-filter toggleable at runtime, e. g. by Alt+F. ==== 0.15.5 (2017-11-13) ==== * Fix background color for tiles with spacing bigger than 1x1. * Fix char type signedness (resolves issue #47). * Add missing include to sample's Main.cpp (resolves issue #48). ==== 0.15.4 (2017-06-30) ==== * Fix Alt key being stuck after regaining focus (e. g. after Alt-Tab). * Fix blank line height/spacing in print (resolves issue #41). * Fix memory leak in Cocoa event processing (resolves issue #44). * Fix crashing when being opened after SDL (e. g. after libtcod import in Python, see issue #42). ==== 0.15.3 (2017-05-14) ==== * Fix adding sprite tiles to an atlas (closes issue #30). * Fix excess generation of 'character replacement' tiles. * Fix dynamic tile generation (individual to a font, closes issue #32). * Fix configuring several fonts in one set() call (closes issue #34). * Add font() function (select the current font by name, closes issue #33). ==== 0.15.2 (2017-03-12) ==== * Retrieve clipboard contents via ''terminal_get("clipboard")''. * Fix bitmap tileset reverse codepage (sparse tileset) handling. * ''input.cursor-blink-rate=0'' disables cursor blinking in ''terminal_read_str()''. * Fix printing tab characters (configured by ''output.tab-width'' option). * Fix app hanging on reopening terminal in macOS (see [[https://bitbucket.org/cfyzium/bearlibterminal/issues/23/reopening-a-closed-terminal-hangs-forever|issue #23]]). ==== 0.15.1 (2017-01-18) ==== * Change default hinting to font's native hinter. * Add '''hinting''' TrueType font attribute. * Make Python wrapper look for the library binary near the executable (should help packaging an application). * Minor fix in the sample application. ==== 0.15.0 (2017-01-09) ==== * Add bbox and alignment parameters to ''**print()**'' function (instead of using in-string formatting tags). * Add bbox parameters to ''**measure()**'' function. * Add '''dead-center''' tile alignment (centering by image's center of mass). * Add '''use-box-drawing''' and '''use-block-elements''' truetype font attributes (disables auto-generation of respective characters). * Add text resource descriptors (specifying resources inside a configuration string, e. g. codepages). * Add version property (available via ''**get()**''). * Fix TrueType font alignment at arbitrary tile size. * Fix minor memory leaks (in X11Window and TrueType font constructors). * Fix keybad keys not producing character codes (''TK_CHAR''/''TK_WCHAR'' states). ==== 0.14.12 (2016-12-01) ==== * Fix mapping of first 32 characters of CP437 codepage. * Fix priority of auto-generated Box Drawing tiles. * Fix crashing Python interpeter when exiting suddenly. * Add support for grayscale bitmap font images w/o transparency. * Setting a font without specifying a size parameter is not allowed anymore. * C#: minor wrapper improvements (function overloads and Size type support in Set/Get). ==== 0.14.11 (2016-10-30) ==== * Fix 'resize' parameter in bitmap tilesets (also change its meaning to target tile size). * Fix toggling fullscreen in Linux (_DIALOG window type is incompatible with _FULLSCREEN). * Fix crash under Wine (dynamic library was being unloaded way too early). * Fix crash on the older hardware (sprite textures were not honoring lack of NPOTD support). * Fix out-of-bounds reads in bilinear filter (produced artifacts on bitmap borders). * Add missing TK_MOUSE_SCROLL constant in Lua binding. ==== 0.14.10 (2016-10-16) ==== * The window is now centered on a screen at startup (see [[https://bitbucket.org/cfyzium/bearlibterminal/issues/15/os-x-window-isnt-centered-in-the-screen|issue #15]]). * Add Cmd+Q app menu for OS X ([[https://bitbucket.org/cfyzium/bearlibterminal/issues/16/os-x-command-q-doesnt-work|issue #16]]). * Fix first redraw on OS X 10.11 ([[https://bitbucket.org/cfyzium/bearlibterminal/issues/14/loading-takes-a-long-time-and-cant-be|issue #14]]). * Fix flooding mouse-movement events (again, finally). * Python wrapper fixes (performance optimizations, check() behaviour, a bug in get(); see [[https://bitbucket.org/cfyzium/bearlibterminal/issues/17/python-optimizations|issue #17]], [[https://bitbucket.org/cfyzium/bearlibterminal/issues/8/check-bug-in-the-python-wrapper|issue #8]]). * Fix dynamically generated character U+2523. ==== 0.14.8 (2016-09-06) ==== * Custom colors in the palette (later available via [[en:bearlibterminal:reference#color_from_name|color from name]] function and [color=name] formatting tag) * Specifying custom colors in a configuration file. * Fixed filtered events ordering (some events could have been lost before). * Delphi-compatible Pascal wrapper. ==== 0.14.7 (2016-08-31) ==== * Fixed parsing resource names (some absolute paths were incorrectly treated as memory addresses). ==== 0.14.6 (2016-08-30) ==== * 'System' events like TK_CLOSE are always read regardless of input filter.\\ No need to explicitly specify them while setting the filter. ==== 0.14.5 (2016-08-29) ==== * Support for Lua 5.3 * Fixed reading some configuration options. * Library does not block on input when the window is not yet shown (could deadlock). * Default [[en:bearlibterminal:reference:input#inputfilter|input filter]] is 'keyboard, system' now ([[en:bearlibterminal:reference#read|terminal read]] is equivalent to 'press any key'). * Some minor cleanup. ==== 0.14.4 (2016-08-17) ==== * Fixed reading/updating single parameters in configuration file. ==== 0.14.3 (2016-07-22) ==== * Fixed setting font via configuration file. Yes, again =( ==== 0.14.2 (2016-07-21) ==== * Fixed library deinitialization routine (cleaning texture atlas). ==== 0.14.0 (2016-04-22) ==== * Alt key availability (TK_ALT). * Uniform in-memory resource loading. * Named alternative fonts. ==== 0.13.2 (2016-03-28) ==== * IPython REPL integration. * Fixed bug in WinAPI window event polling. ==== 0.13.1 (2016-03-28) ==== * Fixed (reverted) accidental default input filter changes. ==== 0.13.0 (2016-03-26) ==== * OS X support. ==== 0.12.2 (2015-12-09) ==== * Fixed setting fonts via configuration file. ==== 0.12.1 (2015-03-24) ==== * **terminal_get** function added (reading a configuration file). ==== 0.11.4 (2015-02-28) ==== * Fixed Box Drawing and Block Elements tile load/generation priority. ==== 0.11.3 (2014-11-11) ==== * Input filtering mechanism. ==== 0.11.2 (2014-09-02) ==== * Pascal wrapper fixes. * Ruby wrapper fixes. * Fixed incorrent library unloading. ==== 0.11.1 (2014-08-15) ==== * Fixed unibyte encoding handling. ==== 0.11 (2014-08-13) ==== * Alignment formatting tag. * Text autowrapping. * Automatic tile/character spacing. * Python wrapper added. ==== 0.10 (2014-07-13) ==== * The input subsystem has been slightly refactored (see [[ru:bearlibterminal:reference:input|documentation]]): * Event categories (input.events option) removed. * **read_ext** function removed. * Mouse support updated (additional X1 and X2 buttons, double-click notification). * Linux implementation of fullscreen mode. * Programmatical fullscreen mode switching. * Simple window scaling via Alt + [+/--] buttons. ==== 0.9.9 (2014-05-10) ==== * Fixed: font reinitialization bug causing artifacts and crashes. * Windows version got a fullscreen mode (switching by Alt+Enter). ==== 0.9.8 (2014-02-28) ==== * Input event queue should be fixed //finally//. * Calling convention mistake causing crashes depending on build configuration. * Support for 64-bit builds. * Some compiler compatibility fixes. * CMake project structure changed. ==== 0.9.7 (2014-02-26) ==== * Input event queue fixed. * input.nonblocking option removed (use **read_ext** + //TK_READ_NOBLOCK//). * Ruby: **color_from_argb** function added. ==== 0.9.6 (2014-02-09) ==== * Return value of **open** and **set** changed to boolean (true means success, false means failure). * Error logging improved slightly. * Lua: added **printf** and **setf** functions. * Lua: added ability to load a tileset from in-memory buffer. * C#/Pascal/Ruby: fixed functions returning boolean value. ==== 0.9.5 (2014-01-30) ==== * Fixed repainting during window resize. * Added built-in Lua binding. ==== 0.9.4 (2014-01-18) ==== * Added support for window resizing. * Fixed background handling in **clear_area**. * Fixed UTF-8 support. * Headers for languages other than C/C++ moved to common source code repository. * Added Ruby binding.