renderSidebarHandle renders the sidebar toggle/resize handle. When collapsed: shows just « at top. When expanded: shows » at top, rest is empty space (draggable for resize).
(height int)
| 564 | // When collapsed: shows just « at top. |
| 565 | // When expanded: shows » at top, rest is empty space (draggable for resize). |
| 566 | func (p *chatPage) renderSidebarHandle(height int) string { |
| 567 | lines := make([]string, height) |
| 568 | |
| 569 | if p.sidebar.IsCollapsed() { |
| 570 | // Collapsed: just the toggle glyph, no vertical line |
| 571 | lines[0] = styles.MutedStyle.Render("«") |
| 572 | for i := 1; i < height; i++ { |
| 573 | lines[i] = " " |
| 574 | } |
| 575 | } else { |
| 576 | // Expanded: just the toggle at top, rest is empty space (still draggable) |
| 577 | lines[0] = styles.MutedStyle.Render("»") |
| 578 | for i := 1; i < height; i++ { |
| 579 | lines[i] = " " |
| 580 | } |
| 581 | } |
| 582 | |
| 583 | return strings.Join(lines, "\n") |
| 584 | } |
| 585 | |
| 586 | func (p *chatPage) SetSize(width, height int) tea.Cmd { |
| 587 | p.width = width |
no test coverage detected