fix(overlay): correct Hyprland fullscreen overlay alignment on Linux (#107)

This commit is contained in:
2026-06-01 02:12:16 -07:00
committed by GitHub
parent f1e260e996
commit 76f99e6518
15 changed files with 501 additions and 23 deletions
@@ -99,6 +99,37 @@ test('live overlay bounds mismatch forces refresh after window manager restore d
);
});
test('live overlay bounds mismatch compares content bounds when compositor adds insets', () => {
const geometry = { x: 0, y: 0, width: 3440, height: 1440 };
assert.equal(
hasLiveOverlayWindowBoundsMismatch(
[
{
isDestroyed: () => false,
getBounds: () => ({ ...geometry }),
getContentBounds: () => ({ x: 0, y: 14, width: 3440, height: 1426 }),
},
],
geometry,
),
true,
);
assert.equal(
hasLiveOverlayWindowBoundsMismatch(
[
{
isDestroyed: () => false,
getBounds: () => ({ x: 0, y: -14, width: 3440, height: 1454 }),
getContentBounds: () => ({ ...geometry }),
},
],
geometry,
),
false,
);
});
test('ensure overlay window level handler delegates to core', () => {
const calls: string[] = [];
const ensureLevel = createEnsureOverlayWindowLevelHandler({