|
Some checks are pending
Headless portability / portable-headless (ubuntu-latest) (push) Waiting to run
Headless portability / portable-headless (windows-latest) (push) Waiting to run
Headless portability / linux-graphical (push) Waiting to run
Headless portability / linux-vulkan (push) Waiting to run
The vendor window is retail's own: LayoutDesc 0x21000012, root 0x100000B7, found by enumerating all 101 layouts for the one containing both known tab controls and clinched by the root's Type 0x10000017 — the literal UIElement::RegisterElementClass id for gmVendorUI (pc:202075). Discovery evidence and the D0 read live in the research doc's new §B.4. D0 corrected two assumptions: retail's category "tabs" are a UiMenu DROPDOWN fed by a hardcoded 18-row ordered category table (ported bit-for-bit against our ItemType enum; list always scoped to exactly one category, first-present wins, selection preserved across refresh per retail's clamp), and the layout authors THREE tabs — Items (browse, this slice), Buying and Selling (staged-transaction review, Slice 6) — decision 4's "browse/Buy tab" names the Items tab retail's mode-2 OpenTab opens. The non-default tabs render and switch pages but stay inert, fenced in comments. VendorUiController mounts Items: category dropdown, icon-cell item row with the retained scrollbar, per-unit retail pricing via VendorPricing.SellPrice (the vendor-stock path VendorProfile:: VendorSellPrice feeds), name/cost on selection. The panel is a pure projection of VendorState — opens on populate, closes on clear; the close button's VendorState.Close() is its only permitted mutation. Nothing on the wire. AP-110 narrowed (vendor leaves the absent-panels list); AP-161 files the precise Slice-6 remainder (Buying/Selling unwired, Buy/Add buttons, InqAcceptability). Twelve controller tests on a real-dat fixture. Clean-room complete solution: 11,323 passed / 4 skipped / 0 failed. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| Layout | ||
| AutoWieldGenerationTests.cs | ||
| ClientCommandControllerTests.cs | ||
| ControlsIniTests.cs | ||
| CursorFeedbackControllerTests.cs | ||
| DatWidgetFactoryZOrderTests.cs | ||
| DragDropSpineTests.cs | ||
| GameplayConfirmationControllerTests.cs | ||
| IconComposerTests.cs | ||
| ItemInteractionControllerTests.cs | ||
| LayoutImporterMountTests.cs | ||
| MarkupDocumentTests.cs | ||
| PortalWaitNoticeControllerTests.cs | ||
| RetailCursorCatalogTests.cs | ||
| RetailCursorManagerTests.cs | ||
| RetailItemConfirmationControllerTests.cs | ||
| RetailSkillTrainingConfirmationControllerTests.cs | ||
| RetailUiAutomationProbeTests.cs | ||
| RetailUiInteractionFlowTests.cs | ||
| RetailUiRuntimeLeaseTests.cs | ||
| RetailWindowLayoutPersistenceTests.cs | ||
| RetailWindowManagerTests.cs | ||
| RetainedPanelControllerGroupTests.cs | ||
| RetainedUiInputBindingTests.cs | ||
| UiButtonStateMachineTests.cs | ||
| UiButtonTests.cs | ||
| UiClipRectTests.cs | ||
| UiCollapsibleFrameTests.cs | ||
| UiCompositeShutdownTests.cs | ||
| UiDatFontTests.cs | ||
| UiElementChildOrderTests.cs | ||
| UiFieldTests.cs | ||
| UiItemListGridTests.cs | ||
| UiItemListScrollTests.cs | ||
| UiItemListTests.cs | ||
| UiItemSlotTests.cs | ||
| UiLayoutPolicyTests.cs | ||
| UiMenuTests.cs | ||
| UiMeterTests.cs | ||
| UiMeterVerticalTests.cs | ||
| UiNineSlicePanelTests.cs | ||
| UiRadarTests.cs | ||
| UiRootInputTests.cs | ||
| UiScrollablePanelTests.cs | ||
| UiScrollableTests.cs | ||
| UiScrollbarTests.cs | ||
| UiTextDatFontTests.cs | ||
| UiTextTests.cs | ||