mirror of
https://git.ryujinx.app/ryubing/ryujinx.git
synced 2026-07-05 02:29:05 +00:00
cleanup (#161)
general cleanup for some warnings in the project and some developer annoyances. Reviewed-on: https://git.ryujinx.app/projects/Ryubing/pulls/161
This commit is contained in:
@@ -47,7 +47,7 @@
|
||||
"tr_TR": "",
|
||||
"uk_UA": "Файл: {0:n} МБ • Гра: {1:n} МБ\n\nЕкономія: {2:n} МБ",
|
||||
"zh_CN": "文件: {0:n} MB • 游戏: {1:n} MB\n\n节省: {2:n} MB",
|
||||
"zh_TW": "檔案: {0:n} MB • 遊戲: {1:n} MB\n\n節省: {2:n} MB"
|
||||
"zh_TW": "檔案: {0:n} MB • 遊戲: {1:n} MB\n\n節省: {2:n} MB"
|
||||
}
|
||||
},
|
||||
{
|
||||
@@ -58,7 +58,7 @@
|
||||
"el_GR": "",
|
||||
"en_US": "XCI does not require trimming. Check logs for details.",
|
||||
"es_ES": "El XCI no necesita ser recortado. Verifica los logs para detalles.",
|
||||
"fr_FR": "Le XCI n’a pas besoin d’être réduit. Référez-vous aux journaux pour détails.",
|
||||
"fr_FR": "Le XCI n’a pas besoin d’être réduit. Référez-vous aux journaux pour détails.",
|
||||
"he_IL": "",
|
||||
"it_IT": "Non è necessario ridurre la dimensione del XCI. Controlla i log per dettagli.",
|
||||
"ja_JP": "",
|
||||
@@ -120,7 +120,7 @@
|
||||
"sv_SE": "XCI-filen är skrivskyddad och kunde inte göras skrivbar. Kontrollera loggen för mer information",
|
||||
"th_TH": "XCI เป็นอ่านอย่างเดียวและไม่สามารถเขียนได้ ตรวจสอบบันทึกสำหรับรายละเอียด",
|
||||
"tr_TR": "",
|
||||
"uk_UA": "XCI тільки для читання і не можна записати. Перевірте логи для деталей.",
|
||||
"uk_UA": "XCI тільки для читання і не можна записати. Перевірте логи для деталей.",
|
||||
"zh_CN": "XCI 只读,无法写入。查看日志以获取详情。",
|
||||
"zh_TW": "XCI 檔案唯讀,無法寫入。檢查日誌以取得詳情。"
|
||||
}
|
||||
@@ -133,7 +133,7 @@
|
||||
"el_GR": "",
|
||||
"en_US": "XCI size changed since last scan. Ensure the file is not being written to and try again.",
|
||||
"es_ES": "El tamaño de XCI ha cambiado desde que fue escaneado. Verifica que no se esté escribiendo al archivo y vuelve a intentarlo.",
|
||||
"fr_FR": "La taille de XCI a changé depuis son analyse. Vérifiez que le fichier n’est pas en cours d’écriture, puis réessayez.",
|
||||
"fr_FR": "La taille de XCI a changé depuis son analyse. Vérifiez que le fichier n’est pas en cours d’écriture, puis réessayez.",
|
||||
"he_IL": "",
|
||||
"it_IT": "La dimensione di XCI è cambiata da quando è stato scansionato. Controlla che il file non sia scritto e riprova.",
|
||||
"ja_JP": "",
|
||||
@@ -166,7 +166,7 @@
|
||||
"no_NO": "XCI har data i den ledige plassen. Det er ikke trygt å trimme den.",
|
||||
"pl_PL": "XCI zawiera dane w obszarze wolnego miejsca. Nie jest bezpieczne go przycinać.",
|
||||
"pt_BR": "XCI tem dados na área de espaço livre. Não é seguro reduzi-lo.",
|
||||
"ru_RU": "XCI содержит данные в свободной области. Его обрезка небезопасна.",
|
||||
"ru_RU": "XCI содержит данные в свободной области. Его обрезка небезопасна.",
|
||||
"sv_SE": "XCI har data i det lediga utrymmet. Det är inte säkert att optimera.",
|
||||
"th_TH": "XCI มีข้อมูลในพื้นที่ว่าง จึงไม่ปลอดภัยที่จะทำการตัดแต่ง",
|
||||
"tr_TR": "",
|
||||
@@ -216,11 +216,11 @@
|
||||
"no_NO": "XCI kunne ikke åpnes for skriving. Sjekk loggene for detaljer.",
|
||||
"pl_PL": "Nie można otworzyć XCI do zapisu. Sprawdź dzienniki, aby uzyskać szczegóły.",
|
||||
"pt_BR": "XCI não pôde ser aberto para gravação. Verifique os logs para detalhes.",
|
||||
"ru_RU": "Не удалось открыть XCI для записи. Проверьте журналы для подробностей.",
|
||||
"ru_RU": "Не удалось открыть XCI для записи. Проверьте журналы для подробностей.",
|
||||
"sv_SE": "XCI kunde inte öppnas för skrivning. Kontrollera loggen för detaljer.",
|
||||
"th_TH": "ไม่สามารถเปิด XCI เพื่อเขียนข้อมูลได้ โปรดตรวจสอบบันทึกสำหรับรายละเอียด",
|
||||
"tr_TR": "",
|
||||
"uk_UA": "Не вдалося відкрити XCI для запису. Перевірте журнали для деталей.",
|
||||
"uk_UA": "Не вдалося відкрити XCI для запису. Перевірте журнали для деталей.",
|
||||
"zh_CN": "XCI 不能写入。查看日志以获得更多细节。",
|
||||
"zh_TW": "XCI 無法開啟以進行寫入。請檢查日誌以取得更多資訊。"
|
||||
}
|
||||
@@ -301,4 +301,4 @@
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
{
|
||||
"ID": "TrimXCIButton",
|
||||
"Translations": {
|
||||
"ar_SA": "تقليم XCI",
|
||||
"ar_SA": "تقليم XCI",
|
||||
"de_DE": "Zuschneiden der XCI",
|
||||
"el_GR": "Κοπή XCI",
|
||||
"en_US": "Trim XCI",
|
||||
@@ -19,11 +19,11 @@
|
||||
"ru_RU": "Обрезать XCI",
|
||||
"sv_SE": "Optimera XCI",
|
||||
"th_TH": "ลดขนาด XCI",
|
||||
"tr_TR": "XCI'yi Kırp",
|
||||
"tr_TR": "XCI'yi Kırp",
|
||||
"uk_UA": "Нарізка XCI",
|
||||
"zh_CN": "精简 XCI",
|
||||
"zh_TW": "修剪 XCI"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -228,7 +228,7 @@
|
||||
{
|
||||
"ID": "XCITrimmerButton",
|
||||
"Translations": {
|
||||
"ar_SA": "",
|
||||
"ar_SA": "",
|
||||
"de_DE": "XCI-Trimmer",
|
||||
"el_GR": "",
|
||||
"en_US": "XCI Trimmer",
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{
|
||||
{
|
||||
"Locales": [
|
||||
{
|
||||
"ID": "SettingsTabInputDirectMouseAccess",
|
||||
@@ -11425,11 +11425,11 @@
|
||||
"zh_TW": "目前控制器設定已更新。"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "DialogControllerSettingsModifiedConfirmSubMessage",
|
||||
"Translations": {
|
||||
"ar_SA": "هل تريد الحفظ ؟",
|
||||
"de_DE": "Controller-Einstellungen speichern?",
|
||||
{
|
||||
"ID": "DialogControllerSettingsModifiedConfirmSubMessage",
|
||||
"Translations": {
|
||||
"ar_SA": "هل تريد الحفظ ؟",
|
||||
"de_DE": "Controller-Einstellungen speichern?",
|
||||
"el_GR": "Θέλετε να αποθηκεύσετε;",
|
||||
"en_US": "Do you want to save?",
|
||||
"es_ES": "¿Guardar cambios?",
|
||||
@@ -11446,63 +11446,63 @@
|
||||
"th_TH": "คุณต้องการบันทึกหรือไม่?",
|
||||
"tr_TR": "Kaydetmek istiyor musunuz?",
|
||||
"uk_UA": "Ви хочете зберегти?",
|
||||
"zh_CN": "是否保存?",
|
||||
"zh_TW": "您想要儲存嗎?"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "DialogControllerSettingsResetKeybindsConfirmMessage",
|
||||
"Translations": {
|
||||
"ar_SA": "",
|
||||
"de_DE": "",
|
||||
"el_GR": "",
|
||||
"en_US": "Reset the selected device keybinds to their default values?",
|
||||
"es_ES": "¿Restablecer las asignaciones del dispositivo seleccionado a sus valores predeterminados?",
|
||||
"fr_FR": "Réinitialiser les assignations du périphérique sélectionné à leurs valeurs par défaut ?",
|
||||
"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": "DialogControllerSettingsResetKeybindsConfirmSubMessage",
|
||||
"Translations": {
|
||||
"ar_SA": "",
|
||||
"de_DE": "",
|
||||
"el_GR": "",
|
||||
"en_US": "This is a destructive action and will overwrite the current bindings for this device.",
|
||||
"es_ES": "Esta acción es destructiva y sobrescribirá las asignaciones actuales de este dispositivo.",
|
||||
"fr_FR": "Cette action est destructive et écrasera les assignations actuelles de ce périphérique.",
|
||||
"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": "DialogLoadFileErrorMessage",
|
||||
"Translations": {
|
||||
"zh_CN": "是否保存?",
|
||||
"zh_TW": "您想要儲存嗎?"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "DialogControllerSettingsResetKeybindsConfirmMessage",
|
||||
"Translations": {
|
||||
"ar_SA": "",
|
||||
"de_DE": "",
|
||||
"el_GR": "",
|
||||
"en_US": "Reset the selected device keybinds to their default values?",
|
||||
"es_ES": "¿Restablecer las asignaciones del dispositivo seleccionado a sus valores predeterminados?",
|
||||
"fr_FR": "Réinitialiser les assignations du périphérique sélectionné à leurs valeurs par défaut ?",
|
||||
"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": "DialogControllerSettingsResetKeybindsConfirmSubMessage",
|
||||
"Translations": {
|
||||
"ar_SA": "",
|
||||
"de_DE": "",
|
||||
"el_GR": "",
|
||||
"en_US": "This is a destructive action and will overwrite the current bindings for this device.",
|
||||
"es_ES": "Esta acción es destructiva y sobrescribirá las asignaciones actuales de este dispositivo.",
|
||||
"fr_FR": "Cette action est destructive et écrasera les assignations actuelles de ce périphérique.",
|
||||
"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": "DialogLoadFileErrorMessage",
|
||||
"Translations": {
|
||||
"ar_SA": "{0}. ملف خاطئ: {1}",
|
||||
"de_DE": "{0}. Fehlerhafte Datei: {1}",
|
||||
"el_GR": "",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"Locales": [
|
||||
{
|
||||
{
|
||||
"ID": "TrimmingXCILabel",
|
||||
"Translations": {
|
||||
"ar_SA": "جاري تقليم: {0}",
|
||||
@@ -19,7 +19,7 @@
|
||||
"ru_RU": "Обрезка: {0}",
|
||||
"sv_SE": "Trimmar: {0}",
|
||||
"th_TH": "กำลังตัด: {0}",
|
||||
"tr_TR": "{0} Kısaltılıyor:",
|
||||
"tr_TR": "{0} Kısaltılıyor:",
|
||||
"uk_UA": "Обрізка: {0}",
|
||||
"zh_CN": "正在修剪: {0}",
|
||||
"zh_TW": "正在修剪: {0}"
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
"uk_UA": "Вибрано XCI: {0}/{1} (Відображається: {2})",
|
||||
"zh_CN": "XCI 已选: {0}/{1}(显示: {2})",
|
||||
"zh_TW": "XCI 已選擇: {0}/{1}(顯示: {2})"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "StatusTrimmingLabel",
|
||||
@@ -103,7 +103,7 @@
|
||||
{
|
||||
"ID": "SelectAllButton",
|
||||
"Translations": {
|
||||
"ar_SA": "اختر الكل",
|
||||
"ar_SA": "اختر الكل",
|
||||
"de_DE": "Alles auswählen",
|
||||
"el_GR": "Επιλογή όλων",
|
||||
"en_US": "Select All",
|
||||
@@ -366,7 +366,7 @@
|
||||
"no_NO": null,
|
||||
"pl_PL": null,
|
||||
"pt_BR": null,
|
||||
"ru_RU": "{0} МБ",
|
||||
"ru_RU": "{0} МБ",
|
||||
"sv_SE": null,
|
||||
"th_TH": null,
|
||||
"tr_TR": null,
|
||||
|
||||
@@ -6,7 +6,7 @@ namespace ARMeilleure.Common
|
||||
public readonly struct AddressTableLevel
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets the index of the <see cref="Level"/> in the guest address.
|
||||
/// Gets the index of the <see cref="Index"/> in the guest address.
|
||||
/// </summary>
|
||||
public int Index { get; }
|
||||
|
||||
|
||||
@@ -128,7 +128,7 @@ namespace Ryujinx.BuildValidationTasks
|
||||
|
||||
using (StreamWriter sw = new(path))
|
||||
{
|
||||
sw.Write(jsonString);
|
||||
sw.Write($"{jsonString}\n");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -11,7 +11,11 @@ namespace Ryujinx.HLE.HOS.Services.Notification
|
||||
|
||||
private readonly KEvent _getNotificationSendingNotifierEvent;
|
||||
private int _getNotificationSendingNotifierEventHandle;
|
||||
public INotificationSystemEventAccessor(ServiceCtx context) { }
|
||||
|
||||
public INotificationSystemEventAccessor(ServiceCtx context)
|
||||
{
|
||||
_getNotificationSendingNotifierEvent = new KEvent(context.Device.System.KernelContext);
|
||||
}
|
||||
|
||||
[CommandCmif(0)] // 9.0.0+
|
||||
// GetNotificationSendingNotifier() -> nn::notification::server::INotificationSystemEventAccessor
|
||||
|
||||
@@ -41,7 +41,7 @@ namespace Ryujinx.Input.SDL3
|
||||
}
|
||||
|
||||
int serialNumber = 0;
|
||||
string? serial = SDL_GetGamepadSerial(gamepadHandle);
|
||||
string serial = SDL_GetGamepadSerial(gamepadHandle);
|
||||
if (serial is not null)
|
||||
{
|
||||
int.TryParse(serial, out serialNumber);
|
||||
|
||||
@@ -767,8 +767,9 @@ namespace Ryujinx.Input.HLE
|
||||
{
|
||||
foreach (AssignedInputDevice assignedController in assignedControllers)
|
||||
{
|
||||
foreach (string gamepadId in gamepadDriver.GamepadsIds)
|
||||
for (int index = 0; index < gamepadDriver.GamepadsIds.Length; index++)
|
||||
{
|
||||
string gamepadId = gamepadDriver.GamepadsIds[index];
|
||||
if (string.Equals(gamepadId, assignedController.Id, StringComparison.Ordinal))
|
||||
{
|
||||
yield return assignedController;
|
||||
@@ -782,14 +783,14 @@ namespace Ryujinx.Input.HLE
|
||||
|
||||
if (config is StandardControllerInputConfig)
|
||||
{
|
||||
foreach (string gamepadId in gamepadDriver.GamepadsIds)
|
||||
for (int index = 0; index < gamepadDriver.GamepadsIds.Length; index++)
|
||||
{
|
||||
string gamepadId = gamepadDriver.GamepadsIds[index];
|
||||
if (string.Equals(gamepadId, config.Id, StringComparison.Ordinal))
|
||||
{
|
||||
yield return new AssignedInputDevice
|
||||
{
|
||||
Type = AssignedInputDeviceType.Controller,
|
||||
Id = gamepadId,
|
||||
Type = AssignedInputDeviceType.Controller, Id = gamepadId,
|
||||
};
|
||||
yield break;
|
||||
}
|
||||
@@ -1092,7 +1093,7 @@ namespace Ryujinx.Input.HLE
|
||||
: _assignedControllerConfigs.FirstOrDefault(),
|
||||
_controllerDriver
|
||||
),
|
||||
_ => ((IGamepad?)null, (InputConfig?)null, (IGamepadDriver?)null)
|
||||
_ => ((IGamepad)null, (InputConfig)null, (IGamepadDriver)null)
|
||||
};
|
||||
|
||||
_controllerGamepad = _gamepad;
|
||||
|
||||
@@ -26,9 +26,9 @@ namespace Ryujinx.Ava.Common
|
||||
|
||||
internal class TrimmerWindow : Ryujinx.Common.Logging.XCIFileTrimmerLog
|
||||
{
|
||||
private readonly XCITrimmerViewModel _viewModel;
|
||||
private readonly XciTrimmerViewModel _viewModel;
|
||||
|
||||
public TrimmerWindow(XCITrimmerViewModel viewModel)
|
||||
public TrimmerWindow(XciTrimmerViewModel viewModel)
|
||||
{
|
||||
_viewModel = viewModel;
|
||||
}
|
||||
|
||||
@@ -1105,7 +1105,7 @@ namespace Ryujinx.Ava.Systems.PlayReport
|
||||
|
||||
return $"At the main menu";
|
||||
|
||||
static string LocFinal(string? location) => location switch
|
||||
static string LocFinal(string location) => location switch
|
||||
{
|
||||
"0" => "Somewhere in Miitopia",
|
||||
"1" => "Wandering around Greenhorne",
|
||||
@@ -1151,8 +1151,10 @@ namespace Ryujinx.Ava.Systems.PlayReport
|
||||
{
|
||||
return "At the main menu";
|
||||
}
|
||||
|
||||
static string MarioOrLuigiGamemode(string? gamemode) => gamemode switch
|
||||
|
||||
return "";
|
||||
|
||||
static string MarioOrLuigiGamemode(string gamemode) => gamemode switch
|
||||
{
|
||||
"0" => "mario",
|
||||
"1" => "luigi",
|
||||
@@ -1161,14 +1163,14 @@ namespace Ryujinx.Ava.Systems.PlayReport
|
||||
_ => gamemode
|
||||
};
|
||||
|
||||
static string OtherGameMode(string? gamemode) => gamemode switch
|
||||
{
|
||||
"2" => "Boost Rush",
|
||||
"3" => "Challenges",
|
||||
"4" => "Coin Battle",
|
||||
"5" => "Coin Battle Editor",
|
||||
_ => ""
|
||||
};
|
||||
// static string OtherGameMode(string gamemode) => gamemode switch
|
||||
// {
|
||||
// "2" => "Boost Rush",
|
||||
// "3" => "Challenges",
|
||||
// "4" => "Coin Battle",
|
||||
// "5" => "Coin Battle Editor",
|
||||
// _ => ""
|
||||
// };
|
||||
|
||||
static string SpecialMapNames(int? course) => course switch
|
||||
{
|
||||
@@ -1196,9 +1198,6 @@ namespace Ryujinx.Ava.Systems.PlayReport
|
||||
// Glacier seals = 16, water leaf = 15
|
||||
// desert ice = 14, acorn squid = 13
|
||||
// all other course numbers are to be considered a hazard
|
||||
|
||||
return "";
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -108,7 +108,7 @@ namespace Ryujinx.Ava.UI.Helpers
|
||||
try
|
||||
{
|
||||
string labelsJson = File.ReadAllText(labelsPath);
|
||||
Dictionary<string, string>? labels = JsonSerializer.Deserialize<Dictionary<string, string>>(labelsJson, _serializerOptions);
|
||||
Dictionary<string, string> labels = JsonSerializer.Deserialize<Dictionary<string, string>>(labelsJson, _serializerOptions);
|
||||
|
||||
if (labels != null)
|
||||
{
|
||||
|
||||
@@ -1767,7 +1767,7 @@ namespace Ryujinx.Ava.UI.ViewModels
|
||||
}
|
||||
}
|
||||
|
||||
private async Task<IReadOnlyList<string>?> PickFolders(LocaleKeys titleKey)
|
||||
private async Task<IReadOnlyList<string>> PickFolders(LocaleKeys titleKey)
|
||||
{
|
||||
return (await StorageProvider.OpenMultiFolderPickerAsync(new FolderPickerOpenOptions
|
||||
{
|
||||
@@ -2161,7 +2161,7 @@ namespace Ryujinx.Ava.UI.ViewModels
|
||||
Window.Position.X + (int)(Window.Bounds.Width / 2),
|
||||
Window.Position.Y + (int)(Window.Bounds.Height / 2));
|
||||
|
||||
Avalonia.Platform.Screen? screen =
|
||||
Avalonia.Platform.Screen screen =
|
||||
Window.Screens.ScreenFromVisual(Window) ??
|
||||
Window.Screens.ScreenFromPoint(windowCenter) ??
|
||||
Window.Screens.Primary;
|
||||
|
||||
@@ -16,7 +16,7 @@ using static Ryujinx.Common.Utilities.XCIFileTrimmer;
|
||||
|
||||
namespace Ryujinx.Ava.UI.ViewModels
|
||||
{
|
||||
public class XCITrimmerViewModel : BaseModel
|
||||
public class XciTrimmerViewModel : BaseModel
|
||||
{
|
||||
private const long BytesPerMb = 1024 * 1024;
|
||||
|
||||
@@ -49,7 +49,7 @@ namespace Ryujinx.Ava.UI.ViewModels
|
||||
private int _processingTotal;
|
||||
|
||||
|
||||
public XCITrimmerViewModel(MainWindowViewModel mainWindowViewModel)
|
||||
public XciTrimmerViewModel(MainWindowViewModel mainWindowViewModel)
|
||||
{
|
||||
_logger = new XCITrimmerLog.TrimmerWindow(this);
|
||||
_mainWindowViewModel = mainWindowViewModel;
|
||||
@@ -299,9 +299,9 @@ namespace Ryujinx.Ava.UI.ViewModels
|
||||
|
||||
private class CompareXCITrimmerFiles : IComparer<XCITrimmerFileModel>
|
||||
{
|
||||
private readonly XCITrimmerViewModel _viewModel;
|
||||
private readonly XciTrimmerViewModel _viewModel;
|
||||
|
||||
public CompareXCITrimmerFiles(XCITrimmerViewModel ViewModel)
|
||||
public CompareXCITrimmerFiles(XciTrimmerViewModel ViewModel)
|
||||
{
|
||||
_viewModel = ViewModel;
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<UserControl
|
||||
x:Class="Ryujinx.Ava.UI.Views.Dialog.XCITrimmerView"
|
||||
x:Class="Ryujinx.Ava.UI.Views.Dialog.XciTrimmerView"
|
||||
xmlns="https://github.com/avaloniaui"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
@@ -11,7 +11,7 @@
|
||||
xmlns:models="clr-namespace:Ryujinx.Ava.Common.Models"
|
||||
Width="700"
|
||||
Height="600"
|
||||
x:DataType="viewModels:XCITrimmerViewModel"
|
||||
x:DataType="viewModels:XciTrimmerViewModel"
|
||||
Focusable="True"
|
||||
mc:Ignorable="d">
|
||||
<Grid Margin="25,10,25,0" RowDefinitions="Auto,Auto,*,Auto,Auto">
|
||||
@@ -121,7 +121,7 @@
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Center"
|
||||
CornerRadius="5"
|
||||
IsVisible="{Binding $parent[UserControl].DataContext.Processing}"
|
||||
IsVisible="{Binding !$parent[UserControl].((viewModels:XciTrimmerViewModel)DataContext).Processing}"
|
||||
Maximum="100"
|
||||
Minimum="0"
|
||||
Value="{Binding PercentageProgress}" />
|
||||
@@ -131,7 +131,7 @@
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
MaxLines="1"
|
||||
IsVisible="{Binding !$parent[UserControl].DataContext.Processing}"
|
||||
IsVisible="{Binding !$parent[UserControl].((viewModels:XciTrimmerViewModel)DataContext).Processing}"
|
||||
Text="{Binding ., Converter={x:Static helpers:XCITrimmerFileSpaceSavingsConverter.Instance}}" />
|
||||
</Grid>
|
||||
</Grid>
|
||||
@@ -182,4 +182,4 @@
|
||||
</Grid>
|
||||
</Panel>
|
||||
</Grid>
|
||||
</UserControl>
|
||||
</UserControl>
|
||||
|
||||
@@ -11,16 +11,16 @@ using System.Threading.Tasks;
|
||||
|
||||
namespace Ryujinx.Ava.UI.Views.Dialog
|
||||
{
|
||||
public partial class XCITrimmerView : RyujinxControl<XCITrimmerViewModel>
|
||||
public partial class XciTrimmerView : RyujinxControl<XciTrimmerViewModel>
|
||||
{
|
||||
public XCITrimmerView()
|
||||
public XciTrimmerView()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void ToggleSelect(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (DataContext is XCITrimmerViewModel vm)
|
||||
if (DataContext is XciTrimmerViewModel vm)
|
||||
vm.ToggleSelect();
|
||||
}
|
||||
|
||||
@@ -31,9 +31,9 @@ namespace Ryujinx.Ava.UI.Views.Dialog
|
||||
PrimaryButtonText = string.Empty,
|
||||
SecondaryButtonText = string.Empty,
|
||||
CloseButtonText = string.Empty,
|
||||
Content = new XCITrimmerView
|
||||
Content = new XciTrimmerView
|
||||
{
|
||||
ViewModel = new XCITrimmerViewModel(RyujinxApp.MainWindow.ViewModel)
|
||||
ViewModel = new XciTrimmerViewModel(RyujinxApp.MainWindow.ViewModel)
|
||||
},
|
||||
Title = LocaleManager.Instance[LocaleKeys.MenuBar_Actions_XCITrimmerButton]
|
||||
};
|
||||
@@ -58,7 +58,7 @@ namespace Ryujinx.Ava.UI.Views.Dialog
|
||||
|
||||
private void Close(object sender, RoutedEventArgs e)
|
||||
{
|
||||
((ContentDialog)Parent).Hide();
|
||||
((ContentDialog)Parent!).Hide();
|
||||
}
|
||||
|
||||
private void Cancel(Object sender, RoutedEventArgs e)
|
||||
@@ -69,7 +69,7 @@ namespace Ryujinx.Ava.UI.Views.Dialog
|
||||
public void Sort_Checked(object sender, RoutedEventArgs args)
|
||||
{
|
||||
if (sender is RadioButton { Tag: string sortField })
|
||||
ViewModel.SortingField = Enum.Parse<XCITrimmerViewModel.SortField>(sortField);
|
||||
ViewModel.SortingField = Enum.Parse<XciTrimmerViewModel.SortField>(sortField);
|
||||
}
|
||||
|
||||
public void Order_Checked(object sender, RoutedEventArgs args)
|
||||
|
||||
@@ -43,7 +43,7 @@ namespace Ryujinx.Ava.UI.Views.Main
|
||||
ResumeEmulationMenuItem.Command = Commands.Create(() => ViewModel.AppHost?.Resume());
|
||||
StopEmulationMenuItem.Command = Commands.Create(() => ViewModel.AppHost?.ShowExitPrompt().OrCompleted());
|
||||
RestartEmulationMenuItem.Command = Commands.Create(() => ViewModel.RestartEmulation());
|
||||
XCITrimmerMenuItem.Command = Commands.Create(XCITrimmerView.Show);
|
||||
XCITrimmerMenuItem.Command = Commands.Create(XciTrimmerView.Show);
|
||||
AboutWindowMenuItem.Command = Commands.Create(AboutView.Show);
|
||||
CompatibilityListMenuItem.Command = Commands.Create(() => CompatibilityListWindow.Show());
|
||||
LdnGameListMenuItem.Command = Commands.Create(() => LdnGamesListWindow.Show());
|
||||
|
||||
@@ -44,7 +44,7 @@ namespace Ryujinx.Ava.UI.Views.Settings
|
||||
return;
|
||||
}
|
||||
|
||||
MainWindow? mainWindow = RyujinxApp.MainWindow;
|
||||
MainWindow mainWindow = RyujinxApp.MainWindow;
|
||||
if (mainWindow?.ViewModel?.AppHost?.NpadManager is not { } npadManager)
|
||||
{
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user