mirror of
https://github.com/ksyasuda/SubMiner.git
synced 2026-05-04 00:41:33 -07:00
2.3 KiB
2.3 KiB
id, title, status, assignee, created_date, updated_date, labels, dependencies, references, priority
| id | title | status | assignee | created_date | updated_date | labels | dependencies | references | priority | |||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| TASK-336 | Fix Hyprland fullscreen overlay downward offset | Done | 2026-05-04 05:42 | 2026-05-04 05:56 |
|
|
medium |
Description
SubMiner visible overlay is slightly below mpv when mpv is fullscreen on Linux Hyprland. Align overlay bounds with mpv fullscreen client/monitor bounds.
Acceptance Criteria
- #1 Hyprland fullscreen mpv overlay uses top-aligned geometry instead of inheriting a downward offset.
- #2 Regression coverage captures the fullscreen Hyprland geometry case.
- #3 Targeted tests pass.
Implementation Notes
Added follow-up Hyprland placement handling after the fullscreenClient geometry fix. SubMiner overlay/stats windows now get stable titles and, on Hyprland, are resolved from hyprctl -j clients by current PID/title, then set floating and pinned before bounds are applied. The stats overlay reapplies bounds after showing because Hyprland cannot see the hidden window before it is mapped.
Final Summary
Summary:
- Treated Hyprland
fullscreenClientas a fullscreen signal when resolving mpv overlay geometry. - Added Hyprland window placement handling so SubMiner overlay/stats windows are set floating and pinned before bounds are applied.
- Gave overlay/stats windows stable titles for Hyprland client matching, and reapplied stats bounds after show.
- Added regression coverage for the 28px fullscreen geometry shape and Hyprland placement dispatches.
- Added a changelog fragment for the overlay fix.
Verification:
bun test src/core/services/hyprland-window-placement.test.ts src/core/services/overlay-window-config.test.ts src/core/services/stats-window.test.ts src/core/services/overlay-window-bounds.test.ts src/window-trackers/hyprland-tracker.test.tsbun run typecheckbun run changelog:lintbun run test:fast