Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 13 additions & 5 deletions desktop/src/features/channels/ui/BotActivityBar.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ export function BotActivityComposerAction({
className={cn(
"inline-flex items-center justify-center rounded-full border border-border/60 bg-background font-medium text-muted-foreground transition-colors hover:border-primary/30 hover:bg-primary/5 hover:text-foreground focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring data-[state=open]:border-primary/40 data-[state=open]:bg-primary/10 data-[state=open]:text-primary",
isInline
? "h-7 min-w-0 gap-2 overflow-visible border-transparent bg-transparent px-0 text-xs font-semibold leading-none shadow-none hover:border-transparent hover:bg-transparent data-[state=open]:border-transparent data-[state=open]:bg-transparent"
? "h-7 min-w-0 max-w-full gap-2 overflow-hidden border-transparent bg-transparent px-0 text-left text-xs font-semibold leading-none shadow-none hover:border-transparent hover:bg-transparent data-[state=open]:border-transparent data-[state=open]:bg-transparent"
: "h-9 min-w-9 gap-1.5 px-2 text-xs",
)}
data-testid="bot-activity-composer-trigger"
Expand All @@ -177,7 +177,7 @@ export function BotActivityComposerAction({
onMouseLeave={closeWithDelay}
type="button"
>
<span className="flex items-center overflow-visible py-px -space-x-1">
<span className="flex shrink-0 items-center overflow-visible py-px -space-x-1">
{typingAgents.slice(0, 2).map((agent) => (
<UserAvatar
avatarUrl={agentAvatarUrl(agent)}
Expand All @@ -193,12 +193,20 @@ export function BotActivityComposerAction({
))}
</span>
{typingAgents.length > 2 ? (
<span className="text-2xs leading-none">
<span className="shrink-0 text-2xs leading-none">
+{typingAgents.length - 2}
</span>
) : null}
<span className={cn(isInline ? "max-w-40 truncate" : "sr-only")}>
{isInline ? <Shimmer>{visibleStatusLabel}</Shimmer> : "working"}
<span
className={cn(isInline ? "min-w-0 flex-1 truncate" : "sr-only")}
>
{isInline ? (
<Shimmer className="max-w-full truncate">
{visibleStatusLabel}
</Shimmer>
) : (
"working"
)}
</span>
{isInline ? null : (
<Loader2 className="h-4 w-4 shrink-0 animate-spin opacity-70" />
Expand Down
2 changes: 1 addition & 1 deletion desktop/src/features/channels/ui/ChannelPane.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -785,7 +785,7 @@ export const ChannelPane = React.memo(function ChannelPane({
<div className="h-7 overflow-visible bg-background px-5 pb-1 pt-0">
<div className="flex h-full w-full items-center gap-2 overflow-visible">
{hasComposerBotActivity ? (
<div className="shrink-0 overflow-visible">
<div className="min-w-0 flex-1 overflow-hidden">
<BotActivityComposerAction
agents={activityAgents}
channelId={activeChannel?.id ?? null}
Expand Down
5 changes: 4 additions & 1 deletion desktop/src/features/messages/ui/MessageThreadPanel.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,7 @@ const EMPTY_THREAD_REPLIES: MainTimelineEntry[] = [];
const THREAD_PANEL_MESSAGE_GUTTER_CLASS = "px-2";
const THREAD_PANEL_COMPOSER_GUTTER_CLASS = "px-5";
const THREAD_PANEL_SUMMARY_INDENT_OFFSET_REM = -0.125;

type MessageThreadPanelSkeletonProps = {
isSinglePanelView?: boolean;
layout?: "standalone" | "split";
Expand Down Expand Up @@ -902,7 +903,9 @@ export function MessageThreadPanel({
>
<div className="mx-auto flex h-full w-full max-w-4xl items-center gap-2">
{toolbarExtraActions ? (
<div className="shrink-0">{toolbarExtraActions}</div>
<div className="min-w-0 flex-1 overflow-hidden">
{toolbarExtraActions}
</div>
) : null}
{threadTypingPubkeys.length > 0 ? (
<TypingIndicatorRow
Expand Down
Loading