From aa7d22460d2b7e77bae25f7edd030fbef3cb71ba Mon Sep 17 00:00:00 2001 From: Lucas A Date: Tue, 8 Dec 2020 19:46:55 +0100 Subject: [PATCH] Override Import() instead. --- osu.Android/OsuGameActivity.cs | 3 ++- osu.Android/OsuGameAndroid.cs | 11 +++++------ osu.Game/Database/ArchiveModelManager.cs | 2 +- osu.Game/OsuGameBase.cs | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/osu.Android/OsuGameActivity.cs b/osu.Android/OsuGameActivity.cs index 541455277d..eb9df24bf7 100644 --- a/osu.Android/OsuGameActivity.cs +++ b/osu.Android/OsuGameActivity.cs @@ -1,6 +1,7 @@ // Copyright (c) ppy Pty Ltd . Licensed under the MIT Licence. // See the LICENCE file in the repository root for full licence text. +using System.Threading.Tasks; using Android.App; using Android.Content; using Android.Content.PM; @@ -57,7 +58,7 @@ namespace osu.Android var stream = ContentResolver.OpenInputStream(uri); if (stream != null) - game.ScheduleImport(stream, cursor.GetString(filename_column)); + Task.Factory.StartNew(() => game.Import(stream, cursor.GetString(filename_column)), TaskCreationOptions.LongRunning); } } } diff --git a/osu.Android/OsuGameAndroid.cs b/osu.Android/OsuGameAndroid.cs index 81945ee083..c9b27a16d6 100644 --- a/osu.Android/OsuGameAndroid.cs +++ b/osu.Android/OsuGameAndroid.cs @@ -67,12 +67,11 @@ namespace osu.Android } } - /// - /// Schedules a file to be imported once the game is loaded. - /// - /// A stream to the file to import. - /// The filename of the file to import. - public void ScheduleImport(Stream stream, string filename) => WaitForReady(() => this, _ => Task.Run(() => Import(stream, filename))); + public override Task Import(Stream stream, string filename) + { + WaitForReady(() => this, _ => Task.Run(() => base.Import(stream, filename))); + return Task.CompletedTask; + } protected override void LoadComplete() { diff --git a/osu.Game/Database/ArchiveModelManager.cs b/osu.Game/Database/ArchiveModelManager.cs index 6766ca2b77..36cc4cce39 100644 --- a/osu.Game/Database/ArchiveModelManager.cs +++ b/osu.Game/Database/ArchiveModelManager.cs @@ -218,7 +218,7 @@ namespace osu.Game.Database } return import; - } + } /// /// Fired when the user requests to view the resulting import. diff --git a/osu.Game/OsuGameBase.cs b/osu.Game/OsuGameBase.cs index 0fc2b8d1d7..150569f1dd 100644 --- a/osu.Game/OsuGameBase.cs +++ b/osu.Game/OsuGameBase.cs @@ -395,7 +395,7 @@ namespace osu.Game } } - public async Task Import(Stream stream, string filename) + public virtual async Task Import(Stream stream, string filename) { var extension = Path.GetExtension(filename)?.ToLowerInvariant();