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

Diff for /src/usr.bin/tmux/window-tree.c between version 1.37 and 1.38

version 1.37, 2019/04/30 06:19:51 version 1.38, 2019/05/12 08:58:09
Line 53 
Line 53 
                 "}" \                  "}" \
         "}"          "}"
   
   #define WINDOW_TREE_MENU \
           "Select,Enter,|" \
           "Expand,Right,|" \
           "|" \
           "Tag,t,|" \
           "Tag All,C-t,|" \
           "Tag None,T,|" \
           "|" \
           "Kill,x,|" \
           "Kill Tagged,X,|" \
           "|" \
           "Cancel,q,"
   
 const struct window_mode window_tree_mode = {  const struct window_mode window_tree_mode = {
         .name = "tree-mode",          .name = "tree-mode",
         .default_format = WINDOW_TREE_DEFAULT_FORMAT,          .default_format = WINDOW_TREE_DEFAULT_FORMAT,
Line 814 
Line 827 
         return (0);          return (0);
 }  }
   
   static void
   window_tree_menu(void *modedata, struct client *c, key_code key)
   {
           struct window_tree_modedata     *data = modedata;
           struct window_pane              *wp = data->wp;
           struct window_mode_entry        *wme;
   
           wme = TAILQ_FIRST(&wp->modes);
           if (wme == NULL || wme->data != modedata)
                   return;
           window_tree_key(wme, c, NULL, NULL, key, NULL);
   }
   
 static struct screen *  static struct screen *
 window_tree_init(struct window_mode_entry *wme, struct cmd_find_state *fs,  window_tree_init(struct window_mode_entry *wme, struct cmd_find_state *fs,
     struct args *args)      struct args *args)
Line 823 
Line 849 
         struct screen                   *s;          struct screen                   *s;
   
         wme->data = data = xcalloc(1, sizeof *data);          wme->data = data = xcalloc(1, sizeof *data);
           data->wp = wp;
           data->references = 1;
   
         if (args_has(args, 's'))          if (args_has(args, 's'))
                 data->type = WINDOW_TREE_SESSION;                  data->type = WINDOW_TREE_SESSION;
Line 832 
Line 860 
                 data->type = WINDOW_TREE_PANE;                  data->type = WINDOW_TREE_PANE;
         memcpy(&data->fs, fs, sizeof data->fs);          memcpy(&data->fs, fs, sizeof data->fs);
   
         data->wp = wp;  
         data->references = 1;  
   
         if (args == NULL || !args_has(args, 'F'))          if (args == NULL || !args_has(args, 'F'))
                 data->format = xstrdup(WINDOW_TREE_DEFAULT_FORMAT);                  data->format = xstrdup(WINDOW_TREE_DEFAULT_FORMAT);
         else          else
Line 846 
Line 871 
         data->squash_groups = !args_has(args, 'G');          data->squash_groups = !args_has(args, 'G');
   
         data->data = mode_tree_start(wp, args, window_tree_build,          data->data = mode_tree_start(wp, args, window_tree_build,
             window_tree_draw, window_tree_search, data, window_tree_sort_list,              window_tree_draw, window_tree_search, window_tree_menu, data,
               WINDOW_TREE_MENU, window_tree_sort_list,
             nitems(window_tree_sort_list), &s);              nitems(window_tree_sort_list), &s);
         mode_tree_zoom(data->data, args);          mode_tree_zoom(data->data, args);
   
Line 1146 
Line 1172 
                 item = new_item;                  item = new_item;
                 data->offset = 0;                  data->offset = 0;
         }          }
         if (KEYC_IS_MOUSE(key))          if (KEYC_IS_MOUSE(key) && m != NULL)
                 key = window_tree_mouse(data, key, x, item);                  key = window_tree_mouse(data, key, x, item);
         switch (key) {          switch (key) {
         case '<':          case '<':
Line 1207 
Line 1233 
                 free(prompt);                  free(prompt);
                 break;                  break;
         case '\r':          case '\r':
                 item = mode_tree_get_current(data->data);  
                 name = window_tree_get_target(item, &fs);                  name = window_tree_get_target(item, &fs);
                 if (name != NULL)                  if (name != NULL)
                         mode_tree_run_command(c, NULL, data->command, name);                          mode_tree_run_command(c, NULL, data->command, name);

Legend:
Removed from v.1.37  
changed lines
  Added in v.1.38