From ad27b7decd61d353031aeac5de01d44bcb374f26 Mon Sep 17 00:00:00 2001 From: nicm Date: Sat, 11 May 2019 06:34:56 +0000 Subject: [PATCH] Do not reduce window height by status line height for control mode clients, from George Nachman. --- resize.c | 5 +++-- status.c | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/resize.c b/resize.c index caac74ba..0e0b070d 100644 --- a/resize.c +++ b/resize.c @@ -174,11 +174,12 @@ recalculate_sizes(void) TAILQ_FOREACH(c, &clients, entry) { if (ignore_client_size(c)) continue; - if (c->tty.sy <= status_line_size(c)) + s = c->session; + if (c->tty.sy <= s->statuslines || (c->flags & CLIENT_CONTROL)) c->flags |= CLIENT_STATUSOFF; else c->flags &= ~CLIENT_STATUSOFF; - c->session->attached++; + s->attached++; } /* Walk each window and adjust the size. */ diff --git a/status.c b/status.c index 332f8fd6..ef8cf14d 100644 --- a/status.c +++ b/status.c @@ -203,7 +203,7 @@ status_at_line(struct client *c) { struct session *s = c->session; - if (c->flags & CLIENT_STATUSOFF) + if (c->flags & (CLIENT_STATUSOFF|CLIENT_CONTROL)) return (-1); if (s->statusat != 1) return (s->statusat); @@ -216,7 +216,7 @@ status_line_size(struct client *c) { struct session *s = c->session; - if (c->flags & CLIENT_STATUSOFF) + if (c->flags & (CLIENT_STATUSOFF|CLIENT_CONTROL)) return (0); return (s->statuslines); }