diff --git a/src/pages/Chat/index.tsx b/src/pages/Chat/index.tsx
index ea635c4..3d2ab34 100644
--- a/src/pages/Chat/index.tsx
+++ b/src/pages/Chat/index.tsx
@@ -730,16 +730,19 @@ export function Chat() {
{/* Left column: chat */}
{/* Toolbar */}
-
-
- setQuestionDirectoryOpenSessionKey((openSessionKey) =>
- openSessionKey === currentSessionKey ? null : currentSessionKey,
- )
- }
- />
+
+
+
+
+ setQuestionDirectoryOpenSessionKey((openSessionKey) =>
+ openSessionKey === currentSessionKey ? null : currentSessionKey,
+ )
+ }
+ />
+
{/* Messages Area */}
diff --git a/tests/unit/chat-artifact-panel-layout.test.tsx b/tests/unit/chat-artifact-panel-layout.test.tsx
index 34083a3..2115f3c 100644
--- a/tests/unit/chat-artifact-panel-layout.test.tsx
+++ b/tests/unit/chat-artifact-panel-layout.test.tsx
@@ -72,6 +72,8 @@ vi.mock('@/hooks/use-stick-to-bottom-instant', () => ({
useStickToBottomInstant: () => ({
contentRef: { current: null },
scrollRef: { current: null },
+ scrollToBottom: vi.fn(),
+ isAtBottom: true,
}),
}));
@@ -88,6 +90,18 @@ vi.mock('@/pages/Chat/ChatToolbar', () => ({
}));
describe('Chat artifact panel layout', () => {
+ it('keeps the chat toolbar background draggable while actions remain clickable', async () => {
+ window.electron.platform = 'darwin';
+
+ render();
+
+ const dragRegion = await screen.findByTestId('chat-toolbar-drag-region');
+ const actions = await screen.findByTestId('chat-toolbar-actions');
+
+ expect(dragRegion).toHaveClass('drag-region');
+ expect(actions).toHaveClass('no-drag');
+ });
+
it('layers the right artifact panel above the macOS drag strip', async () => {
window.electron.platform = 'darwin';