summaryrefslogtreecommitdiffstats
path: root/tmux.h
diff options
context:
space:
mode:
authorNicholas Marriott <nicm@openbsd.org>2012-10-02 08:16:28 +0000
committerNicholas Marriott <nicm@openbsd.org>2012-10-02 08:16:28 +0000
commit9107b0c69a12ebc6161e1a11c26a8c2265c61fcc (patch)
treef88c3a93c7be09e81d00d1ff70dbed5a34d4cf09 /tmux.h
parentea289bc4579c30e5d752264c2779376c0f3f9657 (diff)
Allow session tree (C-b s) to expand and collapse sessions with
left/right/space keys. From Thomas Adam.
Diffstat (limited to 'tmux.h')
-rw-r--r--tmux.h13
1 files changed, 12 insertions, 1 deletions
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. */