[qpa] Don't specify EGL_SURFACE_TYPE when choosing EGLConfig
ClosedPublic

Authored by ekurzinger on Apr 10 2019, 10:50 PM.

Details

Summary

Since QPA only performs off-screen rendering, it does not require an EGLConfig that supports any particular surface type.
Currently it requests a config supporting window surfaces, however the EGLDeviceEXT platform, which is the basis of the
EGLStream back-end used with the proprietary NVIDIA driver, does not support such surfaces resulting in eglChooseConfig
not returning any valid configs when that back-end is in use. Since QPA doesn't actually create any window surfaces, it should
be fine to remove this restriction to allow it to initialize properly with the EGLStream back-end.

Test Plan

Start a Wayland Plasma session on NVIDIA hardware with the proprietary driver (see https://phabricator.kde.org/D18570)
Configure the window switcher to use the breeze theme and trigger it (with alt + tab by default)
KWin should not crash and the window switcher dialogue should be displayed correctly.

Diff Detail

Repository
R108 KWin
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
ekurzinger created this revision.Apr 10 2019, 10:50 PM
Restricted Application added a subscriber: kwin. · View Herald TranscriptApr 10 2019, 10:50 PM
ekurzinger requested review of this revision.Apr 10 2019, 10:50 PM
davidedmundson accepted this revision.Apr 10 2019, 11:14 PM
davidedmundson added a subscriber: davidedmundson.

Thanks

This revision is now accepted and ready to land.Apr 10 2019, 11:14 PM
This revision was automatically updated to reflect the committed changes.