diff options
author | nicm <nicm> | 2015-04-21 22:38:49 +0000 |
---|---|---|
committer | nicm <nicm> | 2015-04-21 22:38:49 +0000 |
commit | 69f292a90e2fb9d48a77a9753127da13554715de (patch) | |
tree | f475d0ba24de5804f2636fecb7447b75675cb947 | |
parent | 93b2871cab399388a16ace64d8dfb9a8e2143543 (diff) | |
download | rtmux-69f292a90e2fb9d48a77a9753127da13554715de.tar.gz rtmux-69f292a90e2fb9d48a77a9753127da13554715de.tar.bz2 rtmux-69f292a90e2fb9d48a77a9753127da13554715de.zip |
Always format real layout even when zoomed.
-rw-r--r-- | format.c | 5 | ||||
-rw-r--r-- | layout-custom.c | 4 | ||||
-rw-r--r-- | tmux.h | 2 | ||||
-rw-r--r-- | window.c | 1 |
4 files changed, 8 insertions, 4 deletions
@@ -577,7 +577,10 @@ format_defaults_window(struct format_tree *ft, struct window *w) ft->w = w; - layout = layout_dump(w); + if (w->saved_layout_root != NULL) + layout = layout_dump(w->saved_layout_root); + else + layout = layout_dump(w->layout_root); format_add(ft, "window_id", "@%u", w->id); format_add(ft, "window_name", "%s", w->name); diff --git a/layout-custom.c b/layout-custom.c index c9cf49c2..57503518 100644 --- a/layout-custom.c +++ b/layout-custom.c @@ -55,12 +55,12 @@ layout_checksum(const char *layout) /* Dump layout as a string. */ char * -layout_dump(struct window *w) +layout_dump(struct layout_cell *root) { char layout[BUFSIZ], *out; *layout = '\0'; - if (layout_append(w->layout_root, layout, sizeof layout) != 0) + if (layout_append(root, layout, sizeof layout) != 0) return (NULL); xasprintf(&out, "%04x,%s", layout_checksum(layout), layout); @@ -2225,7 +2225,7 @@ struct layout_cell *layout_split_pane( void layout_close_pane(struct window_pane *); /* layout-custom.c */ -char *layout_dump(struct window *); +char *layout_dump(struct layout_cell *); int layout_parse(struct window *, const char *); /* layout-set.c */ @@ -519,6 +519,7 @@ window_unzoom(struct window *w) w->flags &= ~WINDOW_ZOOMED; layout_free(w); w->layout_root = w->saved_layout_root; + w->saved_layout_root = NULL; TAILQ_FOREACH(wp, &w->panes, entry) { wp->layout_cell = wp->saved_layout_cell; |