mirror of
https://codeberg.org/dnkl/foot.git
synced 2026-02-04 04:06:06 -05:00
grid: reflow: require col count > 0 when skipping line truncation
When reflowing the grid, we truncate lines with a hard linebreak after the last non-empty cell. This way we don’t reflow trailing empty cells to a new line when resizing the window to a smaller size. However, “logical” lines (i.e. those without a hard linebreak) are *not* truncated. This is to ensure we don’t trim empty cells in the middle of a logical line spanning multiple physical lines. Since newly allocated rows are initialized with linebreak=false, we need to ensure _those_ are still truncated - otherwise all that empty space under the current prompt will be reflowed. Note that this is a temporary workaround. The correct solution, I think, is to track whether a line has been printed to or not, and simply ignore (not reflow) lines that haven’t yet been touched.
This commit is contained in:
parent
37f094280b
commit
0c60bb3f29
1 changed files with 1 additions and 1 deletions
2
grid.c
2
grid.c
|
|
@ -740,7 +740,7 @@ grid_resize_and_reflow(
|
|||
}
|
||||
}
|
||||
|
||||
if (!old_row->linebreak /*&& col_count > 0*/) {
|
||||
if (!old_row->linebreak && col_count > 0) {
|
||||
/* Don’t truncate logical lines */
|
||||
col_count = old_cols;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue