kwin/autotests/wayland_client/CMakeLists.txt
Martin Gräßlin 5852a4c069 [kwin_wayland] Add SeatInterface to server module
So far the Seat interface is provided together with pointer and
keyboard. As always touch is not yet implemented. The pointer interface
is still lacking the set cursor callback. Keyboard on the other hand is
complete.

Both Keyboard and Pointer have the concept of a focused surface and only
to the bound interface belonging to the same client as the focused
surface events are sent.

The change comes with a set of new auto tests also verifying the client
side which wasn't possible before as we couldn't fake events.
2014-09-02 10:55:33 +02:00

160 lines
8.3 KiB
CMake

include_directories(${CMAKE_BINARY_DIR}/wayland_protocols/)
set_source_files_properties(${CMAKE_BINARY_DIR}/wayland_protocols/wayland-client-fullscreen-shell.c GENERATED)
########################################################
# Test WaylandConnectionThread
########################################################
set( testWaylandConnectionThread_SRCS
test_wayland_connection_thread.cpp
${KWIN_SOURCE_DIR}/wayland_server/buffer_interface.cpp
${KWIN_SOURCE_DIR}/wayland_client/connection_thread.cpp
${KWIN_SOURCE_DIR}/wayland_server/compositor_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/display.cpp
${KWIN_SOURCE_DIR}/wayland_server/output_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/seat_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/shell_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/surface_interface.cpp
)
add_executable(testWaylandConnectionThread ${testWaylandConnectionThread_SRCS})
target_link_libraries( testWaylandConnectionThread Qt5::Test Qt5::Gui Wayland::Client Wayland::Server)
add_test(kwin-testWaylandConnectionThread testWaylandConnectionThread)
ecm_mark_as_test(testWaylandConnectionThread)
########################################################
# Test WaylandRegistry
########################################################
set( testWaylandRegistry_SRCS
test_wayland_registry.cpp
${KWIN_SOURCE_DIR}/wayland_client/connection_thread.cpp
${KWIN_SOURCE_DIR}/wayland_client/registry.cpp
${CMAKE_BINARY_DIR}/wayland_protocols/wayland-client-fullscreen-shell.c
)
add_executable(testWaylandRegistry ${testWaylandRegistry_SRCS})
add_dependencies(testWaylandRegistry wayland-client-fullscreen-shell)
target_link_libraries( testWaylandRegistry Qt5::Test Wayland::Client)
add_test(kwin-testWaylandRegistry testWaylandRegistry)
ecm_mark_as_test(testWaylandRegistry)
########################################################
# Test WaylandFullscreenShell
########################################################
if(Wayland_VERSION VERSION_GREATER "1.4.0")
set( testWaylandFullscreenShell_SRCS
test_wayland_fullscreen_shell.cpp
${KWIN_SOURCE_DIR}/wayland_client/connection_thread.cpp
${KWIN_SOURCE_DIR}/wayland_client/registry.cpp
${KWIN_SOURCE_DIR}/wayland_client/fullscreen_shell.cpp
${CMAKE_BINARY_DIR}/wayland_protocols/wayland-client-fullscreen-shell.c
)
add_executable(testWaylandFullscreenShell ${testWaylandFullscreenShell_SRCS})
add_dependencies(testWaylandFullscreenShell wayland-client-fullscreen-shell)
target_link_libraries( testWaylandFullscreenShell Qt5::Test Wayland::Client)
add_test(kwin-testWaylandFullscreenShell testWaylandFullscreenShell)
ecm_mark_as_test(testWaylandFullscreenShell)
endif()
########################################################
# Test WaylandOutput
########################################################
set( testWaylandOutput_SRCS
test_wayland_output.cpp
${KWIN_SOURCE_DIR}/wayland_client/connection_thread.cpp
${KWIN_SOURCE_DIR}/wayland_client/registry.cpp
${KWIN_SOURCE_DIR}/wayland_client/fullscreen_shell.cpp
${KWIN_SOURCE_DIR}/wayland_client/output.cpp
${CMAKE_BINARY_DIR}/wayland_protocols/wayland-client-fullscreen-shell.c
${KWIN_SOURCE_DIR}/wayland_server/buffer_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/compositor_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/display.cpp
${KWIN_SOURCE_DIR}/wayland_server/output_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/seat_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/shell_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/surface_interface.cpp
)
add_executable(testWaylandOutput ${testWaylandOutput_SRCS})
add_dependencies(testWaylandOutput wayland-client-fullscreen-shell)
target_link_libraries( testWaylandOutput Qt5::Test Qt5::Gui Wayland::Client Wayland::Server)
add_test(kwin-testWaylandOutput testWaylandOutput)
ecm_mark_as_test(testWaylandOutput)
########################################################
# Test WaylandShell
########################################################
set( testWaylandShell_SRCS
test_wayland_shell.cpp
${KWIN_SOURCE_DIR}/wayland_client/compositor.cpp
${KWIN_SOURCE_DIR}/wayland_client/connection_thread.cpp
${KWIN_SOURCE_DIR}/wayland_client/registry.cpp
${KWIN_SOURCE_DIR}/wayland_client/fullscreen_shell.cpp
${KWIN_SOURCE_DIR}/wayland_client/shell.cpp
${KWIN_SOURCE_DIR}/wayland_client/surface.cpp
${CMAKE_BINARY_DIR}/wayland_protocols/wayland-client-fullscreen-shell.c
${KWIN_SOURCE_DIR}/wayland_server/buffer_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/compositor_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/display.cpp
${KWIN_SOURCE_DIR}/wayland_server/output_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/seat_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/shell_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/surface_interface.cpp
)
add_executable(testWaylandShell ${testWaylandShell_SRCS})
add_dependencies(testWaylandShell wayland-client-fullscreen-shell)
target_link_libraries( testWaylandShell Qt5::Test Qt5::Gui Wayland::Client Wayland::Server)
add_test(kwin-testWaylandShell testWaylandShell)
ecm_mark_as_test(testWaylandShell)
########################################################
# Test WaylandSurface
########################################################
set( testWaylandSurface_SRCS
test_wayland_surface.cpp
${KWIN_SOURCE_DIR}/wayland_client/buffer.cpp
${KWIN_SOURCE_DIR}/wayland_client/compositor.cpp
${KWIN_SOURCE_DIR}/wayland_client/connection_thread.cpp
${KWIN_SOURCE_DIR}/wayland_client/registry.cpp
${KWIN_SOURCE_DIR}/wayland_client/fullscreen_shell.cpp
${KWIN_SOURCE_DIR}/wayland_client/shm_pool.cpp
${KWIN_SOURCE_DIR}/wayland_client/surface.cpp
${CMAKE_BINARY_DIR}/wayland_protocols/wayland-client-fullscreen-shell.c
${KWIN_SOURCE_DIR}/wayland_server/buffer_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/compositor_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/display.cpp
${KWIN_SOURCE_DIR}/wayland_server/output_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/seat_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/shell_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/surface_interface.cpp
)
add_executable(testWaylandSurface ${testWaylandSurface_SRCS})
add_dependencies(testWaylandSurface wayland-client-fullscreen-shell)
target_link_libraries( testWaylandSurface Qt5::Test Qt5::Gui Wayland::Client Wayland::Server)
add_test(kwin-testWaylandSurface testWaylandSurface)
ecm_mark_as_test(testWaylandSurface)
########################################################
# Test WaylandSeat
########################################################
set( testWaylandSeat_SRCS
test_wayland_seat.cpp
${KWIN_SOURCE_DIR}/wayland_client/buffer.cpp
${KWIN_SOURCE_DIR}/wayland_client/compositor.cpp
${KWIN_SOURCE_DIR}/wayland_client/connection_thread.cpp
${KWIN_SOURCE_DIR}/wayland_client/registry.cpp
${KWIN_SOURCE_DIR}/wayland_client/fullscreen_shell.cpp
${KWIN_SOURCE_DIR}/wayland_client/keyboard.cpp
${KWIN_SOURCE_DIR}/wayland_client/pointer.cpp
${KWIN_SOURCE_DIR}/wayland_client/seat.cpp
${KWIN_SOURCE_DIR}/wayland_client/shm_pool.cpp
${KWIN_SOURCE_DIR}/wayland_client/surface.cpp
${CMAKE_BINARY_DIR}/wayland_protocols/wayland-client-fullscreen-shell.c
${KWIN_SOURCE_DIR}/wayland_server/buffer_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/compositor_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/display.cpp
${KWIN_SOURCE_DIR}/wayland_server/output_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/seat_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/shell_interface.cpp
${KWIN_SOURCE_DIR}/wayland_server/surface_interface.cpp
)
add_executable(testWaylandSeat ${testWaylandSeat_SRCS})
add_dependencies(testWaylandSeat wayland-client-fullscreen-shell)
target_link_libraries( testWaylandSeat Qt5::Test Qt5::Gui Wayland::Client Wayland::Server)
add_test(kwin-testWaylandSeat testWaylandSeat)
ecm_mark_as_test(testWaylandSeat)