UI: Properly disable selecting Metal on non-Mac platforms

This commit is contained in:
Evan Husted 2024-12-23 22:32:37 -06:00
parent f3dcb80a60
commit e82a90993c
2 changed files with 17 additions and 15 deletions

View File

@ -33,18 +33,20 @@
ToolTip.Tip="{ext:Locale SettingsTabGraphicsBackendTooltip}"
Text="{ext:Locale SettingsTabGraphicsBackend}"
Width="250" />
<ComboBox Width="350"
HorizontalContentAlignment="Left"
ToolTip.Tip="{ext:Locale SettingsTabGraphicsBackendTooltip}"
SelectedIndex="{Binding GraphicsBackendIndex}">
<ComboBox
Name="GraphicsBackendSelector"
Width="350"
HorizontalContentAlignment="Left"
ToolTip.Tip="{ext:Locale SettingsTabGraphicsBackendTooltip}"
SelectedIndex="{Binding GraphicsBackendIndex}">
<ComboBoxItem IsVisible="{Binding IsVulkanAvailable}">
<TextBlock Text="Vulkan" />
</ComboBoxItem>
<ComboBoxItem IsEnabled="{Binding IsOpenGLAvailable}">
<TextBlock Text="OpenGL" />
</ComboBoxItem>
<ComboBoxItem IsVisible="{Binding IsMetalAvailable}">
<TextBlock Text="Metal" />
<ComboBoxItem IsEnabled="{Binding IsMetalAvailable}">
<TextBlock Text="Metal (Experimental)" />
</ComboBoxItem>
</ComboBox>
</StackPanel>

View File

@ -56,34 +56,34 @@ namespace Ryujinx.Ava.UI.Windows
{
switch (navItem.Tag.ToString())
{
case "UiPage":
case nameof(UiPage):
UiPage.ViewModel = ViewModel;
NavPanel.Content = UiPage;
break;
case "InputPage":
case nameof(InputPage):
NavPanel.Content = InputPage;
break;
case "HotkeysPage":
case nameof(HotkeysPage):
NavPanel.Content = HotkeysPage;
break;
case "SystemPage":
case nameof(SystemPage):
SystemPage.ViewModel = ViewModel;
NavPanel.Content = SystemPage;
break;
case "CpuPage":
case nameof(CpuPage):
NavPanel.Content = CpuPage;
break;
case "GraphicsPage":
case nameof(GraphicsPage):
NavPanel.Content = GraphicsPage;
break;
case "AudioPage":
case nameof(AudioPage):
NavPanel.Content = AudioPage;
break;
case "NetworkPage":
case nameof(NetworkPage):
NetworkPage.ViewModel = ViewModel;
NavPanel.Content = NetworkPage;
break;
case "LoggingPage":
case nameof(LoggingPage):
NavPanel.Content = LoggingPage;
break;
default: