More sensible VRAM sorting thing
Some checks failed
.NET Build and Publish to Gitea / build (push) Has been cancelled

This commit is contained in:
2025-09-03 16:01:51 +01:00
parent 9ca6931bb8
commit a3d0408d6f
3 changed files with 15 additions and 16 deletions

View File

@@ -235,11 +235,17 @@ public class Pair : DisposableMediatorSubscriberBase
{ {
string? noteOrName = GetNoteOrName(); string? noteOrName = GetNoteOrName();
if (noteOrName != null) if (_mareConfig.Current.SortSyncshellsByVRAM)
{
return($"0{LastAppliedApproximateVRAMBytes}");
}
else if (noteOrName != null) {
return $"0{noteOrName}"; return $"0{noteOrName}";
else }
else {
return $"9{UserData.AliasOrUID}"; return $"9{UserData.AliasOrUID}";
} }
}
public string GetPlayerNameHash() public string GetPlayerNameHash()
{ {

View File

@@ -20,7 +20,7 @@ public class DrawGroupPair : DrawPairBase
private readonly GroupPairFullInfoDto _fullInfoDto; private readonly GroupPairFullInfoDto _fullInfoDto;
private readonly GroupFullInfoDto _group; private readonly GroupFullInfoDto _group;
private readonly CharaDataManager _charaDataManager; private readonly CharaDataManager _charaDataManager;
public long VramUsage { get; set; } public long VRAMUsage { get; set; }
public DrawGroupPair(string id, Pair entry, ApiController apiController, public DrawGroupPair(string id, Pair entry, ApiController apiController,
MareMediator mareMediator, GroupFullInfoDto group, GroupPairFullInfoDto fullInfoDto, MareMediator mareMediator, GroupFullInfoDto group, GroupPairFullInfoDto fullInfoDto,
@@ -87,7 +87,6 @@ public class DrawGroupPair : DrawPairBase
presenceText += "Files Size: " + UiSharedService.ByteToString(_pair.LastAppliedDataBytes, true); presenceText += "Files Size: " + UiSharedService.ByteToString(_pair.LastAppliedDataBytes, true);
if (_pair.LastAppliedApproximateVRAMBytes >= 0) if (_pair.LastAppliedApproximateVRAMBytes >= 0)
{ {
VramUsage = _pair.LastAppliedApproximateVRAMBytes;
presenceText += Environment.NewLine + "Approx. VRAM Usage: " + UiSharedService.ByteToString(_pair.LastAppliedApproximateVRAMBytes, true); presenceText += Environment.NewLine + "Approx. VRAM Usage: " + UiSharedService.ByteToString(_pair.LastAppliedApproximateVRAMBytes, true);
} }
if (_pair.LastAppliedDataTris >= 0) if (_pair.LastAppliedDataTris >= 0)

View File

@@ -427,12 +427,13 @@ internal sealed class GroupPanel
var visibleUsers = new List<DrawGroupPair>(); var visibleUsers = new List<DrawGroupPair>();
var onlineUsers = new List<DrawGroupPair>(); var onlineUsers = new List<DrawGroupPair>();
var offlineUsers = new List<DrawGroupPair>(); var offlineUsers = new List<DrawGroupPair>();
foreach (var pair in sortedPairs) foreach (var pair in sortedPairs)
{ {
var drawPair = new DrawGroupPair( var drawPair = new DrawGroupPair(
groupDto.GID + pair.UserData.UID, pair, groupDto.GID + pair.UserData.UID, pair,
ApiController, _mainUi.Mediator, groupDto, ApiController, _mainUi.Mediator, groupDto,
pair.GroupPair.Single( pair.GroupPair.Single(
g => GroupDataComparer.Instance.Equals(g.Key.Group, groupDto.Group) g => GroupDataComparer.Instance.Equals(g.Key.Group, groupDto.Group)
).Value, ).Value,
@@ -452,16 +453,9 @@ internal sealed class GroupPanel
{ {
ImGui.TextUnformatted("Visible"); ImGui.TextUnformatted("Visible");
ImGui.Separator(); ImGui.Separator();
if (_mareConfig.Current.SortSyncshellsByVRAM) _uidDisplayHandler.RenderPairList(visibleUsers);
{
List<DrawGroupPair> sortedVisibleUsers = visibleUsers.OrderBy(o=>o.VramUsage).ToList();
_uidDisplayHandler.RenderPairList(sortedVisibleUsers);
}
else
{
_uidDisplayHandler.RenderPairList(visibleUsers);
}
} }
if (onlineUsers.Count > 0) if (onlineUsers.Count > 0)