diff --git a/render.c b/render.c index 254057dc..1f79ad98 100644 --- a/render.c +++ b/render.c @@ -2756,7 +2756,7 @@ maybe_resize(struct terminal *term, int width, int height, bool force) const int total_x_pad = term->width - grid_width; const int total_y_pad = term->height - grid_height; - if (term->conf->center) { + if (term->conf->center && (!term->window->is_resizing)) { term->margins.left = total_x_pad / 2; term->margins.top = total_y_pad / 2; } else { diff --git a/wayland.c b/wayland.c index ec113552..d3c560b7 100644 --- a/wayland.c +++ b/wayland.c @@ -686,6 +686,9 @@ xdg_surface_configure(void *data, struct xdg_surface *xdg_surface, * scheduled one. I.e. there will be a small delay after the user * has *stopped* resizing, and the client application receives the * final size. + * + * Note: if we also disable content centering while resizing, then + * the last, forced, resize *is* necessary. */ bool resized = was_resizing && !win->is_resizing ? render_resize_force(term, win->configure.width, win->configure.height)