From 78be0decf8eddb8b8862fdbdf4adca4e6bf57ed3 Mon Sep 17 00:00:00 2001 From: DreamMaoMao <2523610504@qq.com> Date: Wed, 19 Feb 2025 19:04:09 +0800 Subject: [PATCH] fix:Shake after dragging window to resize or move --- maomao.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/maomao.c b/maomao.c index 8e50e8a..3032dc3 100644 --- a/maomao.c +++ b/maomao.c @@ -1896,6 +1896,10 @@ void commitnotify(struct wl_listener *listener, void *data) { if (!c || c->iskilling || c->animation.tagining || c->animation.tagining || c->animation.tagouted) return; + + if (c == grabc) + return; + // if don't do this, some client may resize uncompleted resize(c, c->geom, (c->isfloating && !c->isfullscreen)); @@ -3969,6 +3973,7 @@ void resize(Client *c, struct wlr_box geo, int interact) { if (c == grabc) { c->animation.running = false; c->need_set_position = false; + c->animainit_geom = c->current = c->pending = c->animation.current = c->geom; wlr_scene_node_set_position(&c->scene->node, c->geom.x, c->geom.y); apply_border(c,c->geom, 0); wlr_scene_node_set_position(&c->scene_surface->node, c->bw, c->bw);