From daff21481affb5ef10ec3cee68e2dae0a5b618bb Mon Sep 17 00:00:00 2001 From: Arjun <6592213+arkml@users.noreply.github.com> Date: Thu, 28 May 2026 01:07:12 +0530 Subject: [PATCH] show recording status in sidebar --- .../src/components/sidebar-content.tsx | 37 +++++++++++++------ 1 file changed, 25 insertions(+), 12 deletions(-) diff --git a/apps/x/apps/renderer/src/components/sidebar-content.tsx b/apps/x/apps/renderer/src/components/sidebar-content.tsx index dbb5edb5..0368b1da 100644 --- a/apps/x/apps/renderer/src/components/sidebar-content.tsx +++ b/apps/x/apps/renderer/src/components/sidebar-content.tsx @@ -691,10 +691,20 @@ export function SidebarContentPanel({ // Single preview shown as a sublabel on the Email / Meetings nav buttons. const previewEmail = emailThreads[0] const previewMeeting = meetings[0] - const meetingIsRecording = previewMeeting != null - && recordingMeetingSource === previewMeeting.source - && (meetingRecordingState === 'recording' || meetingRecordingState === 'connecting' || meetingRecordingState === 'stopping') - const meetingIsBusy = meetingIsRecording && (meetingRecordingState === 'connecting' || meetingRecordingState === 'stopping') + // Drive the recording indicator off the global recording state — there is only + // one active recording, so it must show even for ad-hoc recordings or meetings + // that aren't the upcoming one previewed here. + const meetingIsRecording = meetingRecordingState === 'recording' + || meetingRecordingState === 'connecting' + || meetingRecordingState === 'stopping' + const meetingIsBusy = meetingRecordingState === 'connecting' || meetingRecordingState === 'stopping' + // Title of the meeting being recorded, when it's the upcoming one we preview. + const recordingMeeting = previewMeeting != null && recordingMeetingSource === previewMeeting.source + ? previewMeeting + : null + const meetingSublabel = meetingIsRecording + ? (recordingMeeting?.summary ?? 'Recording…') + : (previewMeeting ? `${previewMeeting.summary} · ${formatMeetingTime(previewMeeting)}` : null) return ( @@ -750,19 +760,22 @@ export function SidebarContentPanel({ - +
Meetings - {previewMeeting && ( - - {meetingIsRecording ? previewMeeting.summary : `${previewMeeting.summary} · ${formatMeetingTime(previewMeeting)}`} + {meetingSublabel && ( + + {meetingSublabel} )}
- {previewMeeting && (meetingIsRecording ? ( + {meetingIsRecording ? (
@@ -786,7 +799,7 @@ export function SidebarContentPanel({
- ) : ( + ) : previewMeeting ? (
@@ -819,7 +832,7 @@ export function SidebarContentPanel({ )}
- ))} + ) : null}