fix(ui): complete retail inventory scroll polish

Preserve pixel scroll offsets across inventory rebuilds, crop partially visible rows with nested geometry/UV clips, and replace the obsolete 560px resize ceiling with available screen height. Keep retail's row-sized wheel step while allowing continuous scrollbar thumb positions.

Co-Authored-By: Codex <codex@openai.com>
This commit is contained in:
Erik 2026-07-11 10:56:33 +02:00
parent ea72c395c9
commit 15aa3b9aff
15 changed files with 379 additions and 34 deletions

View file

@ -251,6 +251,12 @@ public sealed class InventoryController : IItemListDragHandler, IRetainedPanelCo
public void Populate()
{
// Retail refreshes listbox contents without resetting m_iScrollableY.
// Defer our procedural rebuild so the first re-added cell cannot collapse
// MaxScroll temporarily and clamp the user's offset back to zero.
using IDisposable? contentsLayout = _contentsGrid?.DeferLayout();
using IDisposable? containersLayout = _containerList?.DeferLayout();
uint p = _playerGuid();
uint open = EffectiveOpen();