No description
Find a file
Niklas Herder 28258e5a5f cursor: Add idle-hide timeout
Adds a cursor_hide_timeout config key (Option<u32> seconds) to
CosmicCompConfig. When set, the cursor is hidden after the configured
period of pointer inactivity and revealed again by any pointer event.
Touch input does not count as activity (no visible cursor to surface).

Implementation:
- Per-seat hidden flag, calloop timer token, and last-armed Instant on
  CursorStateInner.
- notify_cursor_activity called from each pointer-related input branch
  (motion, button, axis, tablet) resets the flag and reschedules the
  timer; rapid successive calls are coalesced behind a 100ms throttle
  so high-frequency mice don't churn the calloop timer source.
- On timer fire, the hidden flag is set, draw_cursor short-circuits to
  an empty element list, and a render is scheduled. Active pointer
  grabs (drags, resizes) suppress the hide.
- Config reload arms or cancels the timer immediately; None as the
  configured value collapses the cancel path into the same function.

Closes #2231.

Drafted with Claude (Anthropic); reviewed and tested by the committer.
2026-05-22 14:14:17 +02:00
.github ci: Make sure we lint and test all features 2026-03-24 16:23:43 +01:00
cosmic-comp-config cursor: Add idle-hide timeout 2026-05-22 14:14:17 +02:00
data feat(input): bind XF86LaunchA to workspace overview 2026-03-09 22:09:49 +01:00
debian Use automatic shared library dependency on libdisplay-info 2025-10-21 08:50:17 -06:00
examples fix: update test 2026-03-13 15:56:42 -04:00
resources i18n: translation updates from weblate 2026-05-03 01:52:11 +02:00
src cursor: Add idle-hide timeout 2026-05-22 14:14:17 +02:00
.gitignore Rework source filtering. 2023-01-04 01:52:16 -08:00
build.rs cargo fmt 2025-10-22 23:55:11 +02:00
Cargo.lock chore: update smithay 2026-05-19 19:26:25 +02:00
Cargo.toml chore: update smithay 2026-05-19 19:26:25 +02:00
flake.lock Update and fix flake.nix 2024-09-02 19:44:51 +02:00
flake.nix fix: add missing libdisplay-info library into flake.nix 2025-01-12 13:09:03 +01:00
i18n.toml i18n support 2023-07-06 00:04:34 +02:00
LICENSE Initial commit 2021-12-15 17:25:15 +01:00
Makefile Use new config from cosmic-settings-config 2024-09-04 20:50:42 +02:00
rust-toolchain.toml chore: bump MSRV to 1.90 2025-12-22 16:29:22 +01:00
rustfmt.toml chore: format for Rust 2024 2025-10-22 23:55:11 +02:00