AboutWindow.cs 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. using Gtk;
  2. using Ryujinx.Common.Utilities;
  3. using Ryujinx.Ui.Helper;
  4. using System.Net.Http;
  5. using System.Net.NetworkInformation;
  6. using System.Threading.Tasks;
  7. namespace Ryujinx.Ui.Windows
  8. {
  9. public partial class AboutWindow : Window
  10. {
  11. public AboutWindow() : base($"Ryujinx {Program.Version} - About")
  12. {
  13. InitializeComponent();
  14. _ = DownloadPatronsJson();
  15. }
  16. private async Task DownloadPatronsJson()
  17. {
  18. if (!NetworkInterface.GetIsNetworkAvailable())
  19. {
  20. _patreonNamesText.Buffer.Text = "Connection Error.";
  21. }
  22. HttpClient httpClient = new HttpClient();
  23. try
  24. {
  25. string patreonJsonString = await httpClient.GetStringAsync("https://patreon.ryujinx.org/");
  26. _patreonNamesText.Buffer.Text = string.Join(", ", JsonHelper.Deserialize<string[]>(patreonJsonString));
  27. }
  28. catch
  29. {
  30. _patreonNamesText.Buffer.Text = "API Error.";
  31. }
  32. }
  33. //
  34. // Events
  35. //
  36. private void RyujinxButton_Pressed(object sender, ButtonPressEventArgs args)
  37. {
  38. OpenHelper.OpenUrl("https://ryujinx.org");
  39. }
  40. private void PatreonButton_Pressed(object sender, ButtonPressEventArgs args)
  41. {
  42. OpenHelper.OpenUrl("https://www.patreon.com/ryujinx");
  43. }
  44. private void GitHubButton_Pressed(object sender, ButtonPressEventArgs args)
  45. {
  46. OpenHelper.OpenUrl("https://github.com/Ryujinx/Ryujinx");
  47. }
  48. private void DiscordButton_Pressed(object sender, ButtonPressEventArgs args)
  49. {
  50. OpenHelper.OpenUrl("https://discordapp.com/invite/N2FmfVc");
  51. }
  52. private void TwitterButton_Pressed(object sender, ButtonPressEventArgs args)
  53. {
  54. OpenHelper.OpenUrl("https://twitter.com/RyujinxEmu");
  55. }
  56. private void ContributorsButton_Pressed(object sender, ButtonPressEventArgs args)
  57. {
  58. OpenHelper.OpenUrl("https://github.com/Ryujinx/Ryujinx/graphs/contributors?type=a");
  59. }
  60. }
  61. }