From 9d56ecf8c8ef6f21942584638157abbf595191c3 Mon Sep 17 00:00:00 2001 From: Micah Alpern Date: Thu, 11 Jun 2026 12:06:37 -0700 Subject: [PATCH] Fix Neovim Terminal detail sheet clipping: add to wide-pack width list MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Second visual-review finding on the new detail page (#903 fixed the wrong-component issue): the sheet rendered at the 560pt default while MappingTableContent's five columns (Key / Description / Action / +Shift / +Ctrl) need the 760pt wide layout — content clipped on both edges, the icon and +Ctrl column cut off. preferredDetailWidth keeps a hardcoded wide-pack allowlist; every other table-style pack (Vim Navigation, Mission Control, Numpad, Symbol, Fun) is listed and neovim-terminal wasn't. Added it, plus a comment warning the next table-pack author — this is the same add-a-pack-forget-the-side-table class of bug as the orange-box issue, just in a different registry. The trailing_comma lint warning on the set literal is pre-existing style in this file. Co-Authored-By: Claude Fable 5 --- Sources/KeyPathAppKit/Services/Packs/Pack.swift | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Sources/KeyPathAppKit/Services/Packs/Pack.swift b/Sources/KeyPathAppKit/Services/Packs/Pack.swift index 136fb2105..ab5910eb6 100644 --- a/Sources/KeyPathAppKit/Services/Packs/Pack.swift +++ b/Sources/KeyPathAppKit/Services/Packs/Pack.swift @@ -176,8 +176,14 @@ public struct Pack: Identifiable, Equatable, Sendable { /// Preferred width for Pack Detail presentation (window or sheet). public var preferredDetailWidth: CGFloat { + // Table-style packs render MappingTableContent (Key / Description / + // Action / +Shift / +Ctrl), which needs the wide layout. When adding + // a table pack, add it here too or its detail sheet clips horizontally + // (Neovim Terminal shipped clipped at the 560 default before being + // listed). let widePacks: Set = [ "com.keypath.pack.vim-navigation", + "com.keypath.pack.neovim-terminal", "com.keypath.pack.window-snapping", "com.keypath.pack.mission-control", "com.keypath.pack.numpad-layer",