fix(ui): refresh live skill rows

This commit is contained in:
Erik 2026-07-31 08:22:46 +02:00
parent 461a1fb7b4
commit 1d8371dbe5
3 changed files with 55 additions and 4 deletions

View file

@ -209,6 +209,7 @@ public sealed class RetailUiRuntime : IDisposable
private UiShortcutDigitGraphics? _shortcutDigitGraphics;
private ItemCooldownUiController? _itemCooldownController;
private VividTargetIndicatorController? _vividTargetIndicator;
private IDisposable? _characterSheetSubscription;
private ResourceShutdownTransaction? _shutdown;
private bool _disposed;
@ -1676,9 +1677,12 @@ public sealed class RetailUiRuntime : IDisposable
return;
}
CharacterSheetProvider provider = _bindings.Character.Provider;
CharacterSheet currentSheet = provider.BuildSheet();
_characterSheetSubscription = provider.SubscribeChanged(
() => currentSheet = provider.BuildSheet());
CharacterStatController.Bind(
layout,
provider.BuildSheet,
() => currentSheet,
_bindings.Assets.DefaultFont,
_bindings.Assets.ResolveFont(0x40000001u) ?? _bindings.Assets.DefaultFont,
_bindings.Assets.ResolveSprite,
@ -1922,7 +1926,11 @@ public sealed class RetailUiRuntime : IDisposable
_shutdown ??= CreateShutdownTransaction(
() => _automation?.Dispose(),
() => _persistence?.Dispose(),
() => Host.WindowManager.WindowVisibilityChanged -= OnWindowVisibilityChanged,
() =>
{
_characterSheetSubscription?.Dispose();
Host.WindowManager.WindowVisibilityChanged -= OnWindowVisibilityChanged;
},
() => _itemConfirmationController?.Dispose(),
() => _gameplayConfirmationController?.Dispose(),
() => DialogFactory?.Dispose(),