using Ryujinx.Ava.Common.Locale; using Ryujinx.Ui.App.Common; using System; using System.Collections.Generic; namespace Ryujinx.Ava.UI.Models.Generic { internal class LastPlayedSortComparer : IComparer { public LastPlayedSortComparer() { } public LastPlayedSortComparer(bool isAscending) { IsAscending = isAscending; } public bool IsAscending { get; } public int Compare(ApplicationData x, ApplicationData y) { string aValue = x.LastPlayed; string bValue = y.LastPlayed; if (aValue == LocaleManager.Instance[LocaleKeys.Never]) { aValue = DateTime.UnixEpoch.ToString(); } if (bValue == LocaleManager.Instance[LocaleKeys.Never]) { bValue = DateTime.UnixEpoch.ToString(); } return (IsAscending ? 1 : -1) * DateTime.Compare(DateTime.Parse(bValue), DateTime.Parse(aValue)); } } }