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

Diff for /src/usr.bin/tmux/window.c between version 1.57 and 1.58

version 1.57, 2010/10/23 12:51:51 version 1.58, 2010/10/23 13:04:34
Line 325 
Line 325 
 void  void
 window_set_active_pane(struct window *w, struct window_pane *wp)  window_set_active_pane(struct window *w, struct window_pane *wp)
 {  {
           w->last = w->active;
         w->active = wp;          w->active = wp;
         while (!window_pane_visible(w->active)) {          while (!window_pane_visible(w->active)) {
                 w->active = TAILQ_PREV(w->active, window_panes, entry);                  w->active = TAILQ_PREV(w->active, window_panes, entry);
Line 369 
Line 370 
 window_remove_pane(struct window *w, struct window_pane *wp)  window_remove_pane(struct window *w, struct window_pane *wp)
 {  {
         if (wp == w->active) {          if (wp == w->active) {
                 w->active = TAILQ_PREV(wp, window_panes, entry);                  w->active = w->last;
                 if (w->active == NULL)                  w->last = NULL;
                         w->active = TAILQ_NEXT(wp, entry);                  if (w->active == NULL) {
         }                          w->active = TAILQ_PREV(wp, window_panes, entry);
                           if (w->active == NULL)
                                   w->active = TAILQ_NEXT(wp, entry);
                   }
           } else if (wp == w->last)
                   w->last = NULL;
   
         TAILQ_REMOVE(&w->panes, wp, entry);          TAILQ_REMOVE(&w->panes, wp, entry);
         window_pane_destroy(wp);          window_pane_destroy(wp);

Legend:
Removed from v.1.57  
changed lines
  Added in v.1.58