=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/format.c,v retrieving revision 1.95 retrieving revision 1.96 diff -c -r1.95 -r1.96 *** src/usr.bin/tmux/format.c 2015/11/13 08:09:28 1.95 --- src/usr.bin/tmux/format.c 2015/11/13 10:00:26 1.96 *************** *** 1,4 **** ! /* $OpenBSD: format.c,v 1.95 2015/11/13 08:09:28 nicm Exp $ */ /* * Copyright (c) 2011 Nicholas Marriott --- 1,4 ---- ! /* $OpenBSD: format.c,v 1.96 2015/11/13 10:00:26 nicm Exp $ */ /* * Copyright (c) 2011 Nicholas Marriott *************** *** 48,53 **** --- 48,54 ---- void format_cb_pid(struct format_tree *, struct format_entry *); void format_cb_session_alerts(struct format_tree *, struct format_entry *); void format_cb_window_layout(struct format_tree *, struct format_entry *); + void format_cb_window_visible_layout(struct format_tree *, struct format_entry *); void format_cb_start_command(struct format_tree *, struct format_entry *); void format_cb_current_command(struct format_tree *, struct format_entry *); void format_cb_history_bytes(struct format_tree *, struct format_entry *); *************** *** 362,367 **** --- 363,380 ---- fe->value = layout_dump(w->layout_root); } + /* Callback for window_visible_layout. */ + void + format_cb_window_visible_layout(struct format_tree *ft, struct format_entry *fe) + { + struct window *w = ft->w; + + if (w == NULL) + return; + + fe->value = layout_dump(w->layout_root); + } + /* Callback for pane_start_command. */ void format_cb_start_command(struct format_tree *ft, struct format_entry *fe) *************** *** 1024,1029 **** --- 1037,1044 ---- format_add(ft, "window_width", "%u", w->sx); format_add(ft, "window_height", "%u", w->sy); format_add_cb(ft, "window_layout", format_cb_window_layout); + format_add_cb(ft, "window_visible_layout", + format_cb_window_visible_layout); format_add(ft, "window_panes", "%u", window_count_panes(w)); format_add(ft, "window_zoomed_flag", "%d", !!(w->flags & WINDOW_ZOOMED));