wlrfx / scenefx

A drop-in replacement for the wlroots scene API that allows wayland compositors to render surfaces with eye-candy effects
MIT License
81 stars 8 forks source link

Pass eyecandy data to the scene API #8

Closed WillPower3309 closed 1 year ago

WillPower3309 commented 1 year ago

More or less a tracking issue of https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3393. We should try to solve this upsteam, and then on our end, pass the decoration data the same way that opacity is passed.

ErikReider commented 1 year ago

Seems like it's already been done (the opacity bit) 😅

https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4145

WillPower3309 commented 1 year ago

Haha I had to laugh at the dialogue, good on you for messaging about it

WillPower3309 commented 1 year ago

Could do something similar but with wlr_scene_buffer_set_effects? Then everything else could be identical, compositors would only need to call that function

ErikReider commented 1 year ago

We should also be able to pass global args to the fx_renderer. One example would be a blur toggle

Shinyzenith commented 1 year ago

We should also be able to pass global args to the fx_renderer. One example would be a blur toggle

Has this landed in tinywl main branch?

ErikReider commented 1 year ago

We should also be able to pass global args to the fx_renderer. One example would be a blur toggle

Has this landed in tinywl main branch?

No. Just a reminder that we have to add this functionality :)

WillPower3309 commented 1 year ago

We should also be able to pass global args to the fx_renderer. One example would be a blur toggle

I'm actually not sure about this. In the SwayFX implementation, fx_renderer has no knowledge of config values, and I'm wondering if we should keep it like that for scenefx. It would simplify things a bit if we just blurred windows when specifically told, and had the compositor handle always telling us to blur if a global setting is set

ErikReider commented 1 year ago

We should also be able to pass global args to the fx_renderer. One example would be a blur toggle

I'm actually not sure about this. In the SwayFX implementation, fx_renderer has no knowledge of config values, and I'm wondering if we should keep it like that for scenefx. It would simplify things a bit if we just blurred windows when specifically told, and had the compositor handle always telling us to blur if a global setting is set

Aaah, very true! A global would be kinda redundant if it already knows that it has to blur. How are we gonna tackle this? Use the method that's used in the deco_data_temp branch or something else?

WillPower3309 commented 1 year ago

Let's bring the deco_data_temp branch into a PR and we can iterate from there