Skip to content

Version 2.7.0 Feature Release

Compare
Choose a tag to compare
@gdamore gdamore released this 10 Dec 21:17
· 49 commits to main since this release

Significant changes in this release:

  • Introduced ColorNone which can be used in a style to avoid changing the existing foreground or background color.
  • Refactored the screen logic to provide better code reuse and facilitate extending the Screen API in future releases. (This changes internal APIs only)
  • Color grew some methods to report a String() (color name) or CSS() (color hex string in CSS style)
  • LockRegion() and Tty API changes from Tim Culverhouse tim@timculverhouse.com in support of Sixel coexistence. This does not itself provide support for Sixel graphics, but it allows tcell applications to be used with other sixel graphics libraries.
  • Mouse focus reporting (see EnableFocus(), DisableFocus(), and EventFocus) courtesy of stk stk@ableton.com (I also added support for focus reporting in the WASM terminal.) Windows console does not report this yet.

The refactoring in particular will enable some further improvements. Also, we added more test cases and coverage. While much of tcell remains uncovered by formal testing, every improvement here is welcome.

I expect to follow up with another release soon -- things I'm hoping for are gpm mouse support for the linux console (oft-requested), refactoring wide character support to fix some long standing bugs, and convenience methods to apply content or style changes to a rectangular region of the screen. In the meantime, I hope you enjoy this release!

Fixes (relative to 2.6.0)

  • mouse demo: fix crash when multiple buttons pressed together
  • Fix dynamic terminfo when an alias is used (#639) (courtesy of Tim Culverhouse tim@timculverhouse.com)
  • Screen.Clear — Flickering on Windows (#647)
  • Fix for broken Windows
  • Fixes for scrolling and button event handling (courtesy of Matthew Roseman mroseman95@gmail.com)
  • Add LookupTerminfo stub for wasm (#617) (courtesy of Remko Tronçon remko@bookwidgets.com)
  • Support Xterm modifier keys for dynamic terminfos (courtesy of delthas delthas@dille.cc)
  • Fix underlines in Windows console mode (courtesy of bjorndm bjorn.de.meyer@gmail.com)

Contributors

This release had more external contributors than has been usual, for which I'm very grateful. Thank you! (If I forgot to mention anyone, please accept my apologies!)