diff options
| author | user <user@clank> | 2026-08-11 19:35:03 +0200 |
|---|---|---|
| committer | user <user@clank> | 2026-08-11 19:35:03 +0200 |
| commit | 29eadcc1f06bfc5b06ea8a56aa1a18da318a049f (patch) | |
| tree | 63cf440239d4fcc07f93b8a1791b2eff370330a9 /zellij-integration-tests/tests/snapshots/resize__resize_decrease_down.snap | |
| parent | sl0p: keep expanding possible after the pane count changes (diff) | |
| download | sl0ppij-29eadcc1f06bfc5b06ea8a56aa1a18da318a049f.tar.gz sl0ppij-29eadcc1f06bfc5b06ea8a56aa1a18da318a049f.tar.xz sl0ppij-29eadcc1f06bfc5b06ea8a56aa1a18da318a049f.zip | |
sl0p: resolve responsive layouts from current state, not a remembered position
Every bug this feature has had came from the same place: it remembered the swap
layout position that was active before collapsing, and replayed it to expand.
Remembered positions stop applying when the pane count changes, are only stable
while nothing is inserted, and a failed apply left the state claiming a
transition that never happened.
Both directions now resolve fresh. Collapsing picks the configured layout, or a
synthesized stack if that one is missing OR cannot currently apply -- a
`stacked` layout with min_panes=4 and three panes open used to be found, fail
its constraint, and give up. Expanding picks BASE when it still applies, since
that reproduces the user's actual layout, and otherwise a synthesized grid.
Both chains end in an unconstrained layout, so neither can come up empty.
The only remaining state is one bool, flipped only after a layout was applied.
Also stops consulting is_tiled_damaged. It is meant to mean "the user
rearranged panes by hand" but is equally set when a relayout finds nothing
applicable, which happens on the first pane added to a tab with no usable swap
layout and then never clears -- it disabled this feature in four distinct
situations. It protected little regardless: expanding applies BASE or a grid,
so a manual arrangement does not survive a round trip either way.
Synthesized layouts are created once and reused; the test asserts the layout
list does not grow across repeated collapse/expand cycles, since they are now
appended lazily in both directions.
Diffstat (limited to 'zellij-integration-tests/tests/snapshots/resize__resize_decrease_down.snap')
0 files changed, 0 insertions, 0 deletions
