You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2026/06/24 16:32:44 UTC
(camel) branch main updated: CAMEL-23818: fix stray characters when scrolling Actions menu over emoji rows
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new 2d7da6444948 CAMEL-23818: fix stray characters when scrolling Actions menu over emoji rows
2d7da6444948 is described below
commit 2d7da644494856adc345b242dcd884a7f0f27ca0
Author: Karol Krawczyk <10...@users.noreply.github.com>
AuthorDate: Wed Jun 24 18:32:37 2026 +0200
CAMEL-23818: fix stray characters when scrolling Actions menu over emoji rows
Swap three Actions menu (F2) emoji labels from text-default + VS16
presentation sequences to plain 2-wide emoji. TamboUI mismeasures
base-glyph + VS16 sequences as 1-wide, causing the buffer to drift
out of sync and leaving stray characters when scrolling. Root cause
is fixed upstream in tamboui/tamboui#388; revert this workaround
once that TamboUI release is adopted.
Closes #24235
Co-Authored-By: Claude Opus 4.8 (1M context) <no...@anthropic.com>
---
.../camel/dsl/jbang/core/commands/tui/ActionsPopup.java | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ActionsPopup.java b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ActionsPopup.java
index de88e90a3301..e5cf39f49ce5 100644
--- a/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ActionsPopup.java
+++ b/dsl/camel-jbang/camel-jbang-plugin-tui/src/main/java/org/apache/camel/dsl/jbang/core/commands/tui/ActionsPopup.java
@@ -767,16 +767,17 @@ class ActionsPopup {
frame.renderWidget(Clear.INSTANCE, popup);
String divider = " ─────────────────────────────────";
- // extra space after ⌨️ because it renders narrower than other emoji
+ // CAMEL-23818: use plain 2-wide emoji here. TamboUI mismeasures base-glyph + VS16
+ // sequences as 1-wide (fixed upstream in tamboui/tamboui#388), which left stray chars.
String keystrokeLabel = keystrokesEnabled.get()
- ? " ⌨️ Hide Keystrokes"
- : " ⌨️ Show Keystrokes";
+ ? " 🔤 Hide Keystrokes"
+ : " 🔤 Show Keystrokes";
String stopLabel = stopAllPopup.hasBothGroups()
? " 🛑 Stop All..."
: " 🛑 Stop All";
String tapeLabel = tapeRecordingActive.get()
- ? " ⏹️ Stop Tape Recording (Ctrl+R)"
- : " ⏺️ Start Tape Recording (Ctrl+R)";
+ ? " 🛑 Stop Tape Recording (Ctrl+R)"
+ : " 🔴 Start Tape Recording (Ctrl+R)";
List<ListItem> items = new ArrayList<>();
// Group 1: User Actions