Просмотр исходного кода

UI: Button to open screenshots folder in File menu

Evan Husted 1 год назад
Родитель
Сommit
aa2178dbe5

+ 50 - 0
src/Ryujinx/Assets/locales.json

@@ -447,6 +447,31 @@
         "zh_TW": "開啟 Ryujinx 資料夾"
       }
     },
+    {
+      "ID": "MenuBarFileOpenScreenshotsFolder",
+      "Translations": {
+        "ar_SA": "",
+        "de_DE": "",
+        "el_GR": "",
+        "en_US": "Open Screenshots Folder",
+        "es_ES": "",
+        "fr_FR": "",
+        "he_IL": "",
+        "it_IT": "",
+        "ja_JP": "",
+        "ko_KR": "",
+        "no_NO": "",
+        "pl_PL": "",
+        "pt_BR": "",
+        "ru_RU": "",
+        "sv_SE": "",
+        "th_TH": "",
+        "tr_TR": "",
+        "uk_UA": "",
+        "zh_CN": "",
+        "zh_TW": ""
+      }
+    },
     {
       "ID": "MenuBarFileOpenLogsFolder",
       "Translations": {
@@ -17197,6 +17222,31 @@
         "zh_TW": "開啟 Ryujinx 檔案系統資料夾"
       }
     },
+    {
+      "ID": "OpenScreenshotFolderTooltip",
+      "Translations": {
+        "ar_SA": "",
+        "de_DE": "",
+        "el_GR": "",
+        "en_US": "Open Ryujinx screenshots folder",
+        "es_ES": "",
+        "fr_FR": "",
+        "he_IL": "",
+        "it_IT": "",
+        "ja_JP": "",
+        "ko_KR": "",
+        "no_NO": "",
+        "pl_PL": "",
+        "pt_BR": "",
+        "ru_RU": "",
+        "sv_SE": "",
+        "th_TH": "",
+        "tr_TR": "",
+        "uk_UA": "",
+        "zh_CN": "",
+        "zh_TW": ""
+      }
+    },
     {
       "ID": "OpenRyujinxLogsTooltip",
       "Translations": {

+ 19 - 0
src/Ryujinx/UI/ViewModels/MainWindowViewModel.cs

@@ -1347,6 +1347,25 @@ namespace Ryujinx.Ava.UI.ViewModels
             OpenHelper.OpenFolder(AppDataManager.BaseDirPath);
         }
 
+        public void OpenScreenshotsFolder()
+        {
+            string screenshotsDir = Path.Combine(AppDataManager.BaseDirPath, "screenshots");
+
+            try
+            {
+                if (!Directory.Exists(screenshotsDir))
+                    Directory.CreateDirectory(screenshotsDir);
+            }
+            catch (Exception ex)
+            {
+                Logger.Error?.Print(LogClass.Application, $"Failed to create directory at path {screenshotsDir}. Error : {ex.GetType().Name}", "Screenshot");
+
+                return;
+            }
+            
+            OpenHelper.OpenFolder(screenshotsDir);
+        }
+
         public void OpenLogsFolder()
         {
             string logPath = AppDataManager.GetOrCreateLogsDir();

+ 4 - 0
src/Ryujinx/UI/Views/Main/MainMenuBarView.axaml

@@ -66,6 +66,10 @@
                     Command="{Binding OpenRyujinxFolder}"
                     Header="{ext:Locale MenuBarFileOpenEmuFolder}"
                     ToolTip.Tip="{ext:Locale OpenRyujinxFolderTooltip}" />
+                <MenuItem
+                    Command="{Binding OpenScreenshotsFolder}"
+                    Header="{ext:Locale MenuBarFileOpenScreenshotsFolder}"
+                    ToolTip.Tip="{ext:Locale OpenScreenshotFolderTooltip}"/>
                 <MenuItem
                     Command="{Binding OpenLogsFolder}"
                     Header="{ext:Locale MenuBarFileOpenLogsFolder}"