|
@@ -59,7 +59,7 @@ namespace Ryujinx.Ava.Utilities.AppLibrary
|
|
|
|
|
|
|
|
public string TimePlayedString => ValueFormatUtils.FormatTimeSpan(TimePlayed);
|
|
public string TimePlayedString => ValueFormatUtils.FormatTimeSpan(TimePlayed);
|
|
|
|
|
|
|
|
- public bool HasPlayedPreviously => TimePlayedString != string.Empty;
|
|
|
|
|
|
|
+ public bool HasPlayedPreviously => TimePlayed.TotalSeconds > 1;
|
|
|
|
|
|
|
|
public string LastPlayedString => ValueFormatUtils.FormatDateTime(LastPlayed)?.Replace(" ", "\n");
|
|
public string LastPlayedString => ValueFormatUtils.FormatDateTime(LastPlayed)?.Replace(" ", "\n");
|
|
|
|
|
|
|
@@ -78,25 +78,6 @@ namespace Ryujinx.Ava.Utilities.AppLibrary
|
|
|
|
|
|
|
|
public LocaleKeys? PlayabilityStatus => Compatibility.Convert(x => x.Status).OrElse(null);
|
|
public LocaleKeys? PlayabilityStatus => Compatibility.Convert(x => x.Status).OrElse(null);
|
|
|
|
|
|
|
|
- public string CompatibilityToolTip
|
|
|
|
|
- {
|
|
|
|
|
- get
|
|
|
|
|
- {
|
|
|
|
|
- StringBuilder sb = new(LocalizedStatusTooltip);
|
|
|
|
|
-
|
|
|
|
|
- string formattedCompatibilityLabels = FormattedCompatibilityLabels;
|
|
|
|
|
- if (!string.IsNullOrEmpty(formattedCompatibilityLabels))
|
|
|
|
|
- {
|
|
|
|
|
- sb.AppendLine()
|
|
|
|
|
- .AppendLine()
|
|
|
|
|
- .Append(formattedCompatibilityLabels);
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- return sb.ToString();
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
public string LocalizedStatusTooltip =>
|
|
public string LocalizedStatusTooltip =>
|
|
|
Compatibility.Convert(x =>
|
|
Compatibility.Convert(x =>
|
|
|
#pragma warning disable CS8509 It is exhaustive for all possible values this can contain.
|
|
#pragma warning disable CS8509 It is exhaustive for all possible values this can contain.
|
|
@@ -120,16 +101,16 @@ namespace Ryujinx.Ava.Utilities.AppLibrary
|
|
|
|
|
|
|
|
public static string GetBuildId(VirtualFileSystem virtualFileSystem, IntegrityCheckLevel checkLevel, string titleFilePath)
|
|
public static string GetBuildId(VirtualFileSystem virtualFileSystem, IntegrityCheckLevel checkLevel, string titleFilePath)
|
|
|
{
|
|
{
|
|
|
- using FileStream file = new(titleFilePath, FileMode.Open, FileAccess.Read);
|
|
|
|
|
-
|
|
|
|
|
- Nca mainNca = null;
|
|
|
|
|
- Nca patchNca = null;
|
|
|
|
|
-
|
|
|
|
|
if (!System.IO.Path.Exists(titleFilePath))
|
|
if (!System.IO.Path.Exists(titleFilePath))
|
|
|
{
|
|
{
|
|
|
Logger.Error?.Print(LogClass.Application, $"File \"{titleFilePath}\" does not exist.");
|
|
Logger.Error?.Print(LogClass.Application, $"File \"{titleFilePath}\" does not exist.");
|
|
|
return string.Empty;
|
|
return string.Empty;
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ using FileStream file = new(titleFilePath, FileMode.Open, FileAccess.Read);
|
|
|
|
|
+
|
|
|
|
|
+ Nca mainNca = null;
|
|
|
|
|
+ Nca patchNca = null;
|
|
|
|
|
|
|
|
string extension = System.IO.Path.GetExtension(titleFilePath).ToLower();
|
|
string extension = System.IO.Path.GetExtension(titleFilePath).ToLower();
|
|
|
|
|
|