This commit is contained in:
2026-01-29 12:17:09 +01:00
parent 845c1134fe
commit 00a90f1c15
3 changed files with 46 additions and 13 deletions

View File

@@ -158,7 +158,7 @@ pub fn render(frame: &mut Frame, app: &App, link: &LinkState, snapshot: &Sequenc
};
let [header_area, _padding, body_area, _bottom_padding, footer_area] = Layout::vertical([
Constraint::Length(1),
Constraint::Length(header_height(padded.width)),
Constraint::Length(1),
Constraint::Fill(1),
Constraint::Length(1),
@@ -225,6 +225,10 @@ pub fn render(frame: &mut Frame, app: &App, link: &LinkState, snapshot: &Sequenc
}
}
fn header_height(width: u16) -> u16 {
if width >= 80 { 1 } else { 2 }
}
fn render_side_panel(frame: &mut Frame, app: &App, area: Rect) {
let focused = app.panel.focus == PanelFocus::Side;
match &app.panel.side {
@@ -252,17 +256,41 @@ fn render_header(
let bank = &app.project_state.project.banks[app.editor_ctx.bank];
let pattern = &bank.patterns[app.editor_ctx.pattern];
// Layout: [Transport] [Live] [Tempo] [Bank] [Pattern] [Stats]
let [transport_area, live_area, tempo_area, bank_area, pattern_area, stats_area] =
Layout::horizontal([
Constraint::Min(12),
Constraint::Length(9),
Constraint::Min(14),
Constraint::Fill(1),
Constraint::Fill(2),
Constraint::Min(20),
])
.areas(area);
let (transport_area, live_area, tempo_area, bank_area, pattern_area, stats_area) =
if area.height == 1 {
let [t, l, tp, b, p, s] = Layout::horizontal([
Constraint::Min(12),
Constraint::Length(9),
Constraint::Min(14),
Constraint::Fill(1),
Constraint::Fill(2),
Constraint::Min(20),
])
.areas(area);
(t, l, tp, b, p, s)
} else {
let [line1, line2] = Layout::vertical([
Constraint::Length(1),
Constraint::Length(1),
])
.areas(area);
let [t, l, tp, s] = Layout::horizontal([
Constraint::Min(12),
Constraint::Length(9),
Constraint::Fill(1),
Constraint::Min(20),
])
.areas(line1);
let [b, p] = Layout::horizontal([
Constraint::Fill(1),
Constraint::Fill(2),
])
.areas(line2);
(t, l, tp, b, p, s)
};
// Transport block
let (transport_bg, transport_text) = if app.playback.playing {