feat(D.2b): UiScrollbar (Type 11) — promote the generic chat scrollbar (widget-generalization Task 2)
- git mv UiChatScrollbar.cs → UiScrollbar.cs; rename class + update doc summary to "Generic scrollbar. Ports retail UIElement_Scrollbar (RegisterElementClass(0xb) @ acclient_2013_pseudo_c.txt:124137); thumb size = trackLen * ThumbRatio (min 8px); step ±1 line." - git mv UiChatScrollbarTests.cs → UiScrollbarTests.cs; rename test class + replace every UiChatScrollbar reference with UiScrollbar (bodies unchanged). - DatWidgetFactory: register Type 11 → new UiScrollbar() before the _ fallback case. - ChatWindowController: change Scrollbar property type to UiScrollbar; replace the old "construct-remove-add" block with a "find factory-built UiScrollbar and bind in place" block (no RemoveChild/AddChild); keep `var track` assignment in scope so the Max/Min block's track.Left/track.Width reads still compile against UiElement?. - AP-41 divergence register: update file:line to UiScrollbar.cs:35; narrow wording to "fallback only — single-tile drawn only when cap ids are unset; the chat controller passes all three cap ids so the 3-slice path is the active code path." - Update inline UiChatScrollbar doc-comment references in UiScrollable.cs + UiChatView.cs. - Full suite: 399 passed, 2 skipped (dat/tower fixture skips), 0 failed. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
d1b13a7dbf
commit
3593d6623d
8 changed files with 49 additions and 50 deletions
|
|
@ -7,7 +7,7 @@ namespace AcDream.App.UI;
|
|||
/// the scroll offset is an integer pixel value (<c>m_iScrollableY</c>) clamped to
|
||||
/// [0, ContentHeight - ViewHeight]; the thumb ratio is view/content; the position
|
||||
/// ratio is scroll/(content-view). Pure (no GL) so it is fully unit-tested and
|
||||
/// shared by the transcript (UiChatView) and the scrollbar (UiChatScrollbar).
|
||||
/// shared by the transcript (UiChatView) and the scrollbar (UiScrollbar).
|
||||
/// Decomp anchors: SetScrollableXY @0x4740c0, UpdateScrollbarSize_ @0x4741a0,
|
||||
/// UpdateScrollbarPosition_ @0x473f20, UIElement_Text::InqScrollDelta @0x4689b0.
|
||||
/// </summary>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue