fix: top-bar polish — lights on the pill line, rename escape hitbox, inert phase pill, chrome carve-outs
Traffic lights (owner report: 'way too low, not aligned with the phase pill'): measured in the running app — circles centered at 30.75pt vs the pill box's 29.25pt (band 0-59.5, pill box 19-39.5, pill ink 28.75; uppercase glyphs sit high). trafficLightPosition y 24 -> 22.5 lands the circle centers at 29.25, exactly on the pill. Owner confirmed aligned after this change. Rename escape hitbox (owner report): entering rename was already width-of- title only, but the editing input spanned flex-1 so clicking the rest of the bar stayed inside the input. The input is now shrink-to-fit ([field-sizing:content], min 8ch / max 70%) and any mousedown outside the input blurs it, running the existing onBlur commit path; the header drops lh-drag while renaming so the drag region cannot eat the escape click. Verified: click-away commits (exactly one PUT), Escape discards, Enter commits. Phase pill is pure decoration (owner report: 'should not be interactable in any way'): no tooltip, pointer-events-none, select-none — part of the drag surface instead of a carved-out target. Graph chrome was unclickable in Electron (owner report): home.tsx's floating drag strip underlays the z-10 controls row, and Electron's app-region mask ignores z-index, so the region ate their clicks (plain browser unaffected — DOM hit-testing is fine). lh-no-drag carve-outs on the chrome row and the node detail card (it is placed imperatively anywhere, including the top strip). LhMark home link now mirrors the ghost toggle: same size-9 chip geometry and hover:bg-accent treatment.
This commit is contained in:
+6
-3
@@ -187,11 +187,14 @@ function createWindow(url) {
|
||||
// Merged chrome (owner, 2026-09-17): the system title bar is gone;
|
||||
// the app's own 60px header bands ARE the title bar. The traffic
|
||||
// lights float over the sidebar's LH wordmark band, vertically
|
||||
// centered on its 60px line (12px circles: y 24–36), with the LH
|
||||
// wordmark starting at x≈80 (components/sidebar.tsx gutter).
|
||||
// Aligned to the PHASE PILL's drawn box, not the band's geometric
|
||||
// center (owner ask, 2026-09-17): macOS centers each 12px circle at
|
||||
// y+6.75, and the pill box center measures 29.25 in the running app
|
||||
// (band 0–59.5, pill box 19–39.5) — y 22.5 lands the circles at
|
||||
// 29.25, exactly on the pill. Wordmark gutter: components/sidebar.tsx.
|
||||
// Dragging comes from the renderer's .lh-drag bands (app/globals.css).
|
||||
titleBarStyle: "hiddenInset",
|
||||
trafficLightPosition: { x: 16, y: 24 },
|
||||
trafficLightPosition: { x: 16, y: 22.5 },
|
||||
webPreferences: {
|
||||
contextIsolation: true,
|
||||
sandbox: true,
|
||||
|
||||
Reference in New Issue
Block a user