Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request] disable animations for specific class or window type #19

Open
ghost opened this issue Feb 10, 2023 · 10 comments
Open

Comments

@ghost
Copy link

ghost commented Feb 10, 2023

It's not really a bug, but it could be awesome if you can add a feature to exclude specific classes or window types from being animated.
I've been using this fork for less than a week on fedora 37 with AwesomeWM and seems to work flawlessly,
and I know that it has a feature to change the animation for each window type. But I can't find an option to disable animations completely say for example of the menus, tooltips or dmenu.

@ghost ghost changed the title [Feature Request] disable animations for certain class or window type [Feature Request] disable animations for specific class or window type Feb 10, 2023
@FT-Labs
Copy link
Owner

FT-Labs commented Feb 16, 2023

have you tried using

animation = "none";

It seems to work on my case

@ghost
Copy link
Author

ghost commented Feb 17, 2023

have you tried using

animation = "none";

It seems to work on my case

I'll give it a try later today

Edit.
I tried it with tooltips and menus and it does not work

wintypes:
{
tooltip = { animation = "none" }
};

Am I doing it right?

@Darukutsu
Copy link

I have another idea about having custom animation/disabling features per WM_CLASS. I don't know if this is problem of rofi, but it doesn't implement _NET_WM_WINDOW_TYPE or rather should say that window type is normal

Therefor wintypes:{...} isn't very suitable.

animation-for-open-window = [ "slide-up:class_g = 'rofi'" ];
animation-for-unmap-window = [ "slide-down:class_g = 'rofi'" ];
```

@Darukutsu
Copy link

I'm not sure why, appart from line win.c:2689:

if (ps->o.animations && ps->o.animation_for_unmap_window != OPEN_WINDOW_ANIMATION_NONE && ps->o.wintype_option[w->window_type].animation) {

because you certainly have return on win.c:1144:

    if (ps->o.wintype_option[w->window_type].animation == 0) {
        log_debug("Animation disabled by window_type");
        return false;
    }

anyway compare my diff

here is video how it works before and after fix (on bspwm):

issue.mp4

fly-in animation are bit whacky when fast spamming but doesn't matter. Pls ignore vid-quality/fps :D.

@sr-prog
Copy link

sr-prog commented Jun 7, 2023

have you tried using
animation = "none";
It seems to work on my case

I'll give it a try later today

Edit. I tried it with tooltips and menus and it does not work

wintypes:
{
tooltip = { animation = "none" }
};

Am I doing it right?

Just wanted to say I tried something similar:

wintypes:
{
  notification = { animation = "none"; }
};

It doesn't seem to work for me either.

Also I don't know if this is related but I saw this error in the output every time a notification came while I had animation = "none"; set:

[ 06/07/2023 18:42:15.303 _gl_fill ERROR ] GLX error at line 706: GL_INVALID_FRAMEBUFFER_OPERATION

@FT-Labs

@SeleneCosmia
Copy link

SeleneCosmia commented Aug 4, 2023

I just tried this on Awesome window manager, and it's working perfectly without any issue.

Basically what I wrote was
wintypes: { tooltip = { animation = none; ..<other-opts-here>.. }; };
..so pretty much the same except I didn't put quotations around the option.

Maybe try unquoting your "none" option and see if that helps, sometimes it's something as simple as that.

@sr-prog @HishamAHai

@FT-Labs
Copy link
Owner

FT-Labs commented Aug 5, 2023

About

[ 06/07/2023 18:42:15.303 _gl_fill ERROR ] GLX error at line 706: GL_INVALID_FRAMEBUFFER_OPERATION

I could not solve why this issue is happening, I'm not an opengl expert. None works for me as well, but I will update both this option and general animation support soon

@AllenWu233
Copy link

I really need this feature, for disabling animation for Fcitx5 :D

@DDGRCF
Copy link

DDGRCF commented Mar 22, 2024

I really need this feature for fcitx too

@WuuBoLin
Copy link

WuuBoLin commented Oct 3, 2024

I am using this Picom fork w/ Xmonad, and it works perfectly but menus and dnd.

PR #41 fixes this, seems like its just because animation-exclude is missing in picom_options[].
After adding it, we can exclude Fcitx5 menus like any other exclude options.

Simply adding this to picom.conf.

animation-exclude = [
    "window_type *= 'dnd'",
    "window_type *= 'menu'",
    "window_type *= 'utility'",
];

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants