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

Diff for /src/usr.bin/tmux/server-client.c between version 1.331 and 1.332

version 1.331, 2020/04/21 06:32:40 version 1.332, 2020/04/21 06:34:13
Line 1537 
Line 1537 
 static void  static void
 server_client_reset_state(struct client *c)  server_client_reset_state(struct client *c)
 {  {
           struct tty              *tty = &c->tty;
         struct window           *w = c->session->curw->window;          struct window           *w = c->session->curw->window;
         struct window_pane      *wp = w->active, *loop;          struct window_pane      *wp = w->active, *loop;
         struct screen           *s;          struct screen           *s;
Line 1547 
Line 1548 
         if (c->flags & (CLIENT_CONTROL|CLIENT_SUSPENDED))          if (c->flags & (CLIENT_CONTROL|CLIENT_SUSPENDED))
                 return;                  return;
   
           /* Disable the block flag. */
           flags = (tty->flags & TTY_BLOCK);
           tty->flags &= ~TTY_BLOCK;
   
         /* Get mode from overlay if any, else from screen. */          /* Get mode from overlay if any, else from screen. */
         if (c->overlay_draw != NULL) {          if (c->overlay_draw != NULL) {
                 s = NULL;                  s = NULL;
Line 1561 
Line 1566 
         log_debug("%s: client %s mode %x", __func__, c->name, mode);          log_debug("%s: client %s mode %x", __func__, c->name, mode);
   
         /* Reset region and margin. */          /* Reset region and margin. */
         tty_region_off(&c->tty);          tty_region_off(tty);
         tty_margin_off(&c->tty);          tty_margin_off(tty);
   
         /* Move cursor to pane cursor and offset. */          /* Move cursor to pane cursor and offset. */
         if (c->overlay_draw == NULL) {          if (c->overlay_draw == NULL) {
                 cursor = 0;                  cursor = 0;
                 tty_window_offset(&c->tty, &ox, &oy, &sx, &sy);                  tty_window_offset(tty, &ox, &oy, &sx, &sy);
                 if (wp->xoff + s->cx >= ox && wp->xoff + s->cx <= ox + sx &&                  if (wp->xoff + s->cx >= ox && wp->xoff + s->cx <= ox + sx &&
                     wp->yoff + s->cy >= oy && wp->yoff + s->cy <= oy + sy) {                      wp->yoff + s->cy >= oy && wp->yoff + s->cy <= oy + sy) {
                         cursor = 1;                          cursor = 1;
Line 1581 
Line 1586 
                 if (!cursor)                  if (!cursor)
                         mode &= ~MODE_CURSOR;                          mode &= ~MODE_CURSOR;
         }          }
         tty_cursor(&c->tty, cx, cy);          log_debug("%s: cursor to %u,%u", __func__, cx, cy);
           tty_cursor(tty, cx, cy);
   
         /*          /*
          * Set mouse mode if requested. To support dragging, always use button           * Set mouse mode if requested. To support dragging, always use button
Line 1604 
Line 1610 
                 mode &= ~MODE_BRACKETPASTE;                  mode &= ~MODE_BRACKETPASTE;
   
         /* Set the terminal mode and reset attributes. */          /* Set the terminal mode and reset attributes. */
         tty_update_mode(&c->tty, mode, s);          tty_update_mode(tty, mode, s);
         tty_reset(&c->tty);          tty_reset(tty);
   
         /*          /* All writing must be done, send a sync end (if it was started). */
          * All writing must be done, send a sync end (if it was started). It          tty_sync_end(tty);
          * may have been started by redrawing so needs to go out even if the          tty->flags |= flags;
          * block flag is set.  
          */  
         flags = (c->tty.flags & TTY_BLOCK);  
         c->tty.flags &= ~TTY_BLOCK;  
         tty_sync_end(&c->tty);  
         c->tty.flags |= flags;  
 }  }
   
 /* Repeat time callback. */  /* Repeat time callback. */

Legend:
Removed from v.1.331  
changed lines
  Added in v.1.332