acdream/src/AcDream.App
Erik f911b5f0af feat(D.2b): anchor layout — vital bars stretch with window; drop Vitals heading
Add AnchorEdges [Flags] enum and Anchors property (default Left|Top, so
all existing elements are unchanged) to UiElement. ApplyAnchor() captures
the design-time margins on first call then recomputes Left/Top/Width/Height
each frame; DrawSelfAndChildren drives it for every child before painting.
ComputeAnchoredRect is public + static so it can be unit-tested without a
running frame loop.

MarkupDocument.Build gains a private Anchor() CSV parser and threads it
into the <meter> initializer via the anchor= attribute.

vitals.xml: remove title="Vitals" (retail vitals has no heading) and add
anchor="left,top,right" to all three meter bars so they stretch when the
panel is dragged wider.

Two new xUnit tests in UiRootInputTests: Left+Right stretches width;
Left+Top only keeps fixed size. All 19 App.Tests green.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-14 18:58:58 +02:00
..
Audio feat(audio): Phase E.2 OpenAL engine + SoundTable cookbook + hook wiring 2026-04-18 16:38:26 +02:00
Input fix(phys): #106 gate-2 — bogus-indoor-claim recovery + spawn-ground entry hold 2026-06-09 23:47:11 +02:00
Net refactor(app): extract LiveSessionController for network-side session lifecycle (Step 2) 2026-05-17 16:15:57 +02:00
Plugins feat(D.2b): IUiRegistry plugin UI surface + buffered drain into UiHost 2026-06-14 17:46:37 +02:00
Rendering fix(D.2b): draw UI chrome behind content (TextRenderer Flush layer order) 2026-06-14 18:49:52 +02:00
Streaming fix(render): quiesce dat readers before teardown — kill the shutdown AccessViolation 2026-06-09 21:27:22 +02:00
UI feat(D.2b): anchor layout — vital bars stretch with window; drop Vitals heading 2026-06-14 18:58:58 +02:00
AcDream.App.csproj feat(D.2b): MarkupDocument (XML -> UiElement tree); vitals panel from vitals.xml 2026-06-14 17:38:07 +02:00
Program.cs feat(D.2b): IUiRegistry plugin UI surface + buffered drain into UiHost 2026-06-14 17:46:37 +02:00
RuntimeOptions.cs feat(D.2b): RuntimeOptions.RetailUi + AcDir toggles 2026-06-14 14:25:21 +02:00