mirror of
https://github.com/tmux/tmux.git
synced 2024-12-04 19:58:48 +00:00
Merge branch 'obsd-master'
This commit is contained in:
commit
399a15b9fc
@ -20,6 +20,7 @@
|
||||
|
||||
#include <ctype.h>
|
||||
#include <stdlib.h>
|
||||
#include <time.h>
|
||||
|
||||
#include "tmux.h"
|
||||
|
||||
|
@ -99,14 +99,12 @@ void
|
||||
control_notify_window_unlinked(unused struct session *s, struct window *w)
|
||||
{
|
||||
struct client *c;
|
||||
struct session *cs;
|
||||
u_int i;
|
||||
|
||||
for (i = 0; i < ARRAY_LENGTH(&clients); i++) {
|
||||
c = ARRAY_ITEM(&clients, i);
|
||||
if (!CONTROL_SHOULD_NOTIFY_CLIENT(c) || c->session == NULL)
|
||||
continue;
|
||||
cs = c->session;
|
||||
|
||||
control_write(c, "%%window-close @%u", w->id);
|
||||
}
|
||||
@ -136,14 +134,12 @@ void
|
||||
control_notify_window_renamed(struct window *w)
|
||||
{
|
||||
struct client *c;
|
||||
struct session *s;
|
||||
u_int i;
|
||||
|
||||
for (i = 0; i < ARRAY_LENGTH(&clients); i++) {
|
||||
c = ARRAY_ITEM(&clients, i);
|
||||
if (!CONTROL_SHOULD_NOTIFY_CLIENT(c) || c->session == NULL)
|
||||
continue;
|
||||
s = c->session;
|
||||
|
||||
control_write(c, "%%window-renamed @%u %s", w->id, w->name);
|
||||
}
|
||||
|
@ -22,6 +22,7 @@
|
||||
#include <event.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <time.h>
|
||||
|
||||
#include "tmux.h"
|
||||
|
||||
|
@ -448,7 +448,7 @@ tty_keys_next(struct tty *tty)
|
||||
const char *buf;
|
||||
size_t len, size;
|
||||
cc_t bspace;
|
||||
int key, delay;
|
||||
int key, delay, expired = 0;
|
||||
|
||||
/* Get key buffer. */
|
||||
buf = EVBUFFER_DATA(tty->event->input);
|
||||
@ -508,7 +508,7 @@ first_key:
|
||||
}
|
||||
|
||||
tk = tty_keys_find(tty, buf + 1, len - 1, &size);
|
||||
if (tk != NULL) {
|
||||
if (tk != NULL && (!expired || tk->next == NULL)) {
|
||||
size++; /* include escape */
|
||||
if (tk->next != NULL)
|
||||
goto partial_key;
|
||||
@ -540,8 +540,10 @@ partial_key:
|
||||
/* If timer is going, check for expiration. */
|
||||
if (tty->flags & TTY_TIMER) {
|
||||
if (evtimer_initialized(&tty->key_timer) &&
|
||||
!evtimer_pending(&tty->key_timer, NULL))
|
||||
!evtimer_pending(&tty->key_timer, NULL)) {
|
||||
expired = 1;
|
||||
goto first_key;
|
||||
}
|
||||
return (0);
|
||||
}
|
||||
|
||||
|
9
window.c
9
window.c
@ -493,19 +493,18 @@ window_zoom(struct window_pane *wp)
|
||||
int
|
||||
window_unzoom(struct window *w)
|
||||
{
|
||||
struct window_pane *wp, *wp1;
|
||||
struct window_pane *wp;
|
||||
|
||||
if (!(w->flags & WINDOW_ZOOMED))
|
||||
return (-1);
|
||||
wp = w->active;
|
||||
|
||||
w->flags &= ~WINDOW_ZOOMED;
|
||||
layout_free(w);
|
||||
w->layout_root = w->saved_layout_root;
|
||||
|
||||
TAILQ_FOREACH(wp1, &w->panes, entry) {
|
||||
wp1->layout_cell = wp1->saved_layout_cell;
|
||||
wp1->saved_layout_cell = NULL;
|
||||
TAILQ_FOREACH(wp, &w->panes, entry) {
|
||||
wp->layout_cell = wp->saved_layout_cell;
|
||||
wp->saved_layout_cell = NULL;
|
||||
}
|
||||
layout_fix_panes(w, w->sx, w->sy);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user