Page MenuHomePhabricator

wayland_egl: Fix drop shadows on radeon

Authored by ManMower on Sep 11 2018, 8:19 AM.



We're doing this all wrong.

We've asking for "at least 1 bit" of A, R, G, B color depth.

ARGB2101010 fits that nicely, so mesa on radeon gives it to us.

This only fixes the drop shadows though, it's entirely possible that
a fullscreen window without alpha would get ARGB2101010 instead of
XRGB8888, so this code probably needs a rethink for multiple engines.

Diff Detail

rEFL core/efl
Automatic diff as part of commit; lint not applicable.
Automatic diff as part of commit; unit tests not applicable.
ManMower created this revision.Sep 11 2018, 8:19 AM

It seems that this patch has no reviewers specified. If you are unsure who can review your patch, please check this wiki page and see if anyone can be added:

ManMower requested review of this revision.Sep 11 2018, 8:19 AM

Forgot to mention this fixes T7350

devilhorns accepted this revision.Sep 11 2018, 8:40 AM
devilhorns added a subscriber: devilhorns.

Makes sense. How did this go soo long without being detected ? :( My guess is other gl engines are doing the same.... Wondering if we should land this patch ? or wait for other engines to be fixed ??

This revision is now accepted and ready to land.Sep 11 2018, 8:40 AM

I'd love to see most of this "kind of code" refactored into a single implementation. Pretty much any engine that does this egl config selection has to do it the same way, except for tiny platform specific bits.

I think it hasn't been a problem until now because 10-bit visuals haven't been a big deal until "fairly recently", and whether a driver returns 8888 or 2101010 for what we asked for is completely implementation defined and could change between releases.

So I figure we land this now, and "in the future" see how much of the egl boiler plate stuff we can refactor out into a common implementation.

That sounds like a good idea. I'll go ahead and land this .. in the meantime, maybe a TODO ticket for the egl refactor ??

This revision was automatically updated to reflect the committed changes.