authorgravatar for 46866023+GuilhermeVieiraDev@users.noreply.github.comGuilherme Vieira <46866023+GuilhermeVieiraDev@users.noreply.github.com> 2026-09-04 06:25:37+01:00
committergravatar for noreply@github.comGitHub <noreply@github.com> 2026-09-04 01:25:37-04:00
logf559fe0ba6fb5950bd14a2404f10b9c94b33f696
tree61a8d6e0769fcc25395e4bdaddf3d17a59548c2d
parent39abb9d1d6ae6501c573b9dc0cb9c28e2f75659c
signature Signed by PGP key B5690EEEBB952194

fix(web): show context meter in compact composer (#9430)


1 files changed, 7 insertions(+), 4 deletions(-)

apps/web/src/components/chat/ChatComposer.tsx+7-4
...@@ -1057,7 +1057,6 @@ const ComposerFooterPrimaryActions = memo(function ComposerFooterPrimaryActions(...@@ -1057,7 +1057,6 @@ const ComposerFooterPrimaryActions = memo(function ComposerFooterPrimaryActions(
1057 hasSendableContent: boolean;1057 hasSendableContent: boolean;
1058 preserveComposerFocusOnPointerDown?: boolean;1058 preserveComposerFocusOnPointerDown?: boolean;
1059 showSendWhileRunning?: boolean;1059 showSendWhileRunning?: boolean;
1060 showSecondaryStatus: boolean;
1061 onPreviousPendingQuestion: () => void;1060 onPreviousPendingQuestion: () => void;
1062 onInterrupt: () => void;1061 onInterrupt: () => void;
1063 onImplementPlanInNewThread: () => void;1062 onImplementPlanInNewThread: () => void;
...@@ -1067,7 +1066,7 @@ const ComposerFooterPrimaryActions = memo(function ComposerFooterPrimaryActions(...@@ -1067,7 +1066,7 @@ const ComposerFooterPrimaryActions = memo(function ComposerFooterPrimaryActions(
1067}) {1066}) {
1068 return (1067 return (
1069 <>1068 <>
1070 {props.showSecondaryStatus && props.activeContextWindow ? (1069 {props.activeContextWindow ? (
1071 <ContextWindowMeter1070 <ContextWindowMeter
1072 usage={props.activeContextWindow}1071 usage={props.activeContextWindow}
1073 modelDisplayName={props.activeThreadModelDisplayName}1072 modelDisplayName={props.activeThreadModelDisplayName}
...@@ -5323,7 +5322,12 @@ export const ChatComposer = memo(function ChatComposer(props: ChatComposerProps)...@@ -5323,7 +5322,12 @@ export const ChatComposer = memo(function ChatComposer(props: ChatComposerProps)
5323 className={cn(5322 className={cn(
5324 "relative",5323 "relative",
5325 isComposerResting && "flex min-w-0 items-center gap-1",5324 isComposerResting && "flex min-w-0 items-center gap-1",
5326 isComposerResting && (showComposerAttachAction ? "pr-20" : "pr-12"),5325 isComposerResting &&
5326 (settings.contextWindowMeterEnabled && activeContextWindow
5327 ? "pr-28"
5328 : showComposerAttachAction
5329 ? "pr-20"
5330 : "pr-12"),
5327 )}5331 )}
5328 >5332 >
5329 <ComposerPromptEditor5333 <ComposerPromptEditor
...@@ -5514,7 +5518,6 @@ export const ChatComposer = memo(function ChatComposer(props: ChatComposerProps)...@@ -5514,7 +5518,6 @@ export const ChatComposer = memo(function ChatComposer(props: ChatComposerProps)
5514 hasSendableContent={composerSendState.hasSendableContent}5518 hasSendableContent={composerSendState.hasSendableContent}
5515 preserveComposerFocusOnPointerDown={isMobileViewport || isComposerResting}5519 preserveComposerFocusOnPointerDown={isMobileViewport || isComposerResting}
5516 showSendWhileRunning={isMobileViewport}5520 showSendWhileRunning={isMobileViewport}
5517 showSecondaryStatus={!isComposerResting}
5518 onPreviousPendingQuestion={onPreviousActivePendingUserInputQuestion}5521 onPreviousPendingQuestion={onPreviousActivePendingUserInputQuestion}
5519 onInterrupt={handleInterruptPrimaryAction}5522 onInterrupt={handleInterruptPrimaryAction}
5520 onImplementPlanInNewThread={handleImplementPlanInNewThreadPrimaryAction}5523 onImplementPlanInNewThread={handleImplementPlanInNewThreadPrimaryAction}