compfy icon indicating copy to clipboard operation
compfy copied to clipboard

Exclude Move/Resizing Animations

Open daricoder opened this issue 2 years ago • 10 comments

There is a way to disable or exclude window movement animations for a certain type of window. I have some windows that have their own movement animation. In the specific case I used Lua's rubato library to create the animation but this animation interferes with the compfy motion animation.

daricoder avatar Nov 18 '23 02:11 daricoder

Hey @daricoder I assume you mean the animations of windows when you are say switching them between layouts or monitors or dragging them, those being the animating of movement updates?

allusive-dev avatar Nov 18 '23 02:11 allusive-dev

Sorry for the delay 🙃 . Ehmm no 🤔, I mean that you can exclude smooth movement for certain types of windows. Just like the animations of opening (animation-open-exclude) and closing (animation-unmap-exclude) of windows, the same would be filtering the animation of smoothness but for the movement of windows.

Certain windows have animations created by rubato and these animations worked well since picom did not include animations. Now the rubato animation doesn't look good because it interferes with the compfy motion animation as I use rubato to interpolate the window motion. I think it would be nice if you could exclude the motion animation for certain window types letting the user create their own animations.

The animation I use is rubato's bouncy -> search for bouncy

daricoder avatar Nov 19 '23 18:11 daricoder

@daricoder If you are just looking to exclude open and unmap animations take a look at this page in the wiki.

If you are looking for something else please let me know.

allusive-dev avatar Nov 19 '23 20:11 allusive-dev

Yes, I just edited my previous comment. What I am asking is to exclude the window movement animation (not open or close animation) to be able to let users define their own movement animation. In my case I use a notification window that has a motion tweening animation and it interferes with the smooth motion of compfy.

daricoder avatar Nov 19 '23 22:11 daricoder

let users define their own movement animation.

Hm. So let users declare their own animations (for open/unmap) using a custom syntax?

allusive-dev avatar Nov 20 '23 00:11 allusive-dev

I would suggest that smooth motion can be disabled for certain types of windows. Something like "animation-move-exclude" This way it allows the user to decide whether to create their own animations with their own libraries or use compfy's smooth motion animation.

daricoder avatar Nov 21 '23 03:11 daricoder

Maybe in the future you could see the best way to map the open and close animations (zoom, slide-up, etc.). It would be something like renaming "animation-for-open-window" to "animation-default-open-window" and the old "animation-for-open-window" to map animations to windows like: animation-for-open-window = ["class_g:slide-left = 'Rofi'", ]; I don't know these are just some ideas lol.

daricoder avatar Nov 21 '23 03:11 daricoder

I would suggest that smooth motion can be disabled for certain types of windows.

I'm not sure what the difference between that and animations as a whole is?

animation-for-open-window = ["class_g:slide-left = 'Rofi'", ];

This is not possible at the moment I have tried in. Passing a string into a string with a entptr being : is beyond my knowledge currently.

allusive-dev avatar Nov 21 '23 05:11 allusive-dev

I'm not sure what the difference between that and animations as a whole is?

animations=true enables animations for both opening, closing, moving and resizing windows.

You already exclude the animations for opening and closing windows with animation-open-exclude and animation-unmap-exclude but you do not exclude the animation for their movement. If you disable or exclude the animation for movement then you will let the user implement their own movement animation so that it does not interfere. In my case, I have some windows that work as widgets and have their own movement animation where compfy interferes.

daricoder avatar Nov 21 '23 05:11 daricoder

I see. I'll take a look into it.

allusive-dev avatar Nov 21 '23 08:11 allusive-dev