kwin/plugins/platforms/x11/standalone/CMakeLists.txt
Martin Flöser 2e868c50df Create a dedicated X11Filter for Client sync events and move it to X11 platform
Summary:
On Wayland we have the sync disabled as it doesn't work properly. This
allows us to also move the sync event handling into the X11 standalone
platform.

The code is slightly refactored: instead of passing the event to each
Client, we search for the matching Client. For that the SyncAlaram struct
is added to public section of Client. The method to handle the sync
doesn't need the event any more and is moved from events.cpp to
client.cpp.

Test Plan:
Run Xephyr+kwin_x11, resized a window and verified through
gdb breakpoint that the sync still works

Reviewers: #kwin, #plasma

Subscribers: plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D7942
2017-10-19 19:56:58 +02:00

43 lines
1.1 KiB
CMake

set(X11PLATFORM_SOURCES
edge.cpp
logging.cpp
x11cursor.cpp
x11_platform.cpp
screens_xrandr.cpp
windowselector.cpp
overlaywindow_x11.cpp
screenedges_filter.cpp
non_composited_outline.cpp
x11_decoration_renderer.cpp
xfixes_cursor_event_filter.cpp
effects_x11.cpp
effects_mouse_interception_x11_filter.cpp
sync_filter.cpp
)
if(X11_Xinput_FOUND)
set(X11PLATFORM_SOURCES ${X11PLATFORM_SOURCES} xinputintegration.cpp)
endif()
if(HAVE_EPOXY_GLX)
set(X11PLATFORM_SOURCES ${X11PLATFORM_SOURCES} glxbackend.cpp glx_context_attribute_builder.cpp)
endif()
include_directories(${CMAKE_SOURCE_DIR}/platformsupport/scenes/opengl)
add_library(KWinX11Platform MODULE ${X11PLATFORM_SOURCES})
target_link_libraries(KWinX11Platform eglx11common kwin kwinxrenderutils SceneOpenGLBackend Qt5::X11Extras XCB::CURSOR)
if(X11_Xinput_FOUND)
target_link_libraries(KWinX11Platform ${X11_Xinput_LIB})
endif()
if(HAVE_DL_LIBRARY)
target_link_libraries(KWinX11Platform ${DL_LIBRARY})
endif()
install(
TARGETS
KWinX11Platform
DESTINATION
${PLUGIN_INSTALL_DIR}/org.kde.kwin.platforms/
)