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
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!)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps github.com/gdamore/tcell/v2 from 2.6.0 to 2.7.0.
Release notes
Sourced from github.com/gdamore/tcell/v2's releases.
Commits
337e381
fixes #606 Want ColorNone to preserve existing color(s)8041b8e
Refactor event polling code.e3a99dd
Add shebang26f328f
simscreen: unbreak the APIfb3659d
refactoring: use common LockRegion implementation92c4f48
mouse demo: fix crash when multiple buttons pressed togetherd82c270
More refactoring, common cell buffer602a473
Update SimScreen with new refactoringef4f9cc
Start of base screen refactoring.fe52739
Bump github.com/mattn/go-runewidth from 0.0.14 to 0.0.15 (#632)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show