1
0
mirror of https://github.com/ppy/osu.git synced 2026-05-19 20:20:21 +08:00

Only show update settings if the game can be updated

This commit is contained in:
Dean Herbert
2025-11-21 16:30:24 +09:00
Unverified
parent a8594f1c08
commit a6a98fc078
2 changed files with 27 additions and 32 deletions
@@ -43,38 +43,34 @@ namespace osu.Game.Overlays.Settings.Sections.General
config.BindWith(OsuSetting.ReleaseStream, configReleaseStream);
bool isDesktop = RuntimeInfo.IsDesktop;
bool canCheckUpdates = updateManager?.CanCheckForUpdate == true;
if (canCheckUpdates)
// For simplicity, hide the concept of release streams from mobile users.
if (isDesktop)
{
// For simplicity, hide the concept of release streams from mobile users.
if (isDesktop)
Add(releaseStreamDropdown = new SettingsEnumDropdown<ReleaseStream>
{
Add(releaseStreamDropdown = new SettingsEnumDropdown<ReleaseStream>
{
LabelText = GeneralSettingsStrings.ReleaseStream,
Current = { Value = configReleaseStream.Value },
Keywords = new[] { @"version" },
});
LabelText = GeneralSettingsStrings.ReleaseStream,
Current = { Value = configReleaseStream.Value },
Keywords = new[] { @"version" },
});
if (updateManager!.FixedReleaseStream != null)
{
configReleaseStream.Value = updateManager.FixedReleaseStream.Value;
if (updateManager!.FixedReleaseStream != null)
{
configReleaseStream.Value = updateManager.FixedReleaseStream.Value;
releaseStreamDropdown.ShowsDefaultIndicator = false;
releaseStreamDropdown.Items = [updateManager.FixedReleaseStream.Value];
releaseStreamDropdown.SetNoticeText(GeneralSettingsStrings.ChangeReleaseStreamPackageManagerWarning);
}
releaseStreamDropdown.Current.BindValueChanged(releaseStreamChanged);
releaseStreamDropdown.ShowsDefaultIndicator = false;
releaseStreamDropdown.Items = [updateManager.FixedReleaseStream.Value];
releaseStreamDropdown.SetNoticeText(GeneralSettingsStrings.ChangeReleaseStreamPackageManagerWarning);
}
Add(checkForUpdatesButton = new SettingsButton
{
Text = GeneralSettingsStrings.CheckUpdate,
Action = () => checkForUpdates().FireAndForget()
});
releaseStreamDropdown.Current.BindValueChanged(releaseStreamChanged);
}
Add(checkForUpdatesButton = new SettingsButton
{
Text = GeneralSettingsStrings.CheckUpdate,
Action = () => checkForUpdates().FireAndForget()
});
}
private void releaseStreamChanged(ValueChangedEvent<ReleaseStream> stream)
@@ -8,6 +8,7 @@ using osu.Framework.Localisation;
using osu.Game.Graphics;
using osu.Game.Localisation;
using osu.Game.Overlays.Settings.Sections.General;
using osu.Game.Updater;
namespace osu.Game.Overlays.Settings.Sections
{
@@ -21,15 +22,13 @@ namespace osu.Game.Overlays.Settings.Sections
};
[BackgroundDependencyLoader]
private void load()
private void load(UpdateManager? updateManager)
{
Children = new Drawable[]
{
new LanguageSettings(),
new UpdateSettings(),
new InstallationSettings(),
new QuickActionSettings(),
};
Add(new LanguageSettings());
if (updateManager?.CanCheckForUpdate == true)
Add(new UpdateSettings());
Add(new InstallationSettings());
Add(new QuickActionSettings());
}
}
}