Repository navigation
feat(app): the window controls and the prompt from @frostyard/lodge-ui 0.6.0 - #85
Merged
Merged
Conversation
…i 0.6.0 Pin @frostyard/lodge-ui to lodge bf1ad3e (0.6.0), which carries the window's three buttons and the prompt's modal frame. - The title bar row's right end, which drew Toggle right sidebar and the three buttons, is now TitleBarEnd and draws lodge-ui's WindowControls for the buttons; TitleBar does the same for its own copy. Frostnotes keeps its WindowCommand type. - Prompt, highlight and PromptMods come from lodge-ui; features/prompt/Prompt.tsx and its test (lodge-ui has the same tests) are gone. The quick switcher, command palette and choosers, and their ranking, stay here. - docs/specs/ui.md says where the two primitives come from. No visual change: the screenshots of the title bar, the quick switcher and the command palette, light and dark, desktop and narrow, are byte-identical. The markup differs by role="group" and aria-label="Window controls" on the buttons' container, and the prompt footer's text-status written as text-[11px]/[14px] (the same 11/14).
bketelsen
approved these changes
Oct 22, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
frostnotes takes two new primitives of
@frostyard/lodge-ui0.6.0, pinned to the tagui/v0.6.0(ADR-0030, lodge ADR-0018):WindowControlsandPrompt. Zero visual change.What
WindowControls: the three window buttons now come from lodge-ui.features/chrome/WindowControls.tsxis renamedTitleBarEnd.tsx(the name was lodge-ui's now). It keeps its outer row and Toggle right sidebar, and draws lodge-ui'sWindowControlsfor Minimize, Maximize/Restore and Close. NewTitleBarEnd.test.tsx(3 tests).TitleBar.tsx(the Connecting window's bar) draws lodge-ui'sWindowControlswithclassName="px-2", in place of its own copy.WindowCommandtype; lodge-ui's kinds are a subset of it.Prompt:features/prompt/Prompt.tsxand its test are deleted; lodge-ui'sPromptis the same frame, moved, and lodge'stest/Prompt.test.tsxholds every case.QuickSwitcher,CommandPalette,FolderChooserandTemplateChooserstay here and importPrompt,highlightandPromptModsfrom@frostyard/lodge-ui/react. Commands, data and ranking (lib/fuzzy,lib/switcher,lib/palette) stay in frostnotes.docs/specs/ui.md: "Title bar row" item 5 and "Prompts" say where the frame and the buttons come from.Proof of no visual change
Screenshots before (
origin/main5f2db75) and after, taken with a headless browser by a script, deterministic over two runs, 1280×800 and 390×844, light and dark, with the window controls forced on by a local, uncommitted change (a browser does not draw them):/var/home/bjk/projects/odrade/reports/2026-10-22-ui-0.6.0/frostnotes/(before/,after/,shoot.py)outerHTMLdumps differ in two ways only:role="group" aria-label="Window controls"on the buttons' row (a nesteddivwith the sameflex shrink-0 items-center gap-1in the main title bar; on the existingdivin the Connecting bar).text-statusistext-[11px]/[14px]in lodge-ui (the same 11px/14px;text-statusis a frostnotes type role).Gates
make check: pass.make ui-check(nsl): 762 tests in 93 files pass.make web-buildpasses.Do not deploy until Brian says so.