[ 
https://issues.apache.org/jira/browse/CAMEL-26783?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Claus Ibsen reassigned CAMEL-26783:
-----------------------------------

    Assignee: Claus Ibsen

> camel-jbang - Upgrade TamboUI to 0.7.0
> --------------------------------------
>
>                 Key: CAMEL-26783
>                 URL: https://issues.apache.org/jira/browse/CAMEL-26783
>             Project: Camel
>          Issue Type: Dependency upgrade
>          Components: camel-jbang
>            Reporter: Claus Ibsen
>            Assignee: Claus Ibsen
>            Priority: Major
>             Fix For: 4.24.0
>
>
> TamboUI 0.7.0 was released on 2026-11-09 and is on Maven Central (we are on 
> 0.6.0, see CAMEL-25580).
> Release notes: https://github.com/tamboui/tamboui/releases/tag/v0.7.0
> h3. Kitty keyboard protocol: better key bindings
> 0.7.0 supports the [Kitty keyboard 
> protocol|https://sw.kovidgoyal.net/kitty/keyboard-protocol/] (tamboui#592, 
> #610). The default AUTO mode enables it, and a terminal without support 
> ignores it and stays in legacy mode. With it, key events carry reliable 
> modifiers (ctrl, alt, shift, super), so combinations that legacy terminals 
> send as plain Enter (or not at all) can be told apart:
> * *AI prompt:* Ctrl+N inserts a line break today, because "terminals deliver 
> Shift+Enter and Alt+Enter as plain Enter or nothing" ({{AiPanel}}). Use 
> Shift+Enter (and Alt+Enter) for a line break, and keep Ctrl+N as the fallback 
> for terminals without the protocol.
> * *Ctrl+Enter:* for example to send or apply in the editors and prompts 
> (source editor, Timeline AI prompt, expression evaluation).
> * Check the other places where a binding was picked around missing modifiers, 
> and the help/footer texts that list them.
> * {{ShellPanel}} encodes TamboUI key events as ANSI sequences for the 
> embedded terminal; check that modifiers are encoded.
> * Bindings files are now loaded deterministically (last one wins), with an OS 
> overlay {{<binding>-<os>.properties}} (tamboui#627), e.g. Cmd on macOS 
> instead of Ctrl.
> h3. Fixes that may let us remove workarounds
> Check each against our code and remove the Camel side where it is no longer 
> needed:
> * {{KeyEvent.isTyping()}} and {{TextEditing}} (tamboui#612): our own text 
> input handling (AI prompt, filters, captions, popups) could move to it. 
> Word-wise editing (Ctrl+Left/Right, Ctrl+Backspace/Delete, tamboui#616) then 
> comes for free.
> * Key decoding: one key press running a handler several times (tamboui#481), 
> sequences decoded as other keys or swallowing the next key (tamboui#517), 
> ESC-prefix Alt keys / modifyOtherKeys / legacy Alt+control (tamboui#611), vim 
> and emacs bindings fixes (tamboui#522, #492).
> * Rendering: {{text()}} with {{\n}} renders each line on its own row 
> (tamboui#469), wide characters, VS16 and grapheme clusters (tamboui#478, 
> #619), screen cleared before the first frame (tamboui#618), markdown 
> quotes/tables in lists and ellipsis styling (tamboui#503, #520), canvas and 
> chart hangs (tamboui#526, #603, #490), layout spacing and {{Fill(0)}} 
> (tamboui#468).
> * Tables: content-based column widths with {{Constraint.fit()}} (tamboui#620) 
> may replace some of our own column width code.
> h3. Behaviour changes to check
> The release notes warn that these fixes can break an app that worked around 
> the old behaviour:
> * The focused element now receives Tab before focus cycling (tamboui#617).
> * Right and middle mouse PRESS events now reach element handlers 
> (tamboui#622).
> h3. Not in 0.7.0
> These upstream PRs from the Camel side are still open, so the workarounds 
> stay for now: {{Paragraph.lineCount(width)}} (tamboui#545, our 
> {{TuiHelper.wrappedRows}}), {{Text.fromAnsi}} (tamboui#542), and the YAML 
> highlighter fixes (tamboui#546, #547).



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to