TitleHelper.cs 1.2 KB

1234567891011121314151617181920212223242526
  1. using Ryujinx.HLE.Loaders.Processes;
  2. namespace Ryujinx.Ava.Utilities
  3. {
  4. public static class TitleHelper
  5. {
  6. public static string ActiveApplicationTitle(ProcessResult activeProcess, string applicationVersion, bool customTitlebar, string pauseString = "")
  7. {
  8. if (activeProcess == null)
  9. return string.Empty;
  10. string titleNameSection = string.IsNullOrWhiteSpace(activeProcess.Name) ? string.Empty : $" {activeProcess.Name}";
  11. string titleVersionSection = string.IsNullOrWhiteSpace(activeProcess.DisplayVersion) ? string.Empty : $" v{activeProcess.DisplayVersion}";
  12. string titleIdSection = $" ({activeProcess.ProgramIdText.ToUpper()})";
  13. string titleArchSection = activeProcess.Is64Bit ? " (64-bit)" : " (32-bit)";
  14. string appTitle = customTitlebar
  15. ? $"Ryujinx {applicationVersion}\n{titleNameSection.Trim()}\n{titleVersionSection.Trim()}\n{titleIdSection.Trim()}{titleArchSection}"
  16. : $"Ryujinx {applicationVersion} -{titleNameSection}{titleVersionSection}{titleIdSection}{titleArchSection}";
  17. return !string.IsNullOrEmpty(pauseString)
  18. ? appTitle + $" ({pauseString})"
  19. : appTitle;
  20. }
  21. }
  22. }