From a863834574ec02b87ff0e7245ef31f0d4543ab34 Mon Sep 17 00:00:00 2001 From: nicm Date: Thu, 4 Jun 2015 11:43:51 +0000 Subject: Add support for a single "marked pane". There is one marked pane in the server at a time; it may be toggled or cleared with select-pane -m and -M (the border is highlighted). A new target '~' or '{marked}' specifies the marked pane to commands and it is the default target for the swap-pane and join-pane -s flag (this makes them much simpler to use - mark the source pane and then change to the target pane to run swapp or joinp). --- tmux.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'tmux.h') diff --git a/tmux.h b/tmux.h index 78e64170..ae1682af 100644 --- a/tmux.h +++ b/tmux.h @@ -1688,8 +1688,12 @@ struct session *cmd_find_current(struct cmd_q *); struct session *cmd_find_session(struct cmd_q *, const char *, int); struct winlink *cmd_find_window(struct cmd_q *, const char *, struct session **); +struct winlink *cmd_find_window_marked(struct cmd_q *, const char *, + struct session **); struct winlink *cmd_find_pane(struct cmd_q *, const char *, struct session **, struct window_pane **); +struct winlink *cmd_find_pane_marked(struct cmd_q *, const char *, + struct session **, struct window_pane **); struct client *cmd_find_client(struct cmd_q *, const char *, int); int cmd_find_index(struct cmd_q *, const char *, struct session **); @@ -1850,6 +1854,15 @@ const char *key_string_lookup_key(int); /* server.c */ extern struct clients clients; extern struct clients dead_clients; +extern struct session *marked_session; +extern struct winlink *marked_winlink; +extern struct window_pane *marked_window_pane; +void server_set_marked(struct session *, struct winlink *, + struct window_pane *); +void server_clear_marked(void); +int server_is_marked(struct session *, struct winlink *, + struct window_pane *); +int server_check_marked(void); int server_start(int, char *); void server_update_socket(void); void server_add_accept(int); -- cgit