diff options
author | nicm <nicm> | 2020-03-28 09:51:12 +0000 |
---|---|---|
committer | nicm <nicm> | 2020-03-28 09:51:12 +0000 |
commit | 593fddf84b6ae661df46597a22107babcc77efd5 (patch) | |
tree | 5ef1cb395440658f8b3a2a0c319eb15b5c8ee189 /popup.c | |
parent | 4346098e977d8fb3bde0783e9858f3def7bc01a5 (diff) | |
download | rtmux-593fddf84b6ae661df46597a22107babcc77efd5.tar.gz rtmux-593fddf84b6ae661df46597a22107babcc77efd5.tar.bz2 rtmux-593fddf84b6ae661df46597a22107babcc77efd5.zip |
Make two -E only close popup automatically if the command exited with 0.
Diffstat (limited to 'popup.c')
-rw-r--r-- | popup.c | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -260,7 +260,8 @@ popup_key_cb(struct client *c, struct key_event *event) if (pd->ictx != NULL && (pd->flags & POPUP_WRITEKEYS)) { if (KEYC_IS_MOUSE(event->key)) return (0); - if ((~pd->flags & POPUP_CLOSEEXIT) && + if (((pd->flags & (POPUP_CLOSEEXIT|POPUP_CLOSEEXITZERO)) == 0 || + pd->job == NULL) && (event->key == '\033' || event->key == '\003')) return (1); if (pd->job == NULL) @@ -347,6 +348,8 @@ popup_job_complete_cb(struct job *job) if (pd->flags & POPUP_CLOSEEXIT) server_client_clear_overlay(pd->c); + if ((pd->flags & POPUP_CLOSEEXITZERO) && pd->status == 0) + server_client_clear_overlay(pd->c); } u_int |