[BACK]Return to status.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / tmux

Diff for /src/usr.bin/tmux/status.c between version 1.165 and 1.166

version 1.165, 2017/05/03 05:53:34 version 1.166, 2017/05/17 15:20:23
Line 656 
Line 656 
 /* Enable status line prompt. */  /* Enable status line prompt. */
 void  void
 status_prompt_set(struct client *c, const char *msg, const char *input,  status_prompt_set(struct client *c, const char *msg, const char *input,
     int (*callbackfn)(void *, const char *, int), void (*freefn)(void *),      prompt_input_cb inputcb, prompt_free_cb freecb, void *data, int flags)
     void *data, int flags)  
 {  {
         struct format_tree      *ft;          struct format_tree      *ft;
         time_t                   t;          time_t                   t;
Line 677 
Line 676 
         c->prompt_buffer = utf8_fromcstr(tmp);          c->prompt_buffer = utf8_fromcstr(tmp);
         c->prompt_index = utf8_strlen(c->prompt_buffer);          c->prompt_index = utf8_strlen(c->prompt_buffer);
   
         c->prompt_callbackfn = callbackfn;          c->prompt_inputcb = inputcb;
         c->prompt_freefn = freefn;          c->prompt_freecb = freecb;
         c->prompt_data = data;          c->prompt_data = data;
   
         c->prompt_hindex = 0;          c->prompt_hindex = 0;
Line 692 
Line 691 
   
         if ((flags & PROMPT_INCREMENTAL) && *tmp != '\0') {          if ((flags & PROMPT_INCREMENTAL) && *tmp != '\0') {
                 xasprintf(&cp, "=%s", tmp);                  xasprintf(&cp, "=%s", tmp);
                 c->prompt_callbackfn(c->prompt_data, cp, 0);                  c->prompt_inputcb(c, c->prompt_data, cp, 0);
                 free(cp);                  free(cp);
         }          }
   
Line 707 
Line 706 
         if (c->prompt_string == NULL)          if (c->prompt_string == NULL)
                 return;                  return;
   
         if (c->prompt_freefn != NULL && c->prompt_data != NULL)          if (c->prompt_freecb != NULL && c->prompt_data != NULL)
                 c->prompt_freefn(c->prompt_data);                  c->prompt_freecb(c->prompt_data);
   
         free(c->prompt_string);          free(c->prompt_string);
         c->prompt_string = NULL;          c->prompt_string = NULL;
Line 995 
Line 994 
                 if (key >= '0' && key <= '9')                  if (key >= '0' && key <= '9')
                         goto append_key;                          goto append_key;
                 s = utf8_tocstr(c->prompt_buffer);                  s = utf8_tocstr(c->prompt_buffer);
                 c->prompt_callbackfn(c->prompt_data, s, 1);                  c->prompt_inputcb(c, c->prompt_data, s, 1);
                 status_prompt_clear(c);                  status_prompt_clear(c);
                 free(s);                  free(s);
                 return (1);                  return (1);
Line 1276 
Line 1275 
                 s = utf8_tocstr(c->prompt_buffer);                  s = utf8_tocstr(c->prompt_buffer);
                 if (*s != '\0')                  if (*s != '\0')
                         status_prompt_add_history(s);                          status_prompt_add_history(s);
                 if (c->prompt_callbackfn(c->prompt_data, s, 1) == 0)                  if (c->prompt_inputcb(c, c->prompt_data, s, 1) == 0)
                         status_prompt_clear(c);                          status_prompt_clear(c);
                 free(s);                  free(s);
                 break;                  break;
         case '\033': /* Escape */          case '\033': /* Escape */
         case '\003': /* C-c */          case '\003': /* C-c */
                 if (c->prompt_callbackfn(c->prompt_data, NULL, 1) == 0)                  if (c->prompt_inputcb(c, c->prompt_data, NULL, 1) == 0)
                         status_prompt_clear(c);                          status_prompt_clear(c);
                 break;                  break;
         case '\022': /* C-r */          case '\022': /* C-r */
Line 1330 
Line 1329 
                 s = utf8_tocstr(c->prompt_buffer);                  s = utf8_tocstr(c->prompt_buffer);
                 if (strlen(s) != 1)                  if (strlen(s) != 1)
                         status_prompt_clear(c);                          status_prompt_clear(c);
                 else if (c->prompt_callbackfn(c->prompt_data, s, 1) == 0)                  else if (c->prompt_inputcb(c, c->prompt_data, s, 1) == 0)
                         status_prompt_clear(c);                          status_prompt_clear(c);
                 free(s);                  free(s);
         }          }
Line 1340 
Line 1339 
         if (c->prompt_flags & PROMPT_INCREMENTAL) {          if (c->prompt_flags & PROMPT_INCREMENTAL) {
                 s = utf8_tocstr(c->prompt_buffer);                  s = utf8_tocstr(c->prompt_buffer);
                 xasprintf(&cp, "%c%s", prefix, s);                  xasprintf(&cp, "%c%s", prefix, s);
                 c->prompt_callbackfn(c->prompt_data, cp, 0);                  c->prompt_inputcb(c, c->prompt_data, cp, 0);
                 free(cp);                  free(cp);
                 free(s);                  free(s);
         }          }

Legend:
Removed from v.1.165  
changed lines
  Added in v.1.166