Diagnostics collects what this session doesn't allow, logs it, and lists it in the settings panel (with a dot on the gear): KWin not launching sloposk as its keyboard (detected by WAYLAND_SOCKET, since KWin offers the input-method global to every client), fake input missing or too old, org.kde.keyboard unreachable, and the D-Bus control name taken. Modifier combos go through fake input even in text fields: KWin drops the input method's modifier mask for most clients, so Ctrl+A typed "a". The desktop file is generated with an absolute Exec, which KWin needs to match it: one for the installed binary, one for the build's. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
25 lines
988 B
CMake
25 lines
988 B
CMake
function(sloposk_add_test name)
|
|
qt_add_executable(${name} ${name}.cpp)
|
|
target_link_libraries(${name} PRIVATE sloposk_core Qt6::Test)
|
|
add_test(NAME ${name} COMMAND ${name})
|
|
set_tests_properties(${name} PROPERTIES ENVIRONMENT "QT_QPA_PLATFORM=offscreen")
|
|
endfunction()
|
|
|
|
sloposk_add_test(tst_shiftstate)
|
|
sloposk_add_test(tst_layoutloader)
|
|
sloposk_add_test(tst_layoutbuilder)
|
|
sloposk_add_test(tst_keygeometry)
|
|
sloposk_add_test(tst_controller)
|
|
sloposk_add_test(tst_pointertracker)
|
|
sloposk_add_test(tst_alternatespicker)
|
|
sloposk_add_test(tst_textrules)
|
|
sloposk_add_test(tst_deadkeys)
|
|
sloposk_add_test(tst_keyrepeater)
|
|
sloposk_add_test(tst_visibility)
|
|
sloposk_add_test(tst_diagnostics)
|
|
|
|
# Needs the QML module itself, not just the C++ backing library.
|
|
sloposk_add_test(tst_keyboardsurface)
|
|
target_link_libraries(tst_keyboardsurface PRIVATE sloposk_coreplugin)
|
|
set_tests_properties(tst_keyboardsurface PROPERTIES ENVIRONMENT "QT_QPA_PLATFORM=offscreen;QT_QUICK_BACKEND=software")
|