v0.82.0
Textualize/textualv0.82.0Oct 3, 2024by willmcgugan
AI Summary
Introduced dynamic keymap support for user-configurable key bindings.
Key Highlights
- New keymap support for dynamic configuration
- DOMNode.is_on_screen property added
Breaking Changes
- Widget.set_loading no longer returns an awaitable
New Features
- Keymap support for user configurable key bindings
- DOMNode.is_on_screen property
- Descriptions to bindings for all internal widgets
Full Release Notes
The highlight of this release is the new [keymap](https://textual.textualize.io/api/app/#textual.app.App.set_keymap) support, which enables dynamic configuration of keys -- so you can now provide a way for users of your app to customize key bindings. Keymaps aren't documented beyond the API level at the moment. That will happen in a few releases. In the meantime, @darrenburns has written up this new feature (which he also implemented) on his blog. Check it out: https://darren.codes/posts/textual-keymaps/ See below for the full changes: ## [0.82.0] - 2024-10-03 ### Fixed - Fixed issue with screen not updating when auto_refresh was enabled https://github.com/Textualize/textual/pull/5063 - Fixed issues regarding loading indicator https://github.com/Textualize/textual/pull/5079 - Fixed issues with inspecting the lazy loaded widgets module https://github.com/Textualize/textual/pull/5080 ### Added - Added `DOMNode.is_on_screen` property https://github.com/Textualize/textual/pull/5063 - Added support for keymaps (user configurable key bindings) https://github.com/Textualize/textual/pull/5038 - Added descriptions to bindings for all internal widgets, and updated casing to be consistent https://github.com/Textualize/textual/pull/5062 ### Changed - Breaking change: `Widget.set_loading` no longer return an awaitable https://github.com/Textualize/textual/pull/5079