enBoxer/src
en 0906e86594 session: cursor_pos dedup, mouse_press bail, slot-ID stability, env-var test serial (Grok round 3 #7, #8, #10, #14)
#7: broadcast_mirror_click called hypr::cursor_pos().await?.0 then
.1 -- two hyprctl roundtrips. Replaced with a single
hypr::cursor_pos().await? returning (cx, cy).

#8: mouse_press always spawned the per-button repeat loop, even
when neither Mode::Mirror nor mouse_broadcast was on (a no-op press).
Added an early bail: when both are off, return Ok(()) without
firing the initial click or spawning the repeat task.

#10: refresh_slots re-enumerated the matched vec every 400 ms with
enumerate().map(|(i, c)| ((i + 1) as u32, c)), which shuffled slot
IDs mid-flight whenever one slot briefly hid -- regressing Bug #11.
Reuse the previous slot ID for any client whose wl_address is still
present in the new matched set; only assign fresh IDs (1..=n) to
genuinely new clients; drop disappeared clients.

#14: mouse_repeat_ms_clamps_env_var set ENBOXER_MOUSE_REPEAT_MS
without a serial guard. cargo test runs unit tests in parallel; a
concurrent test touching the same env var would race our reads.
Added a std::sync::Mutex<()> static to serialise the test.

cargo test 99+/0; clippy clean.
2026-09-16 17:33:25 +02:00
..
engine.rs Split smart interact shortcut from single Alt+J send 2026-09-16 05:41:45 +02:00
gbm_runtime.rs gbm_runtime: fix GBM_BO_IMPORT_FD = 0x5503 (Grok round 3 #2) 2026-09-16 17:33:25 +02:00
gui.rs Warn on malformed arm_auto_apply regex instead of silently falling through 2026-09-16 07:59:56 +02:00
hotkey.rs Document full product goals; gate layout; named profiles; type-to-others. 2026-09-15 09:11:31 +02:00
hypr.rs Shell-quote bind_command args (Hyprland exec_cmd injection) 2026-09-16 05:44:52 +02:00
launcher.rs Finish the project (T7..T15): layout wizard, broadcast, overlay, dmabuf, teams 2026-09-15 17:18:37 +02:00
layout.rs Finish the project (T7..T15): layout wizard, broadcast, overlay, dmabuf, teams 2026-09-15 17:18:37 +02:00
lib.rs T10: real pixel read via runtime dlopen of libgbm.so.1 (Bug #9 closed) 2026-09-16 12:15:43 +02:00
lutris.rs Finish the project (T7..T15): layout wizard, broadcast, overlay, dmabuf, teams 2026-09-15 17:18:37 +02:00
macros.rs Initial enBoxer: mapped-key routing and Video FX on Hyprland. 2026-09-15 07:19:15 +02:00
main.rs Add window layout: stacked, grid, main+strip, Save and Apply. 2026-09-15 08:42:55 +02:00
overlay.rs Sweep: drop remaining T10/stub/follow-up markers 2026-09-16 17:16:16 +02:00
profile.rs Profile::default() + T13 cadence-clamp unit test 2026-09-16 17:16:16 +02:00
session.rs session: cursor_pos dedup, mouse_press bail, slot-ID stability, env-var test serial (Grok round 3 #7, #8, #10, #14) 2026-09-16 17:33:25 +02:00
team.rs Finish the project (T7..T15): layout wizard, broadcast, overlay, dmabuf, teams 2026-09-15 17:18:37 +02:00
toplevel_export.rs Sweep: drop remaining T10/stub/follow-up markers 2026-09-16 17:16:16 +02:00
vfx.rs Sweep: drop remaining T10/stub/follow-up markers 2026-09-16 17:16:16 +02:00
wayland_layer.rs Overlay: thread can be stopped externally instead of detaching (Bug #5) 2026-09-16 08:06:12 +02:00