Mercurial
diff infinite_canvas/docs/entities-and-components.md @ 280:49e9e591c9bb
Add persistent dictation, prewarmed WebRTC speech input, Copilot SDK routing, animated conversation lifecycle controls, parking, and architecture coverage.
| author | MrJuneJune <me@mrjunejune.com> |
|---|---|
| date | Tue, 18 Aug 2026 19:14:53 -0700 |
| parents | 8d560f50ed4c |
| children | c57149ad216e |
line wrap: on
line diff
--- a/infinite_canvas/docs/entities-and-components.md Mon Aug 17 22:22:36 2026 -0700 +++ b/infinite_canvas/docs/entities-and-components.md Tue Aug 18 19:14:53 2026 -0700 @@ -7,6 +7,8 @@ - a stable `id` for external resources such as browser views; - `type`, world `position`, and world `size`; - generic semantic fields: `text`, `value`, and `active`; +- optional rich-context fields such as a conversation title and agent working + state; - interaction/animation state; - pinning state in both world and screen coordinates. @@ -19,6 +21,13 @@ them back to zero, then compact the retained array. Raylib colors, native CEF texture tints, and WebAssembly overlay opacity all consume the same eased value. +Treat animation as part of every entity state transition, not optional polish. +State changes set retained targets; frame updates ease visual geometry and +opacity toward those targets. Do not snap expandable, collapsible, selected, +hovered, created, removed, or otherwise stateful entities between layouts. +Conversation collapse/expand uses the same smoothstep height interpolation as +accordions, while preserving its final semantic `active` state for context. + ## Adding a component Wire every relevant surface, not only drawing: @@ -47,6 +56,7 @@ - developer UI; - focused native CEF content; +- the canvas URL editor or local dictation bridge; - hovered/pressed scene entity; - camera.