diff --git a/osu.Android.props b/osu.Android.props
index c73c643d4b..6aebae665d 100644
--- a/osu.Android.props
+++ b/osu.Android.props
@@ -11,7 +11,7 @@
manifestmerger.jar
-
+
diff --git a/osu.Game/Overlays/Settings/Sections/Graphics/LayoutSettings.cs b/osu.Game/Overlays/Settings/Sections/Graphics/LayoutSettings.cs
index 6a4ad63799..a3290bc81c 100644
--- a/osu.Game/Overlays/Settings/Sections/Graphics/LayoutSettings.cs
+++ b/osu.Game/Overlays/Settings/Sections/Graphics/LayoutSettings.cs
@@ -193,25 +193,17 @@ namespace osu.Game.Overlays.Settings.Sections.Graphics
currentDisplay.BindValueChanged(display => Schedule(() =>
{
- // there is no easy way to perform an atomic swap on the `resolutions` list, which is bound to the dropdown via `ItemSource`.
- // this means, if the old resolution isn't saved, the `RemoveRange()` call below will cause `resolutionDropdown.Current` to reset value,
- // therefore making it impossible to select any dropdown value other than "Default".
- // to circumvent this locally, store the old value here, so that we can attempt to restore it later.
- var oldResolution = resolutionDropdown.Current.Value;
-
- resolutions.RemoveRange(1, resolutions.Count - 1);
-
- if (display.NewValue != null)
+ if (display.NewValue == null)
{
- resolutions.AddRange(display.NewValue.DisplayModes
- .Where(m => m.Size.Width >= 800 && m.Size.Height >= 600)
- .OrderByDescending(m => Math.Max(m.Size.Height, m.Size.Width))
- .Select(m => m.Size)
- .Distinct());
+ resolutions.Clear();
+ return;
}
- if (resolutions.Contains(oldResolution))
- resolutionDropdown.Current.Value = oldResolution;
+ resolutions.ReplaceRange(1, resolutions.Count - 1, display.NewValue.DisplayModes
+ .Where(m => m.Size.Width >= 800 && m.Size.Height >= 600)
+ .OrderByDescending(m => Math.Max(m.Size.Height, m.Size.Width))
+ .Select(m => m.Size)
+ .Distinct());
updateDisplaySettingsVisibility();
}), true);
diff --git a/osu.Game/osu.Game.csproj b/osu.Game/osu.Game.csproj
index 3ea4a57c2c..0fd2b0c2c5 100644
--- a/osu.Game/osu.Game.csproj
+++ b/osu.Game/osu.Game.csproj
@@ -30,13 +30,13 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
+
diff --git a/osu.iOS.props b/osu.iOS.props
index a240dec963..e4a169f8e5 100644
--- a/osu.iOS.props
+++ b/osu.iOS.props
@@ -16,6 +16,6 @@
iossimulator-x64
-
+