Commit Graph
34 Commits
Author SHA1 Message Date
ZacharyZhang-NYandClaude Opus 5.5 94deeaed52 Port · Build: Zed's gpui at 1a28cff
gpui and gpui_platform now come from Zed's repo by git at 1a28cff,
the code gpui-pre 0.3.7 republishes, so the gallery can later build
for the browser. gpui takes stacker, as 0.2.2 always did, and
gpui_platform takes font-kit, without which macOS draws no text;
runtime_shaders moves to gpui_platform.

The API moved: focus, blur and Tab steps take cx, Corner is Anchor,
shaped lines paint with an alignment, defer_draw takes a content
mask, the inspector registers a factory, async updates return their
value, and wrapped lines are shared, not cloned. Updates through a
window context go through the window, so a closed window still ends
them as it did.

Where the new gpui behaves differently, Ely keeps its old intent.
Holds and reveals under a resting pointer survive typing through
gpui's input-modality-independent hover; previews the keyboard also
moves keep the default, and the calendar's leave ignores a key press.
Enter reaches a button inside the code editor, since gpui now arms a
key click on the press. The event logger skips a lone modifier. A
video and an image grid keep their shape in a flex column under
taffy 0.13, as a picture does.

AGENTS.md records the new stack and the rules this port changes; the
rest of the old gpui and taffy rules are re-tested in T44c.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 20:30:17 -04:00
ZacharyZhang-NYandClaude Opus 5.5 ba865710a7 Theme · Platform: a title bar in three parts, buttons at the window's rem
A title bar lays out a start, a title and an end. In the centered styles
the start and end grow alike from nothing, their padding inside them, so
a short title sits at the bar's center and a long one gives way before
whatever stands at either end; on Windows the title, or a spacer when
there is none, takes the free width before the buttons. Caption buttons
take the bar's height at the window's own rem. Tests keep an untitled
Windows bar's buttons at its end, a long Linux title before the round
buttons, a short title centered, and the buttons inside a bar at rem 8.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-27 18:20:20 -04:00
ZacharyZhang-NYandClaude Opus 5.5 815aed304d Theme · Platform: caption buttons of their own height, titles that give way
Windows caption buttons take the bar's height less its hairline, a new
token, instead of their row's, so they keep their height beside caps
that wrap below them. A title bar's title is an Ellipsis: on Windows it
takes the free width before the buttons and gives way; a centered title
sits inset past the lights on both sides. The controls never shrink.
Tests hold a long Windows title's close button inside a 280px bar and
wrapped caps inside their row.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-27 18:04:05 -04:00
ZacharyZhang-NY cc82acbe20 T21b and T21c: Documents, reading and knowledge
- DocumentViewer: pages the app drew on a desk, the page under the view's middle
  counted, zoom steps and fit, thumbnails, notes pinned where a press lands, and
  the owner's FindWidget over the pages, hits lit and the current one revealed
- PageThumbnailList, EpubReader (chapters, type size, progress), PrintPreview
- MarkdownRenderer feeds TableOfContents through sections and outline
- Footnote, TooltipTerm, Glossary, ReadingProgress, ZenMode
- Backlinks, Favorites, TrashBin, PageCover, PageIcon, TemplatePicker,
  VersionHistory with PageHistoryDiff
- editor::FindWidget shows the replace fold and option toggles only with handlers
- block editor tests move to documents/blocks
- icons: a-arrow-down, a-arrow-up
- gallery: reading and knowledge sections; scripted find, changes and zen
2026-09-26 04:34:32 -04:00
ZacharyZhang-NY cbd49e99d3 T15 Charts: cartesian with axes, legend, crosshair, tooltip, zoom, annotations and export (T15a); pie, donut, radar, heatmaps, treemap, sunburst, waterfall and spreads (T15b); sankey, funnel, gantt, force graph, chord, parallel coordinates, bullet and progress (T15c) 2026-09-25 21:59:24 -04:00
ZacharyZhang-NY ee7ee44f46 T14c Tables: DataGrid, Spreadsheet with formulas, merges, frozen panes and fill, TreeTable, PivotTable 2026-09-25 20:41:47 -04:00
ZacharyZhang-NY dcd988e4b8 T14a Tables core: DataTable, Table, HeatmapTable, cells, Sparkline (review pending: codex 401) 2026-09-25 20:15:45 -04:00
ZacharyZhang-NY db3b993cac T13b Trees: Tree, TreeNode, TreeSelect, Outline, Disclosure (review pending: codex 401) 2026-09-25 19:59:11 -04:00
ZacharyZhang-NY 2d6404f688 T13a Lists: ListItem, List, SelectableList, VirtualList, InfiniteList, GroupedList, SortableList, SwipeableListItem (review pending: codex 401) 2026-09-25 19:35:28 -04:00
ZacharyZhang-NY f41faf5684 T12d Data Display: QrCode, Barcode, Meter, Gauge, UsageBar, Stars, Comparison (review pending: codex 401) 2026-09-25 19:18:10 -04:00
ZacharyZhang-NY 8798d95d7a T12c Data Display: Carousel, Gallery, BeforeAfter, Watermark (review pending: codex 401) 2026-09-25 19:08:08 -04:00
ZacharyZhang-NY 111a15c21c T12b Data Display: DescriptionList, PropertyGrid, Timeline, ActivityFeed, Changelog (review pending: codex 401) 2026-09-25 18:53:47 -04:00
ZacharyZhang-NY dc1d282fca T12a Data Display: badges, tags, avatars, statistics (review pending: codex 401) 2026-09-25 18:41:58 -04:00
ZacharyZhang-NY 76da4bd39e T11d motion: marquee, ripple and confetti, glow and pulse, blink, flash and shake, drifting particles and tonal drift; Lottie is blocked 2026-09-25 18:28:36 -04:00
ZacharyZhang-NY ce31c7fb06 T11b loading: progress bars and rings that glide, loading overlay, lazy load, suspense and async view, refresh and typing indicators, upload list; draw-time notifies ask for a frame 2026-09-25 17:27:21 -04:00
ZacharyZhang-NY d4066661d5 T11a loading: spinner in six motions, skeletons that breathe, a shimmer cut to its corners, loading buttons and load more 2026-09-25 16:58:05 -04:00
ZacharyZhang-NY f895424a08 T10a feedback: toasts with undo and a hover-held clock, notifications and their center, alert, banner, callout, inline and status messages, empty state; root focus scopes take lost focus 2026-09-25 15:43:31 -04:00
ZacharyZhang-NY ef74bac823 T09b overlays: lightbox, spotlight and tour, floating toolbar, peek; images fill their box; overlays take focus back when its element leaves the tree 2026-09-25 15:19:57 -04:00
ZacharyZhang-NY ca73d24c01 T09a overlays: popover, hover card, dialog with fullscreen, alert, confirm and prompt dialogs; shared severity; tooltip, sheet and drawer point to their homes 2026-09-25 14:07:30 -04:00
ZacharyZhang-NY d6b982016d T08b menus: menu bar over the native menus, searchable menu, pie menu; megamenu points to the navigation menu; menus follow their hosts 2026-09-25 13:43:12 -04:00
ZacharyZhang-NY f990586abd T08a menus: menu, items, groups, separators, submenus, check and radio rows, key hints, icons; dropdown, split, overflow and context hosts; overlays pick on key release 2026-09-25 13:03:23 -04:00
ZacharyZhang-NY a923def708 T07c navigation palettes: command palette, quick open, quick switcher, search palette and quick launcher over one palette engine with fuzzy matching; tour lands with overlays 2026-09-25 12:31:20 -04:00
ZacharyZhang-NY c02dd7d1c3 T07b navigation places: nav item and group, navigation menu, back and forward history, table of contents with anchors, go to line; measuring canvases pinned to their parent 2026-09-25 12:14:58 -04:00
ZacharyZhang-NY 0883a999f4 T07a navigation tabs and paths: tabs, editor tabs, tab overflow menu, breadcrumb, pagination, steps and wizard; shared slide, list trigger and tab stop 2026-09-25 11:37:38 -04:00
ZacharyZhang-NY 05ff67ad9f T06g forms structure: form with Cmd-Enter submit, sections, fields, labels, errors, field arrays, inline forms, dirty indicator 2026-09-25 10:46:27 -04:00
ZacharyZhang-NY 0ca1ff65c7 T06f forms other: signature pad, code and JSON inputs, font, icon and emoji pickers, language, country and currency comboboxes 2026-09-25 09:41:29 -04:00
ZacharyZhang-NY eac5793c7d T06d forms color: color picker with hex, RGB and HSV, swatches, palette, eye dropper, gradient editor 2026-09-25 08:24:08 -04:00
ZacharyZhang-NY e39d623b58 T06b forms selection: checkbox, radio, cards, switch, select, combobox, multi select, cascader, transfer list, list box, chips, rating, sliders, knob, stepper 2026-09-25 06:41:35 -04:00
ZacharyZhang-NY ec5713c10b T06a forms text: text input core, fields, numbers, masks, pin, inline, groups, tags, pairs, path, regex, expression, hotkey, mention 2026-09-25 05:38:24 -04:00
ZacharyZhang-NY 817da41c22 T05 buttons and actions: groups, toggles, segmented, confirm, copy, share, bars, sheet, quick actions 2026-09-25 03:51:34 -04:00
ZacharyZhang-NY 77bcd5be07 T04 window and shell: chrome, bars, rail, tabs, windows, dialogs, tray, badge, zoom 2026-09-25 03:21:03 -04:00
ZacharyZhang-NY 2bdf902bf4 T03 layout: stacks, grids, surfaces, scroll, splits, sheets, dock, panes, workspace, viewport 2026-09-25 02:17:37 -04:00
ZacharyZhang-NY a13343c2a5 T01 primitives: image, divider, backdrop, focus, pressable, measure, tooltip
Ely-built primitives plus gallery demos for every chapter-one entry,
including gpui natives. The gallery now scripts real input by posting
NSEvents to its own queue and shoots each interaction in both modes.
Codex gpt-6-astra (max): three rounds; the last finding, a two-line
doc comment, was fixed after the three-review cap.
2026-09-25 00:39:06 -04:00
ZacharyZhang-NY abf4cbcfc6 T00 foundation: theme, motion, assets, icon, buttons, gallery
Theme tokens in light and dark with high contrast, a palette cross-fade,
motion curves and a damped spring, embedded Lucide icons with Inter and
JetBrains Mono, Icon, Button, IconButton, and a gallery that captures
its own window. Reviewed by codex gpt-6-astra (max): PASS in round 3.
2026-09-24 23:59:55 -04:00