From 823c24a7f50e698e31741df30781fde21ff2ee2b Mon Sep 17 00:00:00 2001 From: David Balderston Date: Tue, 10 Mar 2026 12:25:51 -0700 Subject: [PATCH] Move user message metadata outside the chat bubble Split the user message container so the gray bubble wraps only the message content. Render the timestamp and action buttons below the bubble on the white background to remove the large gray gap under short messages. --- apps/web/src/components/ChatView.tsx | 90 ++++++++++++++-------------- 1 file changed, 46 insertions(+), 44 deletions(-) diff --git a/apps/web/src/components/ChatView.tsx b/apps/web/src/components/ChatView.tsx index 1bd167291..ebe5c4de5 100644 --- a/apps/web/src/components/ChatView.tsx +++ b/apps/web/src/components/ChatView.tsx @@ -5416,50 +5416,52 @@ const MessagesTimeline = memo(function MessagesTimeline({ const canRevertAgentWork = revertTurnCountByUserMessageId.has(row.message.id); return (
-
- {userImages.length > 0 && ( -
- {userImages.map( - (image: NonNullable[number]) => ( -
- {image.previewUrl ? ( - - ) : ( -
- {image.name} -
- )} -
- ), - )} -
- )} - {row.message.text && ( -
-                    {row.message.text}
-                  
- )} -
+
+
+ {userImages.length > 0 && ( +
+ {userImages.map( + (image: NonNullable[number]) => ( +
+ {image.previewUrl ? ( + + ) : ( +
+ {image.name} +
+ )} +
+ ), + )} +
+ )} + {row.message.text && ( +
+                      {row.message.text}
+                    
+ )} +
+
{row.message.text && } {canRevertAgentWork && (