mirror of
https://github.com/tmux/tmux.git
synced 2026-03-13 03:55:45 +00:00
Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
cb75ec25c8 | ||
|
|
7d06216289 |
4
CHANGES
4
CHANGES
@@ -1,7 +1,3 @@
|
|||||||
CHANGES FROM 2.9 to 2.9a
|
|
||||||
|
|
||||||
* Fix bugs in select-pane and the main-horizontal and main-vertical layouts.
|
|
||||||
|
|
||||||
CHANGES FROM 2.8 to 2.9
|
CHANGES FROM 2.8 to 2.9
|
||||||
|
|
||||||
* Attempt to preserve horizontal cursor position as well as vertical with
|
* Attempt to preserve horizontal cursor position as well as vertical with
|
||||||
|
|||||||
@@ -66,7 +66,7 @@ cmd_select_pane_redraw(struct window *w)
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
TAILQ_FOREACH(c, &clients, entry) {
|
TAILQ_FOREACH(c, &clients, entry) {
|
||||||
if (c->session == NULL || (c->flags & CLIENT_CONTROL))
|
if (c->session == NULL)
|
||||||
continue;
|
continue;
|
||||||
if (c->session->curw->window == w && tty_window_bigger(&c->tty))
|
if (c->session->curw->window == w && tty_window_bigger(&c->tty))
|
||||||
server_redraw_client(c);
|
server_redraw_client(c);
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# configure.ac
|
# configure.ac
|
||||||
|
|
||||||
AC_INIT([tmux], 2.9a)
|
AC_INIT([tmux], 2.9)
|
||||||
AC_PREREQ([2.60])
|
AC_PREREQ([2.60])
|
||||||
|
|
||||||
AC_CONFIG_AUX_DIR(etc)
|
AC_CONFIG_AUX_DIR(etc)
|
||||||
|
|||||||
62
layout-set.c
62
layout-set.c
@@ -213,7 +213,7 @@ layout_set_main_h(struct window *w)
|
|||||||
mainh = w->sy - otherh;
|
mainh = w->sy - otherh;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Work out what width is needed. */
|
/* Work out what height is needed. */
|
||||||
sx = (n * (PANE_MINIMUM + 1)) - 1;
|
sx = (n * (PANE_MINIMUM + 1)) - 1;
|
||||||
if (sx < w->sx)
|
if (sx < w->sx)
|
||||||
sx = w->sx;
|
sx = w->sx;
|
||||||
@@ -221,7 +221,7 @@ layout_set_main_h(struct window *w)
|
|||||||
/* Free old tree and create a new root. */
|
/* Free old tree and create a new root. */
|
||||||
layout_free(w);
|
layout_free(w);
|
||||||
lc = w->layout_root = layout_create_cell(NULL);
|
lc = w->layout_root = layout_create_cell(NULL);
|
||||||
layout_set_size(lc, sx, mainh + otherh, 0, 0);
|
layout_set_size(lc, sx, mainh + otherh + 1, 0, 0);
|
||||||
layout_make_node(lc, LAYOUT_TOPBOTTOM);
|
layout_make_node(lc, LAYOUT_TOPBOTTOM);
|
||||||
|
|
||||||
/* Create the main pane. */
|
/* Create the main pane. */
|
||||||
@@ -233,25 +233,19 @@ layout_set_main_h(struct window *w)
|
|||||||
/* Create the other pane. */
|
/* Create the other pane. */
|
||||||
lcother = layout_create_cell(lc);
|
lcother = layout_create_cell(lc);
|
||||||
layout_set_size(lcother, sx, otherh, 0, 0);
|
layout_set_size(lcother, sx, otherh, 0, 0);
|
||||||
if (n == 1) {
|
layout_make_node(lcother, LAYOUT_LEFTRIGHT);
|
||||||
wp = TAILQ_NEXT(TAILQ_FIRST(&w->panes), entry);
|
TAILQ_INSERT_TAIL(&lc->cells, lcother, entry);
|
||||||
layout_make_leaf(lcother, wp);
|
|
||||||
TAILQ_INSERT_TAIL(&lc->cells, lcother, entry);
|
|
||||||
} else {
|
|
||||||
layout_make_node(lcother, LAYOUT_LEFTRIGHT);
|
|
||||||
TAILQ_INSERT_TAIL(&lc->cells, lcother, entry);
|
|
||||||
|
|
||||||
/* Add the remaining panes as children. */
|
/* Add the remaining panes as children. */
|
||||||
TAILQ_FOREACH(wp, &w->panes, entry) {
|
TAILQ_FOREACH(wp, &w->panes, entry) {
|
||||||
if (wp == TAILQ_FIRST(&w->panes))
|
if (wp == TAILQ_FIRST(&w->panes))
|
||||||
continue;
|
continue;
|
||||||
lcchild = layout_create_cell(lcother);
|
lcchild = layout_create_cell(lc);
|
||||||
layout_set_size(lcchild, PANE_MINIMUM, otherh, 0, 0);
|
layout_set_size(lcchild, PANE_MINIMUM, otherh, 0, 0);
|
||||||
layout_make_leaf(lcchild, wp);
|
layout_make_leaf(lcchild, wp);
|
||||||
TAILQ_INSERT_TAIL(&lcother->cells, lcchild, entry);
|
TAILQ_INSERT_TAIL(&lcother->cells, lcchild, entry);
|
||||||
}
|
|
||||||
layout_spread_cell(w, lcother);
|
|
||||||
}
|
}
|
||||||
|
layout_spread_cell(w, lcother);
|
||||||
|
|
||||||
/* Fix cell offsets. */
|
/* Fix cell offsets. */
|
||||||
layout_fix_offsets(lc);
|
layout_fix_offsets(lc);
|
||||||
@@ -305,7 +299,7 @@ layout_set_main_v(struct window *w)
|
|||||||
/* Free old tree and create a new root. */
|
/* Free old tree and create a new root. */
|
||||||
layout_free(w);
|
layout_free(w);
|
||||||
lc = w->layout_root = layout_create_cell(NULL);
|
lc = w->layout_root = layout_create_cell(NULL);
|
||||||
layout_set_size(lc, mainw + otherw, sy, 0, 0);
|
layout_set_size(lc, mainw + otherw + 1, sy, 0, 0);
|
||||||
layout_make_node(lc, LAYOUT_LEFTRIGHT);
|
layout_make_node(lc, LAYOUT_LEFTRIGHT);
|
||||||
|
|
||||||
/* Create the main pane. */
|
/* Create the main pane. */
|
||||||
@@ -317,25 +311,19 @@ layout_set_main_v(struct window *w)
|
|||||||
/* Create the other pane. */
|
/* Create the other pane. */
|
||||||
lcother = layout_create_cell(lc);
|
lcother = layout_create_cell(lc);
|
||||||
layout_set_size(lcother, otherw, sy, 0, 0);
|
layout_set_size(lcother, otherw, sy, 0, 0);
|
||||||
if (n == 1) {
|
layout_make_node(lcother, LAYOUT_TOPBOTTOM);
|
||||||
wp = TAILQ_NEXT(TAILQ_FIRST(&w->panes), entry);
|
TAILQ_INSERT_TAIL(&lc->cells, lcother, entry);
|
||||||
layout_make_leaf(lcother, wp);
|
|
||||||
TAILQ_INSERT_TAIL(&lc->cells, lcother, entry);
|
|
||||||
} else {
|
|
||||||
layout_make_node(lcother, LAYOUT_TOPBOTTOM);
|
|
||||||
TAILQ_INSERT_TAIL(&lc->cells, lcother, entry);
|
|
||||||
|
|
||||||
/* Add the remaining panes as children. */
|
/* Add the remaining panes as children. */
|
||||||
TAILQ_FOREACH(wp, &w->panes, entry) {
|
TAILQ_FOREACH(wp, &w->panes, entry) {
|
||||||
if (wp == TAILQ_FIRST(&w->panes))
|
if (wp == TAILQ_FIRST(&w->panes))
|
||||||
continue;
|
continue;
|
||||||
lcchild = layout_create_cell(lcother);
|
lcchild = layout_create_cell(lc);
|
||||||
layout_set_size(lcchild, otherw, PANE_MINIMUM, 0, 0);
|
layout_set_size(lcchild, otherw, PANE_MINIMUM, 0, 0);
|
||||||
layout_make_leaf(lcchild, wp);
|
layout_make_leaf(lcchild, wp);
|
||||||
TAILQ_INSERT_TAIL(&lcother->cells, lcchild, entry);
|
TAILQ_INSERT_TAIL(&lcother->cells, lcchild, entry);
|
||||||
}
|
|
||||||
layout_spread_cell(w, lcother);
|
|
||||||
}
|
}
|
||||||
|
layout_spread_cell(w, lcother);
|
||||||
|
|
||||||
/* Fix cell offsets. */
|
/* Fix cell offsets. */
|
||||||
layout_fix_offsets(lc);
|
layout_fix_offsets(lc);
|
||||||
|
|||||||
Reference in New Issue
Block a user