kwin/plugins/platforms/virtual
Martin Flöser cbbe94d769 Restrict available supported compositors based on first initialized one
Summary:
On Wayland we cannot switch from OpenGL to QPainter compositor as this
would break any running OpenGL application. KWin registers it's
EGLDisplay to Wayland and without OpenGL this doesn't make sense any
more. We are not able to render OpenGL buffers in the QPainter
compositor.

While it's theoretically possible to switch from QPainter to OpenGL it
doesn't make any sense for the same reason. Any running OpenGL
application would be using llvmpipe and could not be switched to proper
OpenGL.

This change stores the selected compositing type in Platform and the
implementations can use it to restrict the supported compositors. On X11
we don't need this, all other Platforms implement the restriction. Thus
it's no longer possible to switch the backends at runtime.

Test Plan:
Adjusted tests run, no runtime test as gui doesn't support
switching to QPainter anyway.

Reviewers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D19084
2019-02-22 16:59:08 +01:00
..
CMakeLists.txt [platform/virtual] Drop support for vgem and rendernode 2019-01-12 07:37:25 +01:00
egl_gbm_backend.cpp [platform/virtual] Swap buffers in EGL GBM backend 2019-02-21 23:30:11 +01:00
egl_gbm_backend.h [platform/virtual] Drop support for vgem and rendernode 2019-01-12 07:37:25 +01:00
scene_qpainter_virtual_backend.cpp
scene_qpainter_virtual_backend.h
screens_virtual.cpp
screens_virtual.h
virtual.json SVN_SILENT made messages (.desktop file) - always resolve ours 2018-10-27 05:56:01 +02:00
virtual_backend.cpp [platform/virtual] Drop support for vgem and rendernode 2019-01-12 07:37:25 +01:00
virtual_backend.h Restrict available supported compositors based on first initialized one 2019-02-22 16:59:08 +01:00
virtual_output.cpp [platforms/virtual] Set raw physical size of outputs 2018-08-31 13:22:55 +02:00
virtual_output.h