v0.2.0
longbridge/gpui-kitv0.2.0Oct 9, 2025by huacnlee
AI Summary
First release to crates.io featuring major refactoring of TextView/SyntaxHighlighter with async parsing, comprehensive improvements to Editor, Input, and Theme components, and numerous bug fixes.
Key Highlights
- First release published to crates.io
- TextView/SyntaxHighlighter refactored with async parsing for better performance
- Editor: Add document_colors LSP support, improve soft wrap and performance
- Input: Multiple fixes including blur unselect, scroll on select all, number input styling
- Theme: Fix Ayu theme comment color, update macos-classic dark theme, schema changes
- Bug fixes for input mark text, empty editor crash, context menu leak
Breaking Changes
- Theme schema: removed `card`, added `group_box`
New Features
- Document colors LSP support
- Async parsing for syntax highlighting
- Custom code block style support
- Styled implementation for number input
- Support for move vertical on soft wrapped lines
Full Release Notes
🚀 First release version to crates.io. ## Improvements - Refactor `tab` key to switch focus by @huacnlee (#991) ### Input & Text - Disable context menu item for disabled input by @huacnlee (#1280) - Use shape line for soft wrap lines by @huacnlee (#1293) - Fix RopeExt replace method may not on a char boundary by @huacnlee (#1295) - Update RopeExt to use LF style for line calc when `\r` present by @huacnlee (#1296) - Fix Input to unselect on blur by @huacnlee (#1303) - Avoid scroll on select all by @huacnlee (#1305) - Clean to reset selection and scroll offset by @huacnlee (#1326) - Implement styled for number input by @madcodelife (#1333) ### Editor - Add document_colors LSP by @huacnlee (#1329) - Add to support move vertical for soft wrapped lines by @huacnlee (#1312) - Avoid trigger hover on selection by @huacnlee (#1287) - Improve `slice_line` method performance by @huacnlee (#1290) - Improve TextWrapper performance by @huacnlee (#1292) - Improve line number width by max lines by @huacnlee (#1291) - Improve enter indent level performance by @huacnlee (#1304) - Fix hover definition to hide immediately by @huacnlee (#1309) - Fix Editor crash when content is empty by @huacnlee (#1314) - Split Input and Editor background color by @huacnlee (#1323) ### TextView & Highlight - Refactor TextView/SyntaxHighlighter with async parsing to improve performance by @sunli829 (#1299) - Support custom code block style by @huacnlee (#1288) ### Theme & Style - Fix Ayu theme comment color by @huacnlee (#1316) - Update macos-classic dark theme color by @huacnlee (#1320) - Update theme schema: remove `card`, add `group_box` by @huacnlee (#1321) - Fix button label overflow by @huacnlee (#1322) - Bind element ID after button creation by @madcodelife (#1325) - Let normal/active tabs share border to prevent flash by @huacnlee (#1327) ### Menu & Context - Better handle hover for menu item by @huacnlee (#1332) - Add flex property to custom popup menu items by @ihavecoke (#1335) - Improve MenuItem paddings by @huacnlee (#1339) ## Bug Fixes - Fix input mark text render by @huacnlee (#1298) - Fix Editor crash when empty string triggers placeholder by @huacnlee (#1314) - Fix context menu subscription leak by @huacnlee (#1337) - Fix UTF-8 boundary in highlighter using `clip_offset` by @xudesheng (#1317) ## Chores & Internal - use async-wry by @sunli829 (#1300) - Remove unnecessary RefCell by @sunli829 (#1301) - Remove Wef code (moved to external crate) by @Copilot (#1302) - Interpolate folder path via rust embed by @carlocorradini (#1318) - Implement styled for custom style by @madcodelife (#1319) ## New Contributors * @xudesheng made their first contribution in https://github.com/longbridge/gpui-component/pull/1317 * @carlocorradini made their first contribution in https://github.com/longbridge/gpui-component/pull/1318 **Full Changelog**: https://github.com/longbridge/gpui-component/compare/v20250925...v0.2.0