1
0
mirror of https://github.com/ppy/osu.git synced 2025-01-28 07:23:14 +08:00

Fix a few more tests

This commit is contained in:
smoogipoo 2020-09-09 16:33:48 +09:00
parent b1b99e4d6f
commit 1a023d2c88
2 changed files with 25 additions and 19 deletions

View File

@ -3,6 +3,7 @@
using System.Linq; using System.Linq;
using System.Threading.Tasks; using System.Threading.Tasks;
using JetBrains.Annotations;
using osu.Framework.Allocation; using osu.Framework.Allocation;
using osu.Framework.Graphics; using osu.Framework.Graphics;
using osu.Game.Beatmaps; using osu.Game.Beatmaps;
@ -27,8 +28,8 @@ namespace osu.Game.Overlays.Settings.Sections.Maintenance
private TriangleButton restoreButton; private TriangleButton restoreButton;
private TriangleButton undeleteButton; private TriangleButton undeleteButton;
[BackgroundDependencyLoader] [BackgroundDependencyLoader(permitNulls: true)]
private void load(BeatmapManager beatmaps, ScoreManager scores, SkinManager skins, CollectionManager collectionManager, DialogOverlay dialogOverlay) private void load(BeatmapManager beatmaps, ScoreManager scores, SkinManager skins, [CanBeNull] CollectionManager collectionManager, DialogOverlay dialogOverlay)
{ {
if (beatmaps.SupportsImportFromStable) if (beatmaps.SupportsImportFromStable)
{ {
@ -108,28 +109,31 @@ namespace osu.Game.Overlays.Settings.Sections.Maintenance
} }
}); });
if (collectionManager.SupportsImportFromStable) if (collectionManager != null)
{ {
Add(importCollectionsButton = new SettingsButton if (collectionManager.SupportsImportFromStable)
{ {
Text = "Import collections from stable", Add(importCollectionsButton = new SettingsButton
{
Text = "Import collections from stable",
Action = () =>
{
importCollectionsButton.Enabled.Value = false;
collectionManager.ImportFromStableAsync().ContinueWith(t => Schedule(() => importCollectionsButton.Enabled.Value = true));
}
});
}
Add(new DangerousSettingsButton
{
Text = "Delete ALL collections",
Action = () => Action = () =>
{ {
importCollectionsButton.Enabled.Value = false; dialogOverlay?.Push(new DeleteAllBeatmapsDialog(collectionManager.DeleteAll));
collectionManager.ImportFromStableAsync().ContinueWith(t => Schedule(() => importCollectionsButton.Enabled.Value = true));
} }
}); });
} }
Add(new DangerousSettingsButton
{
Text = "Delete ALL collections",
Action = () =>
{
dialogOverlay?.Push(new DeleteAllBeatmapsDialog(collectionManager.DeleteAll));
}
});
AddRange(new Drawable[] AddRange(new Drawable[]
{ {
restoreButton = new SettingsButton restoreButton = new SettingsButton

View File

@ -37,10 +37,12 @@ namespace osu.Game.Screens.Select
ItemSource = filters; ItemSource = filters;
} }
[BackgroundDependencyLoader] [BackgroundDependencyLoader(permitNulls: true)]
private void load(CollectionManager collectionManager) private void load([CanBeNull] CollectionManager collectionManager)
{ {
collections.BindTo(collectionManager.Collections); if (collectionManager != null)
collections.BindTo(collectionManager.Collections);
collections.CollectionChanged += (_, __) => collectionsChanged(); collections.CollectionChanged += (_, __) => collectionsChanged();
collectionsChanged(); collectionsChanged();
} }