Skip to content

Commit 4b9e02e

Browse files
bloveclaude
andauthored
fix(examples-chat): responsive shell side panels at <=1024px (#240)
The demo shell pinned the threads panel (left, 240px) and timeline panel (right, 280px) as fixed-position columns with no breakpoints. At 1024px viewport both panels open the chat column shrank to ~480px; below 768px they overlapped the central chat surface and each other. Two breakpoints: - <=1024px: narrow the two panels to 200/240px so the chat keeps ~560px - <=768px: promote both panels to a centered floating sheet (gutter-aligned, rounded, shadowed) so they stack above the chat instead of crowding it Toggle behaviour is unchanged; only the geometry of the open state shifts. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 608189d commit 4b9e02e

1 file changed

Lines changed: 25 additions & 0 deletions

File tree

examples/chat/angular/src/app/shell/demo-shell.component.css

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,3 +76,28 @@
7676
flex-direction: column;
7777
gap: 8px;
7878
}
79+
80+
/* Narrow the side panels at tablet widths so the chat column keeps a usable
81+
minimum (~480px) when both panels are open. */
82+
@media (max-width: 1024px) {
83+
.demo-shell__threads-panel { width: 200px; }
84+
.demo-shell__timeline-panel { width: 240px; }
85+
}
86+
87+
/* Below tablet the fixed side panels would steal too much of the chat
88+
surface. Promote them to a centered overlay sheet — still toggle-driven,
89+
but full-width modulo gutter, and they stack above the chat instead of
90+
crowding it. */
91+
@media (max-width: 768px) {
92+
.demo-shell__threads-panel,
93+
.demo-shell__timeline-panel {
94+
left: 16px;
95+
right: 16px;
96+
width: auto;
97+
top: 72px;
98+
bottom: 112px;
99+
border: 1px solid #303540;
100+
border-radius: 10px;
101+
box-shadow: 0 6px 24px rgba(0, 0, 0, 0.45);
102+
}
103+
}

0 commit comments

Comments
 (0)