Sync OpenBSD patchset 934:

Make confirm-before prompt customizable with -p option like
command-prompt. Also move responsibility for calling status_replace into
status_prompt_{set,update} and add #W and #P to the default kill-window
and kill-pane prompts. By Tiago Cunha.
This commit is contained in:
Tiago Cunha
2011-07-08 08:42:03 +00:00
parent dc2c174496
commit bba822105b
4 changed files with 50 additions and 53 deletions

View File

@ -824,12 +824,13 @@ status_prompt_set(struct client *c, const char *msg, const char *input,
status_message_clear(c);
status_prompt_clear(c);
c->prompt_string = xstrdup(msg);
c->prompt_string = status_replace(c, NULL, NULL, NULL, msg,
time(NULL), 0);
if (input != NULL)
c->prompt_buffer = xstrdup(input);
else
c->prompt_buffer = xstrdup("");
if (input == NULL)
input = "";
c->prompt_buffer = status_replace(c, NULL, NULL, NULL, input,
time(NULL), 0);
c->prompt_index = strlen(c->prompt_buffer);
c->prompt_callbackfn = callbackfn;
@ -877,13 +878,14 @@ void
status_prompt_update(struct client *c, const char *msg, const char *input)
{
xfree(c->prompt_string);
c->prompt_string = xstrdup(msg);
c->prompt_string = status_replace(c, NULL, NULL, NULL, msg,
time(NULL), 0);
xfree(c->prompt_buffer);
if (input != NULL)
c->prompt_buffer = xstrdup(input);
else
c->prompt_buffer = xstrdup("");
if (input == NULL)
input = "";
c->prompt_buffer = status_replace(c, NULL, NULL, NULL, input,
time(NULL), 0);
c->prompt_index = strlen(c->prompt_buffer);
c->prompt_hindex = 0;