The branch, master has been updated
via d1e8fb33dab9d2ed2888263d98da1e8d12a4e4e5 (commit)
via 1e3a4f2331e681f6102cc6dd30249455849822ed (commit)
from 2ac1d46f467c75b5caa43409b280bc123b5824d8 (commit)
- Log -----------------------------------------------------------------
commit d1e8fb33dab9d2ed2888263d98da1e8d12a4e4e5
Merge: 1e3a4f2 2ac1d46
Author: Nicholas Marriott <[email protected]>
Commit: Nicholas Marriott <[email protected]>
Merge branch 'master' of ssh://git.code.sf.net/p/tmux/tmux-code
tty-keys.c | 1 -
1 files changed, 0 insertions(+), 1 deletions(-)
commit 1e3a4f2331e681f6102cc6dd30249455849822ed
Author: Nicholas Marriott <[email protected]>
Commit: Nicholas Marriott <[email protected]>
Do not include status line in size calculations in control mode.
---
resize.c | 29 ++++++++++++++++-------------
1 files changed, 16 insertions(+), 13 deletions(-)
diff --git a/resize.c b/resize.c
index 317110e..a560958 100644
--- a/resize.c
+++ b/resize.c
@@ -49,10 +49,12 @@ recalculate_sizes(void)
struct client *c;
struct window *w;
struct window_pane *wp;
- u_int i, j, ssx, ssy, has, limit;
- int flag;
+ u_int i, j, ssx, ssy, has, limit;
+ int flag, has_status;
RB_FOREACH(s, sessions, &sessions) {
+ has_status = options_get_number(&s->options, "status");
+
ssx = ssy = UINT_MAX;
for (j = 0; j < ARRAY_LENGTH(&clients); j++) {
c = ARRAY_ITEM(&clients, j);
@@ -61,7 +63,11 @@ recalculate_sizes(void)
if (c->session == s) {
if (c->tty.sx < ssx)
ssx = c->tty.sx;
- if (c->tty.sy < ssy)
+ if (has_status &&
+ !(c->flags & CLIENT_CONTROL) &&
+ c->tty.sy > 1 && c->tty.sy - 1 < ssy)
+ ssy = c->tty.sy - 1;
+ else if (c->tty.sy < ssy)
ssy = c->tty.sy;
}
}
@@ -71,17 +77,14 @@ recalculate_sizes(void)
}
s->flags &= ~SESSION_UNATTACHED;
- if (options_get_number(&s->options, "status")) {
- if (ssy == 0)
- ssy = 1;
- else
- ssy--;
- }
+ if (has_status && ssy == 0)
+ ssy = 1;
+
if (s->sx == ssx && s->sy == ssy)
continue;
- log_debug(
- "session size %u,%u (was %u,%u)", ssx, ssy, s->sx, s->sy);
+ log_debug("session size %u,%u (was %u,%u)", ssx, ssy, s->sx,
+ s->sy);
s->sx = ssx;
s->sy = ssy;
@@ -121,8 +124,8 @@ recalculate_sizes(void)
if (w->sx == ssx && w->sy == ssy)
continue;
- log_debug(
- "window size %u,%u (was %u,%u)", ssx, ssy, w->sx, w->sy);
+ log_debug("window size %u,%u (was %u,%u)", ssx, ssy, w->sx,
+ w->sy);
layout_resize(w, ssx, ssy);
window_resize(w, ssx, ssy);
-----------------------------------------------------------------------
Summary of changes:
resize.c | 29 ++++++++++++++++-------------
1 files changed, 16 insertions(+), 13 deletions(-)
hooks/post-receive
--
tmux
------------------------------------------------------------------------------
The Go Parallel Website, sponsored by Intel - in partnership with Geeknet,
is your hub for all things parallel software development, from weekly thought
leadership blogs to news, videos, case studies, tutorials, tech docs,
whitepapers, evaluation guides, and opinion stories. Check out the most
recent posts - join the conversation now. http://goparallel.sourceforge.net/
_______________________________________________
tmux-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tmux-cvs