check current and pending geometry to set c->resize to zero

Fixes #260
This commit is contained in:
Leonardo Hernández Hernández 2022-07-06 19:14:12 -05:00
parent 7cc6c640e2
commit ff70337c16
No known key found for this signature in database
GPG Key ID: E538897EE11B9624
1 changed files with 3 additions and 3 deletions

6
dwl.c
View File

@ -792,10 +792,10 @@ commitnotify(struct wl_listener *listener, void *data)
Client *c = wl_container_of(listener, c, commit);
/* mark a pending resize as completed */
if (c->resize && c->resize <= c->surface.xdg->current.configure_serial)
if (c->resize && (c->resize <= c->surface.xdg->current.configure_serial
|| (c->surface.xdg->current.geometry.width == c->surface.xdg->pending.geometry.width
&& c->surface.xdg->current.geometry.height == c->surface.xdg->pending.geometry.height)))
c->resize = 0;
else if (c->resize)
c->resize = client_set_size(c, c->geom.width - 2 * c->bw, c->geom.height - 2 * c->bw);
}
void