From 1a8ffebb00fe02f7c52c3095ccbdcf572a100078 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Fri, 26 Dec 2025 22:34:09 +0100 Subject: [PATCH] fix(macos): stabilize menu row width --- .../Sources/Clawdis/MenuHighlightedHostView.swift | 12 ------------ .../macos/Sources/Clawdis/MenuSessionsInjector.swift | 1 + 2 files changed, 1 insertion(+), 12 deletions(-) diff --git a/apps/macos/Sources/Clawdis/MenuHighlightedHostView.swift b/apps/macos/Sources/Clawdis/MenuHighlightedHostView.swift index 2e16cf253..1cd1262fd 100644 --- a/apps/macos/Sources/Clawdis/MenuHighlightedHostView.swift +++ b/apps/macos/Sources/Clawdis/MenuHighlightedHostView.swift @@ -55,7 +55,6 @@ final class HighlightedMenuItemHostView: NSView { override func layout() { super.layout() - self.updateTargetWidthFromWindow() self.hosting.frame = self.bounds } @@ -85,17 +84,6 @@ final class HighlightedMenuItemHostView: NSView { self.frame = NSRect(origin: .zero, size: NSSize(width: self.targetWidth, height: size.height)) } - override func viewDidMoveToWindow() { - super.viewDidMoveToWindow() - self.updateTargetWidthFromWindow() - } - - private func updateTargetWidthFromWindow() { - guard let width = self.window?.contentView?.bounds.width, width > 0 else { return } - if abs(width - self.targetWidth) < 0.5 { return } - self.targetWidth = width - self.updateSizing() - } } struct MenuHostedHighlightedItem: NSViewRepresentable { diff --git a/apps/macos/Sources/Clawdis/MenuSessionsInjector.swift b/apps/macos/Sources/Clawdis/MenuSessionsInjector.swift index b2563d239..743f5f8ce 100644 --- a/apps/macos/Sources/Clawdis/MenuSessionsInjector.swift +++ b/apps/macos/Sources/Clawdis/MenuSessionsInjector.swift @@ -737,6 +737,7 @@ final class MenuSessionsInjector: NSObject, NSMenuDelegate { private func initialWidth(for menu: NSMenu) -> CGFloat { let candidates: [CGFloat] = [ + menu.size.width, menu.minimumWidth, self.lastKnownMenuWidth ?? 0, self.fallbackWidth,