mirror of
https://github.com/webadderallorg/Recordly.git
synced 2026-09-25 23:35:43 +00:00
Merge pull request #612 from webadderallorg/fix/linux-hud-menu-bounds
fix(linux): expand HUD fallback for menus
This commit is contained in:
@@ -4,6 +4,7 @@ import {
|
||||
getHudOverlayWindowBounds,
|
||||
resizeHudOverlayFallbackBounds,
|
||||
shouldExpandHudOverlayFallback,
|
||||
shouldResizeHudOverlayFallback,
|
||||
} from "./hudOverlayBounds";
|
||||
|
||||
describe("getHudOverlayWindowBounds", () => {
|
||||
@@ -145,6 +146,20 @@ describe("resizeHudOverlayFallbackBounds", () => {
|
||||
});
|
||||
});
|
||||
|
||||
describe("shouldResizeHudOverlayFallback", () => {
|
||||
it("allows non-passthrough HUD windows to expand for menus when idle", () => {
|
||||
expect(shouldResizeHudOverlayFallback(false, false)).toBe(true);
|
||||
});
|
||||
|
||||
it("does not resize full passthrough HUD windows", () => {
|
||||
expect(shouldResizeHudOverlayFallback(true, false)).toBe(false);
|
||||
});
|
||||
|
||||
it("keeps the recording HUD compact in non-passthrough mode", () => {
|
||||
expect(shouldResizeHudOverlayFallback(false, true)).toBe(false);
|
||||
});
|
||||
});
|
||||
|
||||
describe("shouldExpandHudOverlayFallback", () => {
|
||||
it("expands while recording only when the floating webcam preview is visible", () => {
|
||||
expect(
|
||||
|
||||
@@ -38,6 +38,13 @@ export function getHudOverlayWindowBounds(
|
||||
};
|
||||
}
|
||||
|
||||
export function shouldResizeHudOverlayFallback(
|
||||
mousePassthroughSupported: boolean,
|
||||
recordingActive: boolean,
|
||||
): boolean {
|
||||
return !mousePassthroughSupported && !recordingActive;
|
||||
}
|
||||
|
||||
export function shouldExpandHudOverlayFallback({
|
||||
fallbackExpanded,
|
||||
recordingActive,
|
||||
|
||||
+4
-2
@@ -9,6 +9,7 @@ import {
|
||||
getHudOverlayWindowBounds,
|
||||
resizeHudOverlayFallbackBounds,
|
||||
shouldExpandHudOverlayFallback,
|
||||
shouldResizeHudOverlayFallback,
|
||||
} from "./hudOverlayBounds";
|
||||
import { getPackagedRendererBaseUrl } from "./rendererServer";
|
||||
|
||||
@@ -304,8 +305,9 @@ function setHudOverlayMousePassthrough(ignore: boolean) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!isHudOverlayMousePassthroughSupported()) {
|
||||
if (process.platform !== "linux") {
|
||||
const mousePassthroughSupported = isHudOverlayMousePassthroughSupported();
|
||||
if (!mousePassthroughSupported) {
|
||||
if (shouldResizeHudOverlayFallback(mousePassthroughSupported, hudOverlayRecordingActive)) {
|
||||
setHudOverlayFallbackExpanded(!ignore);
|
||||
}
|
||||
hudOverlayWindow.setIgnoreMouseEvents(false);
|
||||
|
||||
Reference in New Issue
Block a user