public class UpdateLocalizationOperation : AppLoadingOperation { LocalizationConfig config => ServiceLocator.MainConfig.localization; PersistentInt lastLocalizationVersion = new PersistentInt("lastLocalizationVersion",1); public async override Task Run(CancellationToken token) { TaskCompletionSource tcs = new TaskCompletionSource(); if (config.version > lastLocalizationVersion.Value) { I2.Loc.LocalizationManager.Sources[0].Event_OnSourceUpdateFromGoogle += (arg1, arg2, arg3) => { tcs.SetResult(arg2); lastLocalizationVersion.Value = config.version; }; I2.Loc.LocalizationManager.Sources[0].Import_Google(true, false); } return tcs.Task; } }