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

Diff for /src/usr.bin/tmux/window-copy.c between version 1.120 and 1.121

version 1.120, 2014/11/09 15:13:01 version 1.121, 2014/12/15 10:02:55
Line 33 
Line 33 
 void    window_copy_mouse(struct window_pane *, struct session *,  void    window_copy_mouse(struct window_pane *, struct session *,
             struct mouse_event *);              struct mouse_event *);
   
   void    window_copy_redraw_selection(struct window_pane *, u_int);
 void    window_copy_redraw_lines(struct window_pane *, u_int, u_int);  void    window_copy_redraw_lines(struct window_pane *, u_int, u_int);
 void    window_copy_redraw_screen(struct window_pane *);  void    window_copy_redraw_screen(struct window_pane *);
 void    window_copy_write_line(struct window_pane *, struct screen_write_ctx *,  void    window_copy_write_line(struct window_pane *, struct screen_write_ctx *,
Line 874 
Line 875 
 {  {
         struct window_copy_mode_data    *data = wp->modedata;          struct window_copy_mode_data    *data = wp->modedata;
         struct screen                   *s = &data->screen;          struct screen                   *s = &data->screen;
         u_int                            i;          u_int                            i, old_cy;
   
         if (m->x >= screen_size_x(s))          if (m->x >= screen_size_x(s))
                 return;                  return;
Line 907 
Line 908 
          */           */
         if (s->mode & MODE_MOUSE_BUTTON) {          if (s->mode & MODE_MOUSE_BUTTON) {
                 if (~m->event & MOUSE_EVENT_UP) {                  if (~m->event & MOUSE_EVENT_UP) {
                           old_cy = data->cy;
                         window_copy_update_cursor(wp, m->x, m->y);                          window_copy_update_cursor(wp, m->x, m->y);
                         if (window_copy_update_selection(wp, 1))                          if (window_copy_update_selection(wp, 1))
                                 window_copy_redraw_screen(wp);                                  window_copy_redraw_selection(wp, old_cy);
                         return;                          return;
                 }                  }
                 goto reset_mode;                  goto reset_mode;
Line 1243 
Line 1245 
   
         for (yy = py; yy < py + ny; yy++)          for (yy = py; yy < py + ny; yy++)
                 window_copy_write_line(wp, ctx, py);                  window_copy_write_line(wp, ctx, py);
   }
   
   void
   window_copy_redraw_selection(struct window_pane *wp, u_int old_y)
   {
           struct window_copy_mode_data    *data = wp->modedata;
           u_int                            new_y, start, end;
   
           new_y = data->cy;
           if (old_y <= new_y) {
                   start = old_y;
                   end = new_y;
           } else {
                   start = new_y;
                   end = old_y;
           }
           window_copy_redraw_lines(wp, start, end - start + 1);
 }  }
   
 void  void

Legend:
Removed from v.1.120  
changed lines
  Added in v.1.121