You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Six stems separated, two visible: the mixer gets a third of the window and the other panels cannot be reduced #480
StemDeck separates into six stems by default, and eight with the lead/backing
vocal split. On a 1366x768 laptop the mixer shows two of them. The rest are
behind a scrollbar, so the app's main control surface can never show the thing
it just produced.
Where the vertical space goes
Measured off a screenshot rather than the DOM, so treat these as approximate:
Region
Height
Can the user reduce it?
App bar
~100 px
no
Analysis panels (key, BPM, LUFS, presence row)
~175 px
no
Mixer
~215 px
—
Transport, click track, waveform
~230 px
no
Roughly two thirds of the window is held by panels that are always at full
height, and the mixer gets what is left. A mixer row is about 72 px, so six
stems need somewhere near 465 px — more than double what is available.
static/css/mixer.css sets min-height: 190px, which is close to what it
actually gets.
What I already tried
The library collapses, and I am using it. It is the only layout control the app
offers and it does not help here: it returns horizontal space, and this is a
vertical problem. Both screenshots below are with the library already
collapsed.
As far as I can tell there is no collapse for the analysis panels or the
transport section. daw.css carries the collapse machinery for the catalog; master.css, transport.css and mixer.css have none.
What I am not asking for
To be clear, since this could easily read as "remove clutter": every one of
those panels shows something useful. Key, BPM and tempo stability are why I
open a track at all, and the click track is the reason I can practise against
it.
The issue is that they are all mandatory at all times. I do not need the
presence percentages while I am setting fader levels, and I do not need the
waveform while I am reading the analysis. Right now the app has no way to say
that.
I am deliberately not proposing a solution. Collapsible sections, a density
option, a draggable split, layout presets — those are design calls, and the
last two reports I filed here ended with fixes better than what I would have
suggested. This one is yours to shape.
Environment
Windows 11, StemDeck 0.15.2, Windows x64 CPU-only portable build, 1366x768.
1366x768 is a common laptop resolution rather than an unusual one, so I suspect
this is not specific to my machine.
Tested it. The branch had already merged by the time I got to it, so this is main at 07f051a.
Test conditions, since they matter here. I ran the repo against a throwaway
copy of my library, so this is in a browser rather than the desktop shell.
Chrome's own chrome costs about 135px of height, which is roughly a fifth of
this screen, so my first read was unfairly harsh. Everything below is
fullscreen (F11), which is the closest I can get to the real window.
It is better. Same 1366x768, same track, six stems:
Stems visible without scrolling
0.15.2, desktop app
2
main, browser fullscreen
3
The analysis header is visibly tighter and the footer no longer reshuffles.
That is real, and I would not have guessed it from the diff.
Where it still lands for me. Three of six. Roughly, of 768px: app bar ~75,
analysis ~160, mixer ~250, transport and waveform ~230. The two panels I am not
using at that moment still take more height between them than the mixer does.
Measured off a screenshot, so treat those as approximate.
So the arithmetic changed but the shape did not: the mixer is still the only
region that absorbs the shortfall, and it is the one showing the thing the app
just produced.
One thing I noticed that may be worth weighing. The per-lane transposition
controls are excellent — that was the one feature I thought the app was missing
and I am glad it is there. But K and the +/- made each lane taller, and
lane height is exactly what is scarce here. Every future per-lane control will
pull the same way. That tension seems worth a decision rather than being
absorbed silently each time.
To be clear about what I am asking, since I said it badly the first time:
not less information. The analysis is why I open a track and the click track is
why I can practise against it. What I miss is being able to fold away whichever
of them I am not using right now — set fader levels without the presence
percentages, read the analysis without the waveform.
Still not proposing a solution, and I know you said you were not satisfied yet.
Happy to test whatever comes next; I have the environment set up now, so it is
cheap for me to retest.
There is something for this in the next release, though I want to be straight
that I do not think it is the finished answer.
Three toggles sit under the composer and collapse the analysis header, the
sections bar and the footer timeline. Each hands its height to the mixer. On a
1366x768 window with six stems:
Mixer
Lanes visible
Default
370 px
5 of 6
Analysis collapsed
443 px
6 of 6, no scrolling
All three collapsed
573 px
6 of 6
So one click gets all six lanes on screen, and all three together are worth
about 200 px.
Your report is the reason it took this shape rather than a smaller default. The
line about the panels being mandatory at all times, and not needing the presence
percentages while setting fader levels, is what made it clear the problem was
control and not size.
Two things I am not happy with yet.
It does not change what you see when you first open a track. Everything is still
there by default, so the space is something you have to go and reclaim each
time rather than something the app works out for you.
And collapsing is all or nothing per panel. You said you do not need the
presence percentages while mixing, which is one row of the analysis header, not
the whole thing. Right now you lose the key and BPM with it.
Chasing that turned up three real bugs underneath, which are also fixed: the
lanes were sized once when a track loaded and never fitted the panel again, so a
tall window left hundreds of pixels unused, and a stem name and its waveform
drifted apart as you resized, by 55 px at the bottom of the mixer in the worst
case I measured.
Leaving this open rather than closing it on a partial fix. Try the toggles when
the release lands and tell me where they fall short.
Reopening: this closed automatically on merge, from a Closes line inside one of the squashed commits. The toggles are in, but as above I do not think this is finished, so the issue should stay open.
Activity
diegoarusso commentedon Aug 28, 2026
Both with the library collapsed; the first shows the expanded state for comparison
thcp commentedon Aug 29, 2026
@diegoarusso would you mind testing this branch?
I’m experimenting with a few approaches and I’m not fully satisfied with the results yet, but this is what I have so far:
Side panel compacted:
Rebuild the studio's fixed chrome so the mixer gets the room (#491)
diegoarusso commentedon Aug 29, 2026
Tested it. The branch had already merged by the time I got to it, so this is
mainat07f051a.Test conditions, since they matter here. I ran the repo against a throwaway
copy of my library, so this is in a browser rather than the desktop shell.
Chrome's own chrome costs about 135px of height, which is roughly a fifth of
this screen, so my first read was unfairly harsh. Everything below is
fullscreen (F11), which is the closest I can get to the real window.
It is better. Same 1366x768, same track, six stems:
main, browser fullscreenThe analysis header is visibly tighter and the footer no longer reshuffles.
That is real, and I would not have guessed it from the diff.
Where it still lands for me. Three of six. Roughly, of 768px: app bar ~75,
analysis ~160, mixer ~250, transport and waveform ~230. The two panels I am not
using at that moment still take more height between them than the mixer does.
Measured off a screenshot, so treat those as approximate.
So the arithmetic changed but the shape did not: the mixer is still the only
region that absorbs the shortfall, and it is the one showing the thing the app
just produced.
One thing I noticed that may be worth weighing. The per-lane transposition
controls are excellent — that was the one feature I thought the app was missing
and I am glad it is there. But
Kand the+/-made each lane taller, andlane height is exactly what is scarce here. Every future per-lane control will
pull the same way. That tension seems worth a decision rather than being
absorbed silently each time.
To be clear about what I am asking, since I said it badly the first time:
not less information. The analysis is why I open a track and the click track is
why I can practise against it. What I miss is being able to fold away whichever
of them I am not using right now — set fader levels without the presence
percentages, read the analysis without the waveform.
Still not proposing a solution, and I know you said you were not satisfied yet.
Happy to test whatever comes next; I have the environment set up now, so it is
cheap for me to retest.
thcp commentedon Aug 30, 2026
There is something for this in the next release, though I want to be straight
that I do not think it is the finished answer.
Three toggles sit under the composer and collapse the analysis header, the
sections bar and the footer timeline. Each hands its height to the mixer. On a
1366x768 window with six stems:
So one click gets all six lanes on screen, and all three together are worth
about 200 px.
Your report is the reason it took this shape rather than a smaller default. The
line about the panels being mandatory at all times, and not needing the presence
percentages while setting fader levels, is what made it clear the problem was
control and not size.
Two things I am not happy with yet.
It does not change what you see when you first open a track. Everything is still
there by default, so the space is something you have to go and reclaim each
time rather than something the app works out for you.
And collapsing is all or nothing per panel. You said you do not need the
presence percentages while mixing, which is one row of the analysis header, not
the whole thing. Right now you lose the key and BPM with it.
Chasing that turned up three real bugs underneath, which are also fixed: the
lanes were sized once when a track loaded and never fitted the panel again, so a
tall window left hundreds of pixels unused, and a stem name and its waveform
drifted apart as you resized, by 55 px at the bottom of the mixer in the worst
case I measured.
Leaving this open rather than closing it on a partial fix. Try the toggles when
the release lands and tell me where they fall short.
thcp commentedon Aug 30, 2026
Reopening: this closed automatically on merge, from a Closes line inside one of the squashed commits. The toggles are in, but as above I do not think this is finished, so the issue should stay open.
Let the user put a panel away, and make the lanes actually fit (stemd…
Footer: scroll a loop bound, collapse everything at once, drop the Al…