From 9107b0c69a12ebc6161e1a11c26a8c2265c61fcc Mon Sep 17 00:00:00 2001 From: Nicholas Marriott Date: Tue, 2 Oct 2012 08:16:28 +0000 Subject: Allow session tree (C-b s) to expand and collapse sessions with left/right/space keys. From Thomas Adam. --- tmux.h | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'tmux.h') diff --git a/tmux.h b/tmux.h index 1fbad94b..e5ad1718 100644 --- a/tmux.h +++ b/tmux.h @@ -552,6 +552,11 @@ enum mode_key_cmd { MODEKEYCHOICE_SCROLLDOWN, MODEKEYCHOICE_SCROLLUP, MODEKEYCHOICE_STARTNUMBERPREFIX, + MODEKEYCHOICE_TREE_COLLAPSE, + MODEKEYCHOICE_TREE_COLLAPSE_ALL, + MODEKEYCHOICE_TREE_EXPAND, + MODEKEYCHOICE_TREE_EXPAND_ALL, + MODEKEYCHOICE_TREE_TOGGLE, MODEKEYCHOICE_UP, /* Copy keys. */ @@ -891,12 +896,16 @@ struct window_mode { /* Structures for choose mode. */ struct window_choose_data { struct client *client; - struct session *session; + struct session *session; /* Session of current client. */ + struct session *tree_session; /* Session of items in tree. */ struct format_tree *ft; struct winlink *wl; char *ft_template; char *command; u_int idx; + int type; +#define TREE_WINDOW 0x1 +#define TREE_SESSION 0x2 int pane_id; }; @@ -904,6 +913,8 @@ struct window_choose_mode_item { struct window_choose_data *wcd; char *name; int pos; + int state; +#define TREE_EXPANDED 0x1 }; /* Child window structure. */ -- cgit v1.2.3