Real cause of the launcher dying ~1ms after opening. Hyprland's mouseMoveUnified() destroys the seat grab when it refocuses while the cursor is over a surface the grab doesn't own, and `refocus` is true for all 20 CInputManager::refocus() call sites — including every window map and unmap. Battle.net churns windows continuously, so refocus() fired over and over and killed the grab unless the cursor happened to be on the bar. That is also why clicking a bar card "fixed" it. Expand the input mask to the whole screen while a panel is open, so accepts() is always true and nothing can tear the grab down. The grab no longer sees outside clicks, so a MouseArea underneath the panels handles dismissal. Drop the re-arm: it lost to the next refocus() every time. |
||
|---|---|---|
| .. | ||
| audio.nix | ||
| desktop.nix | ||
| hyprland.nix | ||
| locale.nix | ||
| quickshell.nix | ||
| shell.nix | ||
| stylix.nix | ||
| ui.nix | ||
| users.nix | ||