Hyprland
Hyprland copied to clipboard
Weird Lag when dragging floating windows
on setting misc{animate_manual_resizes} to true, the window gets a weird lag or idk what to call it
https://user-images.githubusercontent.com/90208727/204487118-c616074f-5d5d-4f64-9a72-7112c315d42d.mp4
Is their anyway we could fix it cuz i really love animated resize but i hate this lag thing
only happens for a few people which does not include me, so I don't know what is the root cause.
nvm
same, happen to me too
Me too, I noticed this happens when I enable animations. Otherwise it's fine.
can someone share a minimal reproducible config?
Me too, I noticed this happens when I enable animations. Otherwise it's fine.
Yeah...but turning animations off also removes this resize animation...maybe thats why it works?
it's something to do with animate_manual_resize only
@vaxerski I found the possible cause of this issue, while looking through my config file, I noticed I had a separate windowsMove animation with its own separate bezier curve, I removed the windowsMove line and Voila! It is working as expected, my guess is that this lag issue only persists when we explicitly set a separate beizier curve for windowsMove?
Is it possible to set this windowsMove thing to only apply to keybinds instead of both key and mouse binds? I suppose this would fix this issue without having to sacrifice my bezier style
thanks for identifying. I'll look into this.
Is it possible to set this windowsMove thing to only apply to keybinds instead of both key and mouse binds? I suppose this would fix this issue without having to sacrifice my bezier style
No.
check with b9812f8bc0f372875af8c332e4537fdbf2b99c23
The lag does seem to get better (it's more responsive) but it's not completely gone, the best bet for now is to not put bezier for windowsMove all together
Is it possible to set this
windowsMovething to only apply to keybinds instead of both key and mouse binds? I suppose this would fix this issue without having to sacrifice my bezier style
removing windowsMove did not solve the issue for me
Can you share me your config? @ad-on-is
Can you share me your config? @ad-on-is
Sure: https://pastebin.com/GCYkbCuW
~~@vaxerski sorry for the ping, but I have a likely cause for this, animate manual resizes = true. At least that setting causes this exact issue on 3 different pcs~~ long day sorry.
umm thats exactly what the reporter said...

it's just that I can't repro it. Been always using it on true and nothing's amiss
So I tried to build version 14, but I have no idea how to get the compatible wlroots for that. Either way I remember this starting to happen between version 14 to 16. I can't pinpoint it though sadly.
So I tried to build version 14, but I have no idea how to get the compatible wlroots for that.
git reset --hard <hash> --recurse-submodules && sudo make install
?
Ah thanks for the info, personally never used submodules with git, that's why I didn't understand that part, in the meantime I tried your binaries, and the problem starts at version 17. Tomorrow I might be able to be pinpoint when it started.
thank you. git bisect may come in handy.
Found it, this commit creates the bug: https://github.com/hyprwm/Hyprland/commit/8ffd244ef6cca76af51e283355ae048557510349
well that's anticlimactic. That's the commit that introduced the animations on dragging floating windows.
I was also extremely surprised, and I still can't figure out why though. When I move the window extremely slowly it works. But the moment I do it with a normal speed it has these small stops where it freezes. A brief guess would be a performance issue, but I doubt that an rx6600xt or a gtx 1070 wouldn't be good enough.
I guess my suggestion is to put this behind a different config flag, animate_mouse_windowdragging.
I mean, it could also be your curve.
How it's currently animated is that whenever you move your window by 1 pixel or more, it restarts the animation.
My guess is that it's not lag, but the animation curve snapping back to the start.
Can you try with a linear curve? it's 0.5,0.5,0.5,0.5.
Hmm, it doesn't make much of a difference, I guess there is always going to be a slight "delay" with animations, but it definitely doesn't feel right. Perhaps polling rate (and/or refreshrate etc ) might cause some issues here as well ? (I haven't checked how the tick is done)
I added that config flag for now in a pr -> https://github.com/hyprwm/Hyprland/pull/1658, not necessarily a fix, but this allows users to still get manual resizes without floating window animations.
you can't really fix it cuz it works as intended... #1658 merged
I also suppose misc:vfr = false doesn't fix this right?