acdream/tests
Erik aed423174b fix(ui): #411 — pointer swaps over inventory items unconditionally, not only in UseTarget mode
Corrects an incomplete reading from #411's original investigation.
UIElement_SmartBoxWrapper::FindObject @0x004E5430 calls
SmartBox::set_found_object(itemID, 0xFFFFFFFF) whenever the hovered
UI element (m_pElementLastOver) casts to UIElement_UIItem
(class 0x10000032) — UNCONDITIONALLY, not gated on target mode, and
returns WITHOUT running the 3D raycast. ClientUISystem::
UpdateCursorState @0x00564630 computes its "found" flag ONCE at the
top of the function (ebx = SmartBox::get_found_object_id() != 0,
@0x00564642) and every later branch (default/melee-missile/magic/
use/examine/use-target/busy) reads that SAME flag — so hovering an
occupied item cell shows the cursor's "...Found" variant in EVERY
mode, not only during an active UseTarget selection.

CursorFeedbackController.Update(UiRoot) already had the item-hover
special case wired from an earlier round but incorrectly gated it to
TargetMode.UseTarget only; that one-line gate is removed.
ResolveGlobalKind needed no changes at all — it already read the
snapshot's HoverTargetGuid unconditionally across every mode.

Two new tests pin the widened behavior in ordinary peace mode and in
combat mode. Live-DAT-independent (pure decomp + unit fixture).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-16 23:02:42 +02:00
..
AcDream.App.Tests fix(ui): #411 — pointer swaps over inventory items unconditionally, not only in UseTarget mode 2026-08-16 23:02:42 +02:00
AcDream.Bake.Tests fix(launcher): harden installer transactions 2026-08-14 20:36:11 +02:00
AcDream.Cli.Tests perf(diag): complete trustworthy Slice A capture tooling 2026-07-24 12:46:51 +02:00
AcDream.Content.Tests fix(chargen): Campaign CC gate round 1 closeout — Group 2: Skills page four-bucket model 2026-08-16 15:33:39 +02:00
AcDream.Core.Net.Tests CC2 review fix round: latch scope narrowed, AD-100, creationFailed reason key 2026-08-15 13:10:24 +02:00
AcDream.Core.Tests fix(chargen): Campaign CC gate round 1 Batch G — real color wheel (DoColorSpots/DoGradDisk color rendering) 2026-08-16 14:16:14 +02:00
AcDream.Core.Tests.Fixtures.HelloPlugin feat(core): add PluginLoader with collectible ALC 2026-04-10 09:51:16 +02:00
AcDream.Headless.Tests fix(app,headless): Campaign CC slice CC4 re-review round — R1 arbiter + R2-R4 2026-08-15 19:04:04 +02:00
AcDream.Launcher.Core.Tests fix(chargen): Campaign CC gate round 1 closeout — Group 3: round review fixes (F4-F11, F14, F16) 2026-08-16 15:34:07 +02:00
AcDream.Launcher.Core.Tests.Fixtures.ConsolelessSupervisorParent feat(launcher): prepare Campaign LA11 user gate 2026-08-14 23:42:30 +02:00
AcDream.Launcher.Core.Tests.Fixtures.ConsoleSignalChild fix #406: launcher session exit observation carries the real code + captures client stderr 2026-08-16 11:44:46 +02:00
AcDream.Launcher.Core.Tests.Fixtures.InstallLeaseHolder fix(launcher): harden Campaign LA11 gate evidence 2026-08-15 01:08:41 +02:00
AcDream.Launcher.Tests fix(launcher): Campaign LA gate-round-1 review findings F1-F6 + hardening 2026-08-15 08:19:23 +02:00
AcDream.Platform.Tests fix(platform): Campaign LA LA0 review fixes — CI Linux lanes, arch doc, self-guard 2026-08-14 15:30:04 +02:00
AcDream.Plugin.Tests.Fixtures.HostPlugin fix(plugins): close LA5 ownership races 2026-08-14 19:28:14 +02:00
AcDream.Runtime.Tests fix(chargen): Campaign CC CC7 review fix round — F1-F9 — REVIEW-CLOSED 2026-08-16 03:13:02 +02:00
AcDream.UI.Abstractions.Tests feat(ui): #409 — client-wide retail tooltip system 2026-08-16 20:03:24 +02:00
Fixtures/campaign-la fix(plugins): close LA5 host lifecycle review 2026-08-14 19:05:13 +02:00