summaryrefslogtreecommitdiff
path: root/tests/meson.build
diff options
context:
space:
mode:
authorBerke Güzel <wenekar1@gmail.com>2026-10-13 16:23:07 +0300
committerBerke Güzel <wenekar1@gmail.com>2026-10-13 16:23:07 +0300
commit276a70a84fed5be229c12546df1ac393158a4ec9 (patch)
treef3d0e00d6339efacc466b32048644c388315e90d /tests/meson.build
parent138b9c40aa211edff1d0201083aa25a8b467ee15 (diff)
Implement relative pointer mode on Wayland
yasl_surface_set_pointer_mode(YASL_POINTER_RELATIVE) now takes a persistent zwp_locked_pointer_v1 on the surface and hides its cursor. While the compositor keeps the lock engaged, zwp_relative_pointer_v1 motion is pushed as POINTER_MOTION with pos frozen and delta in device pixels. When the lock disengages, as on focus loss, motion is absolute again with a delta derived by the input queue. The lock follows the pointer's seat: it moves to another seat when its seat loses the pointer, and is released on NORMAL and on surface destruction. Compositors without both protocols return false. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'tests/meson.build')
-rw-r--r--tests/meson.build5
1 files changed, 5 insertions, 0 deletions
diff --git a/tests/meson.build b/tests/meson.build
index 951b30e..980f5db 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -189,6 +189,11 @@ if has_wayland
include_directories: inc, dependencies: yasl_dep,
)
test('cursor-wayland', cursor_wayland_test)
+ relative_pointer_test = executable('yasl-relative-pointer-wayland-test',
+ 'wayland/test_relative_pointer.c',
+ include_directories: inc, dependencies: yasl_dep,
+ )
+ test('relative-pointer-wayland', relative_pointer_test)
endif
benchmark_exe = executable(