summaryrefslogtreecommitdiffstats
path: root/options-table.c
diff options
context:
space:
mode:
authornicm <nicm>2022-08-02 11:09:26 +0000
committernicm <nicm>2022-08-02 11:09:26 +0000
commit42ba6c1b229c92256274e848e9c5ff1d59d9081b (patch)
tree2fc80315e93cdcfcf5e1e488b20a6073d5597331 /options-table.c
parent33c59100aeb49894550b97cce268f46032f4c8d6 (diff)
Add a third state "all" to allow-passthrough to work even in invisible
panes, from Sergei Grechanik in GitHub issue 3274.
Diffstat (limited to 'options-table.c')
-rw-r--r--options-table.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/options-table.c b/options-table.c
index d1e65f15..377835bb 100644
--- a/options-table.c
+++ b/options-table.c
@@ -88,6 +88,9 @@ static const char *options_table_detach_on_destroy_list[] = {
static const char *options_table_extended_keys_list[] = {
"off", "on", "always", NULL
};
+static const char *options_table_allow_passthrough_list[] = {
+ "off", "on", "all", NULL
+};
/* Status line format. */
#define OPTIONS_TABLE_STATUS_FORMAT1 \
@@ -804,11 +807,14 @@ const struct options_table_entry options_table[] = {
},
{ .name = "allow-passthrough",
- .type = OPTIONS_TABLE_FLAG,
+ .type = OPTIONS_TABLE_CHOICE,
.scope = OPTIONS_TABLE_WINDOW|OPTIONS_TABLE_PANE,
+ .choices = options_table_allow_passthrough_list,
.default_num = 0,
.text = "Whether applications are allowed to use the escape sequence "
- "to bypass tmux."
+ "to bypass tmux. Can be 'off' (disallowed), 'on' (allowed "
+ "if the pane is visible), or 'all' (allowed even if the pane "
+ "is invisible)."
},
{ .name = "allow-rename",