diff options
author | nicm <nicm> | 2022-08-02 11:09:26 +0000 |
---|---|---|
committer | nicm <nicm> | 2022-08-02 11:09:26 +0000 |
commit | 42ba6c1b229c92256274e848e9c5ff1d59d9081b (patch) | |
tree | 2fc80315e93cdcfcf5e1e488b20a6073d5597331 /tmux.h | |
parent | 33c59100aeb49894550b97cce268f46032f4c8d6 (diff) | |
download | rtmux-42ba6c1b229c92256274e848e9c5ff1d59d9081b.tar.gz rtmux-42ba6c1b229c92256274e848e9c5ff1d59d9081b.tar.bz2 rtmux-42ba6c1b229c92256274e848e9c5ff1d59d9081b.zip |
Add a third state "all" to allow-passthrough to work even in invisible
panes, from Sergei Grechanik in GitHub issue 3274.
Diffstat (limited to 'tmux.h')
-rw-r--r-- | tmux.h | 46 |
1 files changed, 27 insertions, 19 deletions
@@ -1432,37 +1432,44 @@ struct tty_ctx { void *ptr2; /* + * Whether this command should be sent even when the pane is not + * visible (used for a passthrough sequence when allow-passthrough is + * "all"). + */ + int allow_invisible_panes; + + /* * Cursor and region position before the screen was updated - this is * where the command should be applied; the values in the screen have * already been updated. */ - u_int ocx; - u_int ocy; + u_int ocx; + u_int ocy; - u_int orupper; - u_int orlower; + u_int orupper; + u_int orlower; /* Target region (usually pane) offset and size. */ - u_int xoff; - u_int yoff; - u_int rxoff; - u_int ryoff; - u_int sx; - u_int sy; + u_int xoff; + u_int yoff; + u_int rxoff; + u_int ryoff; + u_int sx; + u_int sy; /* The background colour used for clearing (erasing). */ - u_int bg; + u_int bg; /* The default colours and palette. */ - struct grid_cell defaults; - struct colour_palette *palette; + struct grid_cell defaults; + struct colour_palette *palette; /* Containing region (usually window) offset and size. */ - int bigger; - u_int wox; - u_int woy; - u_int wsx; - u_int wsy; + int bigger; + u_int wox; + u_int woy; + u_int wsx; + u_int wsy; }; /* Saved message entry. */ @@ -2889,7 +2896,8 @@ void screen_write_collect_add(struct screen_write_ctx *, void screen_write_cell(struct screen_write_ctx *, const struct grid_cell *); void screen_write_setselection(struct screen_write_ctx *, const char *, u_char *, u_int); -void screen_write_rawstring(struct screen_write_ctx *, u_char *, u_int); +void screen_write_rawstring(struct screen_write_ctx *, u_char *, u_int, + int); void screen_write_alternateon(struct screen_write_ctx *, struct grid_cell *, int); void screen_write_alternateoff(struct screen_write_ctx *, |