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.Threading.Tasks;
using JetBrains.Annotations;
using osu.Framework.Allocation;
using osu.Framework.Graphics;
using osu.Game.Beatmaps;
@ -27,8 +28,8 @@ public class GeneralSettings : SettingsSubsection
private TriangleButton restoreButton;
private TriangleButton undeleteButton;
[BackgroundDependencyLoader]
private void load(BeatmapManager beatmaps, ScoreManager scores, SkinManager skins, CollectionManager collectionManager, DialogOverlay dialogOverlay)
[BackgroundDependencyLoader(permitNulls: true)]
private void load(BeatmapManager beatmaps, ScoreManager scores, SkinManager skins, [CanBeNull] CollectionManager collectionManager, DialogOverlay dialogOverlay)
{
if (beatmaps.SupportsImportFromStable)
{
@ -108,28 +109,31 @@ private void load(BeatmapManager beatmaps, ScoreManager scores, SkinManager skin
}
});
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 = () =>
{
importCollectionsButton.Enabled.Value = false;
collectionManager.ImportFromStableAsync().ContinueWith(t => Schedule(() => importCollectionsButton.Enabled.Value = true));
dialogOverlay?.Push(new DeleteAllBeatmapsDialog(collectionManager.DeleteAll));
}
});
}
Add(new DangerousSettingsButton
{
Text = "Delete ALL collections",
Action = () =>
{
dialogOverlay?.Push(new DeleteAllBeatmapsDialog(collectionManager.DeleteAll));
}
});
AddRange(new Drawable[]
{
restoreButton = new SettingsButton

View File

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