From 309c3d594de5a053aef9d9f830170d4da953da0c Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Fri, 6 May 2022 07:20:03 -0700 Subject: Don't change middle pane origin and width when moving left split. --- pw.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) (limited to 'pw.c') diff --git a/pw.c b/pw.c index dca5cff..8311618 100644 --- a/pw.c +++ b/pw.c @@ -364,7 +364,7 @@ static void hlchar(pwstate *pw, int ch) static void drawline(pwstate *pw, const char *line, int lineno) { const char *oline = line; - size_t len = dslen(line); + size_t olen = dslen(line), len = olen; int columns = pw->columns; unsigned vsplit1 = pw->vsplit1; unsigned vsplit2 = pw->vsplit2; @@ -1208,20 +1208,15 @@ int main(int argc, char **argv) case ']': if ((int) pw.vsplit1 < pw.columns - 2) { pw.vsplit1++; - if (pw.vsplit2 > 0) { + if (pw.vsplit2 && + (int) (pw.vsplit1 + pw.vsplit2) >= pw.columns - 2) pw.vsplit2--; - pw.vs2pos++; - } pw.stat |= stat_force; } break; case '[': if (pw.vsplit1 > 0) { pw.vsplit1--; - if (pw.vsplit2 > 0) { - pw.vsplit2++; - pw.vs2pos--; - } pw.stat |= stat_force; } break; -- cgit v1.2.3