diff options
author | nicm <nicm> | 2020-07-27 08:03:10 +0000 |
---|---|---|
committer | nicm <nicm> | 2020-07-27 08:03:10 +0000 |
commit | 40e65c511502fe47932e230290537e7391ab8a83 (patch) | |
tree | 0ccd24065994a052d1ecc377a311b6c7dcfafb83 /status.c | |
parent | d329b035cee47d968a8c93b5cbd8fde879ce6f0d (diff) | |
download | rtmux-40e65c511502fe47932e230290537e7391ab8a83.tar.gz rtmux-40e65c511502fe47932e230290537e7391ab8a83.tar.bz2 rtmux-40e65c511502fe47932e230290537e7391ab8a83.zip |
Add a -d option to display-message to set delay, from theonekeyg at
gmail dot com in GitHub issue 2322.
Diffstat (limited to 'status.c')
-rw-r--r-- | status.c | 12 |
1 files changed, 9 insertions, 3 deletions
@@ -423,11 +423,11 @@ status_redraw(struct client *c) /* Set a status line message. */ void -status_message_set(struct client *c, int ignore_styles, const char *fmt, ...) +status_message_set(struct client *c, int delay, int ignore_styles, + const char *fmt, ...) { struct timeval tv; va_list ap; - int delay; status_message_clear(c); status_push_screen(c); @@ -439,7 +439,12 @@ status_message_set(struct client *c, int ignore_styles, const char *fmt, ...) server_add_message("%s message: %s", c->name, c->message_string); - delay = options_get_number(c->session->options, "display-time"); + /* + * With delay -1, the display-time option is used; zero means wait for + * key press; more than zero is the actual delay time in milliseconds. + */ + if (delay == -1) + delay = options_get_number(c->session->options, "display-time"); if (delay > 0) { tv.tv_sec = delay / 1000; tv.tv_usec = (delay % 1000) * 1000L; @@ -447,6 +452,7 @@ status_message_set(struct client *c, int ignore_styles, const char *fmt, ...) if (event_initialized(&c->message_timer)) evtimer_del(&c->message_timer); evtimer_set(&c->message_timer, status_message_callback, c); + evtimer_add(&c->message_timer, &tv); } |