From 21bd0980a65a47b57bc364bda9ae89fd6cfda89e Mon Sep 17 00:00:00 2001 From: 4gray <4gray@users.noreply.github.com> Date: Wed, 10 Jun 2026 22:12:53 +0200 Subject: [PATCH] fix(ui): gate custom window controls on the full bridge surface MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Include getWindowState and onWindowStateChange in the usesCustomWindowControls capability check — the controls rely on both for initial state and for keeping the maximize/restore glyph in sync with OS-triggered changes, so a partial bridge should not mount them. Co-Authored-By: Claude Fable 5 --- libs/services/src/lib/runtime-capabilities.service.ts | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/libs/services/src/lib/runtime-capabilities.service.ts b/libs/services/src/lib/runtime-capabilities.service.ts index bdc46c198..f56123f2d 100644 --- a/libs/services/src/lib/runtime-capabilities.service.ts +++ b/libs/services/src/lib/runtime-capabilities.service.ts @@ -54,9 +54,13 @@ export class RuntimeCapabilitiesService { get usesCustomWindowControls(): boolean { return ( (this.isWindows || this.isLinux) && - ['minimizeWindow', 'toggleMaximizeWindow', 'closeWindow'].every( - (methodName) => this.hasElectronMethod(methodName) - ) + [ + 'minimizeWindow', + 'toggleMaximizeWindow', + 'closeWindow', + 'getWindowState', + 'onWindowStateChange', + ].every((methodName) => this.hasElectronMethod(methodName)) ); }