ad892ce3a6
Summary: It is not clear what the advantage of triple buffering is for KWin. An X11 compositor is meant to swap buffers once every monitor cycle. For that triple buffering is not necessary. The functionality is not maintained, does not reliably work as displayed by the existence of an environment variable to force some behavior, pollutes our code and every compositing-related problem that might be mitigated with triple buffering should find a simpler and more fitting solution with other means. There is one caveat which is if we shall block for retrace. We set it currently according to the result of the swap profiler and in the most common case with double buffering it is set to true. But on Nvidia systems this might be actual the wrong behavior. Instead of trying to work around this ignore the issue for now and move the overall architecture to something less complex by presenting after paint how we do it in the Wayland DRM backend and with double buffering on GLX (although this is at the moment also borken because we actually present then twice). Test Plan: kwin_x11 tested on i915. Reviewers: #kwin, zzag Reviewed By: #kwin, zzag Subscribers: zzag, fredrik, kwin Tags: #kwin Maniphest Tasks: T11071 Differential Revision: https://phabricator.kde.org/D23504
23 lines
601 B
CMake
23 lines
601 B
CMake
set(SCENE_OPENGL_BACKEND_SRCS
|
|
abstract_egl_backend.cpp
|
|
backend.cpp
|
|
egl_dmabuf.cpp
|
|
texture.cpp
|
|
)
|
|
|
|
include_directories(${CMAKE_SOURCE_DIR})
|
|
|
|
include(ECMQtDeclareLoggingCategory)
|
|
ecm_qt_declare_logging_category(SCENE_OPENGL_BACKEND_SRCS
|
|
HEADER
|
|
logging.h
|
|
IDENTIFIER
|
|
KWIN_OPENGL
|
|
CATEGORY_NAME
|
|
kwin_scene_opengl
|
|
DEFAULT_SEVERITY
|
|
Critical
|
|
)
|
|
|
|
add_library(SceneOpenGLBackend STATIC ${SCENE_OPENGL_BACKEND_SRCS})
|
|
target_link_libraries(SceneOpenGLBackend Qt5::Core Qt5::Widgets KF5::CoreAddons KF5::ConfigCore KF5::WindowSystem KF5::WaylandServer)
|