mirror of
https://github.com/ppy/osu.git
synced 2026-05-23 12:37:30 +08:00
Always show update button on mobile so section isn't empty
This commit is contained in:
@@ -44,51 +44,40 @@ namespace osu.Game.Overlays.Settings.Sections.General
|
||||
[Resolved]
|
||||
private OsuGame? game { get; set; }
|
||||
|
||||
[Resolved]
|
||||
private IDialogOverlay? dialogOverlay { get; set; }
|
||||
|
||||
[BackgroundDependencyLoader]
|
||||
private void load(OsuConfigManager config, IDialogOverlay? dialogOverlay)
|
||||
private void load(OsuConfigManager config)
|
||||
{
|
||||
config.BindWith(OsuSetting.ReleaseStream, configReleaseStream);
|
||||
|
||||
if (updateManager?.CanCheckForUpdate == true && !RuntimeInfo.IsMobile)
|
||||
bool isDesktop = RuntimeInfo.IsDesktop;
|
||||
bool canCheckUpdates = updateManager?.CanCheckForUpdate == true;
|
||||
|
||||
if (canCheckUpdates)
|
||||
{
|
||||
Add(releaseStreamDropdown = new SettingsEnumDropdown<ReleaseStream>
|
||||
// For simplicity, hide the concept of release streams from mobile users.
|
||||
if (isDesktop)
|
||||
{
|
||||
LabelText = GeneralSettingsStrings.ReleaseStream,
|
||||
Current = { Value = configReleaseStream.Value },
|
||||
Keywords = new[] { @"version" },
|
||||
});
|
||||
|
||||
if (updateManager.FixedReleaseStream != null)
|
||||
{
|
||||
configReleaseStream.Value = updateManager.FixedReleaseStream.Value;
|
||||
|
||||
releaseStreamDropdown.ShowsDefaultIndicator = false;
|
||||
releaseStreamDropdown.Items = [updateManager.FixedReleaseStream.Value];
|
||||
releaseStreamDropdown.SetNoticeText(GeneralSettingsStrings.ChangeReleaseStreamPackageManagerWarning);
|
||||
}
|
||||
|
||||
releaseStreamDropdown.Current.BindValueChanged(stream =>
|
||||
{
|
||||
if (stream.NewValue == ReleaseStream.Tachyon)
|
||||
Add(releaseStreamDropdown = new SettingsEnumDropdown<ReleaseStream>
|
||||
{
|
||||
dialogOverlay?.Push(new ConfirmDialog(GeneralSettingsStrings.ChangeReleaseStreamConfirmation,
|
||||
() =>
|
||||
{
|
||||
configReleaseStream.Value = ReleaseStream.Tachyon;
|
||||
},
|
||||
() =>
|
||||
{
|
||||
releaseStreamDropdown.Current.Value = ReleaseStream.Lazer;
|
||||
})
|
||||
{
|
||||
BodyText = GeneralSettingsStrings.ChangeReleaseStreamConfirmationInfo
|
||||
});
|
||||
LabelText = GeneralSettingsStrings.ReleaseStream,
|
||||
Current = { Value = configReleaseStream.Value },
|
||||
Keywords = new[] { @"version" },
|
||||
});
|
||||
|
||||
return;
|
||||
if (updateManager!.FixedReleaseStream != null)
|
||||
{
|
||||
configReleaseStream.Value = updateManager.FixedReleaseStream.Value;
|
||||
|
||||
releaseStreamDropdown.ShowsDefaultIndicator = false;
|
||||
releaseStreamDropdown.Items = [updateManager.FixedReleaseStream.Value];
|
||||
releaseStreamDropdown.SetNoticeText(GeneralSettingsStrings.ChangeReleaseStreamPackageManagerWarning);
|
||||
}
|
||||
|
||||
configReleaseStream.Value = stream.NewValue;
|
||||
});
|
||||
releaseStreamDropdown.Current.BindValueChanged(releaseStreamChanged);
|
||||
}
|
||||
|
||||
Add(checkForUpdatesButton = new SettingsButton
|
||||
{
|
||||
@@ -97,7 +86,8 @@ namespace osu.Game.Overlays.Settings.Sections.General
|
||||
});
|
||||
}
|
||||
|
||||
if (RuntimeInfo.IsDesktop)
|
||||
// Loosely update-related maintenance buttons.
|
||||
if (isDesktop)
|
||||
{
|
||||
Add(new SettingsButton
|
||||
{
|
||||
@@ -121,6 +111,20 @@ namespace osu.Game.Overlays.Settings.Sections.General
|
||||
}
|
||||
}
|
||||
|
||||
private void releaseStreamChanged(ValueChangedEvent<ReleaseStream> stream)
|
||||
{
|
||||
if (stream.NewValue == ReleaseStream.Tachyon)
|
||||
{
|
||||
dialogOverlay?.Push(
|
||||
new ConfirmDialog(GeneralSettingsStrings.ChangeReleaseStreamConfirmation, () => { configReleaseStream.Value = ReleaseStream.Tachyon; },
|
||||
() => { releaseStreamDropdown.Current.Value = ReleaseStream.Lazer; }) { BodyText = GeneralSettingsStrings.ChangeReleaseStreamConfirmationInfo });
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
configReleaseStream.Value = stream.NewValue;
|
||||
}
|
||||
|
||||
private async Task checkForUpdates()
|
||||
{
|
||||
if (updateManager == null || game == null)
|
||||
|
||||
Reference in New Issue
Block a user