fix: tag animaition for float window miss clip

This commit is contained in:
DreamMaoMao 2025-04-05 07:26:53 +08:00
parent a43550345e
commit 5db7c42bac

View file

@ -1008,7 +1008,7 @@ void apply_border(Client *c, struct wlr_box clip_box, int offsetx,
wlr_scene_node_set_position(&c->border[3]->node, clip_box.width - c->bw,
c->bw);
if (ISTILED(c)) {
if (ISTILED(c) || c->animation.tagining || c->animation.tagouted || c->animation.tagouting) {
if (c->animation.current.x < c->mon->m.x) {
set_rect_size(c->border[2], 0, 0);
} else if (c->animation.current.x + c->animation.current.width >
@ -1037,10 +1037,10 @@ struct uvec2 clip_to_hide(Client *c, struct wlr_box *clip_box) {
offset.x = 0;
offset.y =0;
if(!ISTILED(c)) return offset;
if(!ISTILED(c) && !c->animation.tagining && !c->animation.tagouted && !c->animation.tagouting) return offset;
// // make tagout tagin animations not visible in other monitors
if (ISTILED(c)) {
if (ISTILED(c) || c->animation.tagining || c->animation.tagouted || c->animation.tagouting) {
if (c->animation.current.x <= c->mon->m.x) {
offsetx = c->mon->m.x - c->animation.current.x - c->bw;
clip_box->x = clip_box->x + offsetx;