Releases: Textualize/textual
Releases · Textualize/textual
The not April Fool Release
The highlight of this release is the new inline
feature, which allows you to run Textual apps below the prompt, rather than in application mode.
We also have a bunch of additional languages for the TextArea widget, and some fixes.
Screen.Recording.2024-03-29.at.12.52.18.mov
Screen.Recording.2024-03-28.at.13.05.07.mov
[0.55.0] - 2024-04-1
Fixed
- Fix priority bindings not appearing in footer when key clashes with focused widget #4342
- Reverted auto-width change #4369
Changed
- Exceptions inside
Widget.compose
or workers weren't bubbling up in tests #4282 - Fixed
DataTable
scrolling issues by changingmax-height
back to 100% #4286 - Fixed
Button
not rendering correctly with console markup #4328
Added
The progress release
The ProgressBar widget now has a much improved ETA calculation
[0.54.0] - 2023-03-26
Fixed
- Fixed a crash in
TextArea
when undoing an edit to a selection the selection was made backwards #4301 - Fixed issue with flickering scrollbars #4315
- Fixed issue where narrow TextArea would repeatedly wrap due to scrollbar appearing/disappearing #4334
- Fix progress bar ETA not updating when setting
total
reactive #4316
Changed
The focused hot-fix
The focused release
Lots of refinements and enhancements here!
[0.53.0] - 2023-03-18
Added
- Mapping of ANSI colors to hex codes configurable via
App.ansi_theme_dark
andApp.ansi_theme_light
#4192 Pilot.resize_terminal
to resize the terminal in testing #4212- Added
sort_children
method #4244 - Support for pseudo-classes in nested TCSS #4039
Fixed
- Fixed
TextArea.code_editor
missing recently added attributes #4172 - Fixed
Sparkline
not working with data in adeque
#3899 - Tooltips are now cleared when the related widget is no longer under them #3045
- Simplified tree-sitter highlight queries for HTML, which also seems to fix segfault issue #4195
- Fixed
DirectoryTree.path
no longer reacting to new values #4208 - Fixed content size cache with Pretty widget #4211
- Fixed
grid-gutter
interaction with Pretty widget #4219 - Fixed
TextArea
styling issue on alternate screens #4220 - Fixed writing to invisible
RichLog
#4223 - Fixed
RichLog.min_width
not being used #4223 - Rename
CollapsibleTitle.action_toggle
toaction_toggle_collapsible
to fix clash withDOMNode.action_toggle
#4221 - Markdown component classes weren't refreshed when watching for CSS #3464
- Rename
Switch.action_toggle
toaction_toggle_switch
to fix clash withDOMNode.action_toggle
#4262 - Fixed
OptionList.OptionHighlighted
leaking out ofSelect
#4224 - Fixed
Tab
enable/disable messages leaking intoTabbedContent
#4233 - Fixed a style leak from
TabbedContent
#4232 - Fixed active hidden scrollbars not releasing the mouse #4274
- Fixed the mouse not being released when hiding a
TextArea
while mouse selection is happening #4292 - Fix mouse scrolling not working when mouse cursor is over a disabled child widget #4242
Changed
- Clicking a non focusable widget focus ancestors #4236
- BREAKING: widget class names must start with a capital letter or an underscore
_
#4252 - BREAKING: for many widgets, messages are now sent when programmatic changes that mirror user input are made #4256
- Changed
Collapsible
- Changed
Markdown
- Changed
Select
- Changed
SelectionList
- Changed
TabbedContent
- Changed
Tabs
- Changed
TextArea
- Changed
Tree
- Changed
- Improved ETA calculation for ProgressBar #4271
- BREAKING:
AppFocus
andAppBlur
are now posted when the terminal window gains or loses focus, if the terminal supports this #4265- When the terminal window loses focus, the currently-focused widget will also lose focus.
- When the terminal window regains focus, the previously-focused widget will regain focus.
- TextArea binding for ctrl+k will now delete the line if the line is empty #4277
- The active tab (in
Tabs
) / tab pane (inTabbedContent
) can now be unset #4241
The sin tax release
Fixes a SyntaxWarning
[0.52.1] - 2024-02-20
Fixed
- Fixed the check for animation level in
LoadingIndicator
#4188
The Envy release
A few modest changes, with a focus on env vars for some reason.
[0.52.0] - 2024-02-19
Changed
- Textual now writes to stderr rather than stdout #4177
Added
- Added an
asyncio
lock attributeWidget.lock
to be used to synchronize widget state #4134 - Added support for environment variable
TEXTUAL_ANIMATIONS
to control what animations Textual displays #4062 - Add attribute
App.animation_level
to control whether animations on that app run or not #4062 - Added support for a
TEXTUAL_SCREENSHOT_LOCATION
environment variable to specify the location of an automated screenshot #4181 - Added support for a
TEXTUAL_SCREENSHOT_FILENAME
environment variable to specify the filename of an automated screenshot #4181 - Added an
asyncio
lock attributeWidget.lock
to be used to synchronize widget state #4134 Widget.remove_children
now accepts a CSS selector to specify which children to remove #4183Widget.batch
combines widget locking and app update batching #4183
The American friends release
Mostly fixes in this updated.
Note the breaking change below...
[0.51.0] - 2024-02-15
Added
- TextArea now has
read_only
mode #4151 - Add some syntax highlighting to TextArea default theme #4149
- Add undo and redo to TextArea #4124
- Added support for command palette command discoverability #4154
Fixed
- Fixed out-of-view
Tab
not being scrolled into view whenTabs.active
is assigned #4150 - Fixed
TabbedContent.TabActivate
not being posted whenTabbedContent.active
is assigned #4150
Changed
The tiny tint release
The half a century release
A relatively small release for the benefit of an app we are going to release soon.
[0.50.0] - 2024-02-08
Fixed
- Fixed issue with ANSI colors not being converted to truecolor #4138
- Fixed duplicate watch methods being attached to DOM nodes #4030
- Fixed using
watch
to create additional watchers would trigger other watch methods #3878
Added
- Added support for configuring dark and light themes for code in
Markdown
#3997
The one release to bind them all release
This release adds data binding, which can help you write lean code. There are also a few new methods, fixes, and enhancements. See below for the full details...
[0.49.0] - 2024-02-07
Fixed
- Fixed scrolling in long
OptionList
by adding max height of 100% #4021 - Fixed
DirectoryTree.clear_node
not clearing the node specified #4122
Changed
DirectoryTree.reload
andDirectoryTree.reload_node
now preserve state when reloading #4056- Fixed a crash in the TextArea when performing a backward replace #4126
- Fixed selection not updating correctly when pasting while there's a non-zero selection #4126
- Breaking change:
TextArea
will not useEscape
to shift focus if thetab_behaviour
is the default #4110 TextArea
cursor will now be invisible before first focus #4128- Fix toggling
TextArea.cursor_blink
reactive when widget does not have focus #4128