Upgrade Ratatui to 0.30.2 (#35959)

## What changed

- Upgrade `ratatui`, `ratatui-macros`, `crossterm`, and `ansi-to-tui`, and adapt the TUI to their updated rendering, backend, color-conversion, and cell APIs.
- Use Ratatui's cell-width and continuation-cell metadata when mapping OSC 8 hyperlinks so links remain aligned across wrapped wide glyphs and halfwidth characters with dakuten.
- Preserve explicit hyperlinks in the sign-in success screen and empty MCP state without embedding escape sequences in the text passed to Ratatui.

## Testing

- Add regression coverage for hyperlink placement across wide glyphs and halfwidth dakuten, hyperlink preservation in onboarding and MCP output, and display-width handling.

GitOrigin-RevId: 8460873e5a266923acd0417bc46264845eab0134
This commit is contained in:
Charlie Marsh authored and copyberry committed 2026-07-29 13:53:15 +00:00
1 parent e1895710ad
commit 00cb5c465b
43 files changed
+1097 -303

No files matched your search

+2 -1
View File
@@ -7,6 +7,7 @@ use ratatui::layout::Rect;
use ratatui::text::Line;
use ratatui::text::Span;
use ratatui::widgets::Paragraph;
use ratatui::widgets::Widget;
use ratatui::widgets::WidgetRef;
use crate::render::Insets;
@@ -109,7 +110,7 @@ impl<'a> Renderable for Span<'a> {
impl<'a> Renderable for Line<'a> {
fn render(&self, area: Rect, buf: &mut Buffer) {
WidgetRef::render_ref(self, area, buf);
Widget::render(self, area, buf);
}
fn desired_height(&self, _width: u16) -> u16 {
1