=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/server-client.c,v retrieving revision 1.375 retrieving revision 1.376 diff -u -r1.375 -r1.376 --- src/usr.bin/tmux/server-client.c 2021/06/10 07:43:44 1.375 +++ src/usr.bin/tmux/server-client.c 2021/07/21 08:06:36 1.376 @@ -1,4 +1,4 @@ -/* $OpenBSD: server-client.c,v 1.375 2021/06/10 07:43:44 nicm Exp $ */ +/* $OpenBSD: server-client.c,v 1.376 2021/07/21 08:06:36 nicm Exp $ */ /* * Copyright (c) 2009 Nicholas Marriott @@ -93,7 +93,7 @@ server_client_set_overlay(struct client *c, u_int delay, overlay_check_cb checkcb, overlay_mode_cb modecb, overlay_draw_cb drawcb, overlay_key_cb keycb, overlay_free_cb freecb, - void *data) + overlay_resize_cb resizecb, void *data) { struct timeval tv; @@ -114,6 +114,7 @@ c->overlay_draw = drawcb; c->overlay_key = keycb; c->overlay_free = freecb; + c->overlay_resize = resizecb; c->overlay_data = data; c->tty.flags |= TTY_FREEZE; @@ -2061,9 +2062,12 @@ if (c->flags & CLIENT_CONTROL) break; server_client_update_latest(c); - server_client_clear_overlay(c); tty_resize(&c->tty); recalculate_sizes(); + if (c->overlay_resize == NULL) + server_client_clear_overlay(c); + else + c->overlay_resize(c); server_redraw_client(c); if (c->session != NULL) notify_client("client-resized", c);