feat: add optional activity header timestamps in chat settings

Add a new Chat checkbox to toggle timestamps for tool, reasoning, and justification headers (default off).
Keep assistant message footer timestamps visible and switch to a more readable compact date format.
Preserve hover timestamp overlays with chat-surface background when the new setting is enabled.
This commit is contained in:
Bohdan Triapitsyn
2026-03-04 20:08:52 +02:00
parent d1a41000ca
commit 895d1ffa9a
7 changed files with 86 additions and 48 deletions
+8
View File
@@ -498,6 +498,7 @@ interface UIStore {
eventStreamHint: string | null;
showReasoningTraces: boolean;
showTextJustificationActivity: boolean;
showActivityHeaderTimestamps: boolean;
showDeletionDialog: boolean;
autoDeleteEnabled: boolean;
autoDeleteAfterDays: number;
@@ -613,6 +614,7 @@ interface UIStore {
setEventStreamStatus: (status: EventStreamStatus, hint?: string | null) => void;
setShowReasoningTraces: (value: boolean) => void;
setShowTextJustificationActivity: (value: boolean) => void;
setShowActivityHeaderTimestamps: (value: boolean) => void;
setShowDeletionDialog: (value: boolean) => void;
setAutoDeleteEnabled: (value: boolean) => void;
setAutoDeleteAfterDays: (days: number) => void;
@@ -721,6 +723,7 @@ export const useUIStore = create<UIStore>()(
eventStreamHint: null,
showReasoningTraces: true,
showTextJustificationActivity: false,
showActivityHeaderTimestamps: false,
showDeletionDialog: true,
autoDeleteEnabled: false,
autoDeleteAfterDays: 30,
@@ -1293,6 +1296,10 @@ export const useUIStore = create<UIStore>()(
set({ showTextJustificationActivity: value });
},
setShowActivityHeaderTimestamps: (value) => {
set({ showActivityHeaderTimestamps: value });
},
setShowDeletionDialog: (value) => {
set({ showDeletionDialog: value });
},
@@ -1814,6 +1821,7 @@ export const useUIStore = create<UIStore>()(
// Note: isSettingsDialogOpen intentionally NOT persisted
showReasoningTraces: state.showReasoningTraces,
showTextJustificationActivity: state.showTextJustificationActivity,
showActivityHeaderTimestamps: state.showActivityHeaderTimestamps,
showDeletionDialog: state.showDeletionDialog,
autoDeleteEnabled: state.autoDeleteEnabled,
autoDeleteAfterDays: state.autoDeleteAfterDays,