Replace 'Expand DRAM' option with dropdown menu #32

Merged
KeatonTheBot merged 2 commits from dram-dropdown into master 2024-10-22 04:16:41 +00:00
24 changed files with 243 additions and 58 deletions
Showing only changes of commit a9f6e6f3b4 - Show all commits

View File

@ -4,8 +4,8 @@ using System.Diagnostics;
using System.Numerics;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.Intrinsics.X86;
using System.Runtime.Intrinsics;
using System.Runtime.Intrinsics.X86;
// ReSharper disable InconsistentNaming
namespace Ryujinx.Common
@ -67,18 +67,198 @@ namespace Ryujinx.Common
private static ReadOnlySpan<byte> Xxh3KSecret =>
[
0xb8, 0xfe, 0x6c, 0x39, 0x23, 0xa4, 0x4b, 0xbe, 0x7c, 0x01, 0x81, 0x2c, 0xf7, 0x21, 0xad, 0x1c,
0xde, 0xd4, 0x6d, 0xe9, 0x83, 0x90, 0x97, 0xdb, 0x72, 0x40, 0xa4, 0xa4, 0xb7, 0xb3, 0x67, 0x1f,
0xcb, 0x79, 0xe6, 0x4e, 0xcc, 0xc0, 0xe5, 0x78, 0x82, 0x5a, 0xd0, 0x7d, 0xcc, 0xff, 0x72, 0x21,
0xb8, 0x08, 0x46, 0x74, 0xf7, 0x43, 0x24, 0x8e, 0xe0, 0x35, 0x90, 0xe6, 0x81, 0x3a, 0x26, 0x4c,
0x3c, 0x28, 0x52, 0xbb, 0x91, 0xc3, 0x00, 0xcb, 0x88, 0xd0, 0x65, 0x8b, 0x1b, 0x53, 0x2e, 0xa3,
0x71, 0x64, 0x48, 0x97, 0xa2, 0x0d, 0xf9, 0x4e, 0x38, 0x19, 0xef, 0x46, 0xa9, 0xde, 0xac, 0xd8,
0xa8, 0xfa, 0x76, 0x3f, 0xe3, 0x9c, 0x34, 0x3f, 0xf9, 0xdc, 0xbb, 0xc7, 0xc7, 0x0b, 0x4f, 0x1d,
0x8a, 0x51, 0xe0, 0x4b, 0xcd, 0xb4, 0x59, 0x31, 0xc8, 0x9f, 0x7e, 0xc9, 0xd9, 0x78, 0x73, 0x64,
0xea, 0xc5, 0xac, 0x83, 0x34, 0xd3, 0xeb, 0xc3, 0xc5, 0x81, 0xa0, 0xff, 0xfa, 0x13, 0x63, 0xeb,
0x17, 0x0d, 0xdd, 0x51, 0xb7, 0xf0, 0xda, 0x49, 0xd3, 0x16, 0x55, 0x26, 0x29, 0xd4, 0x68, 0x9e,
0x2b, 0x16, 0xbe, 0x58, 0x7d, 0x47, 0xa1, 0xfc, 0x8f, 0xf8, 0xb8, 0xd1, 0x7a, 0xd0, 0x31, 0xce,
0x45, 0xcb, 0x3a, 0x8f, 0x95, 0x16, 0x04, 0x28, 0xaf, 0xd7, 0xfb, 0xca, 0xbb, 0x4b, 0x40, 0x7e
0xb8,
0xfe,
0x6c,
0x39,
0x23,
0xa4,
0x4b,
0xbe,
0x7c,
0x01,
0x81,
0x2c,
0xf7,
0x21,
0xad,
0x1c,
0xde,
0xd4,
0x6d,
0xe9,
0x83,
0x90,
0x97,
0xdb,
0x72,
0x40,
0xa4,
0xa4,
0xb7,
0xb3,
0x67,
0x1f,
0xcb,
0x79,
0xe6,
0x4e,
0xcc,
0xc0,
0xe5,
0x78,
0x82,
0x5a,
0xd0,
0x7d,
0xcc,
0xff,
0x72,
0x21,
0xb8,
0x08,
0x46,
0x74,
0xf7,
0x43,
0x24,
0x8e,
0xe0,
0x35,
0x90,
0xe6,
0x81,
0x3a,
0x26,
0x4c,
0x3c,
0x28,
0x52,
0xbb,
0x91,
0xc3,
0x00,
0xcb,
0x88,
0xd0,
0x65,
0x8b,
0x1b,
0x53,
0x2e,
0xa3,
0x71,
0x64,
0x48,
0x97,
0xa2,
0x0d,
0xf9,
0x4e,
0x38,
0x19,
0xef,
0x46,
0xa9,
0xde,
0xac,
0xd8,
0xa8,
0xfa,
0x76,
0x3f,
0xe3,
0x9c,
0x34,
0x3f,
0xf9,
0xdc,
0xbb,
0xc7,
0xc7,
0x0b,
0x4f,
0x1d,
0x8a,
0x51,
0xe0,
0x4b,
0xcd,
0xb4,
0x59,
0x31,
0xc8,
0x9f,
0x7e,
0xc9,
0xd9,
0x78,
0x73,
0x64,
0xea,
0xc5,
0xac,
0x83,
0x34,
0xd3,
0xeb,
0xc3,
0xc5,
0x81,
0xa0,
0xff,
0xfa,
0x13,
0x63,
0xeb,
0x17,
0x0d,
0xdd,
0x51,
0xb7,
0xf0,
0xda,
0x49,
0xd3,
0x16,
0x55,
0x26,
0x29,
0xd4,
0x68,
0x9e,
0x2b,
0x16,
0xbe,
0x58,
0x7d,
0x47,
0xa1,
0xfc,
0x8f,
0xf8,
0xb8,
0xd1,
0x7a,
0xd0,
0x31,
0xce,
0x45,
0xcb,
0x3a,
0x8f,
0x95,
0x16,
0x04,
0x28,
0xaf,
0xd7,
0xfb,
0xca,
0xbb,
0x4b,
0x40,
0x7e
];
[MethodImpl(MethodImplOptions.AggressiveInlining)]

View File

@ -147,7 +147,8 @@ namespace Ryujinx.Input.SDL2
public void Rumble(float lowFrequency, float highFrequency, uint durationMs)
{
if (!Features.HasFlag(GamepadFeaturesFlag.Rumble)) return;
if (!Features.HasFlag(GamepadFeaturesFlag.Rumble))
return;
ushort lowFrequencyRaw = (ushort)(lowFrequency * ushort.MaxValue);
ushort highFrequencyRaw = (ushort)(highFrequency * ushort.MaxValue);
@ -265,7 +266,8 @@ namespace Ryujinx.Input.SDL2
// ReSharper disable once ForeachCanBePartlyConvertedToQueryUsingAnotherGetEnumerator
foreach (ButtonMappingEntry entry in _buttonsUserMapping)
{
if (!entry.IsValid) continue;
if (!entry.IsValid)
continue;
// Do not touch state of button already pressed
if (!result.IsPressed(entry.To))

View File

@ -98,7 +98,6 @@ namespace Ryujinx.UI.Common.Helper
if (baseApplicationExtension is not (".nro" or ".nso"))
return IsFirmwareValid(contentManager, out error);
error = UserError.Success;
}
error = UserError.ApplicationNotFound;

View File

@ -87,7 +87,8 @@ namespace Ryujinx.UI.Common.Helper
foreach (string path in titleUpdateMetadata.Paths)
{
if (!File.Exists(path)) continue;
if (!File.Exists(path))
continue;
try
{

View File

@ -21,7 +21,8 @@ namespace Ryujinx.Ava.Common.Locale
new CompiledBindingPathBuilder()
.Property(PropertyInfo, PropertyInfoAccessorFactory.CreateInpcPropertyAccessor)
.Build()
) { Source = LocaleManager.Instance }
)
{ Source = LocaleManager.Instance }
.ProvideValue(serviceProvider);
}
}

View File

@ -45,7 +45,7 @@ namespace Ryujinx.Ava.UI.ViewModels.Input
private PlayerIndex _playerId;
private int _controller;
private int _controllerNumber;
private readonly int _controllerNumber;
private string _controllerImage;
private int _device;
private object _configViewModel;

View File

@ -186,7 +186,8 @@ namespace Ryujinx.Ava.UI.Views.Main
private async void ChangeWindowSize_Click(object sender, RoutedEventArgs e)
{
if (sender is not MenuItem { Tag: string resolution }) return;
if (sender is not MenuItem { Tag: string resolution })
return;
(int height, int width) = resolution.Split(' ')
.Into(parts => (int.Parse(parts[0]), int.Parse(parts[1])));

View File

@ -665,7 +665,8 @@ namespace Ryujinx.Ava.UI.Windows
? string.Format(LocaleManager.Instance[LocaleKeys.AutoloadUpdateAddedMessage], numUpdatesAdded)
: null;
if (msg is null) return;
if (msg is null)
return;
Dispatcher.UIThread.InvokeAsync(async () =>