private void OnModsChanged(object sender, ModCollectionChangedEventArgs e)
 {
     ThreadHelper.JoinableTaskFactory.Run(async() =>
     {
         await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync();
         OnModsChanged(e);
     });
 }
 private void OnModsChanged(ModCollectionChangedEventArgs e)
 {
     using (Manager.BeginChangingItems())
     {
         if (e.Action == ModCollectionChangedAction.Add)
         {
             OnModAdded(e.Mod);
         }
         else if (e.Action == ModCollectionChangedAction.Remove)
         {
             OnModRemoved(e.Mod);
         }
     }
 }
 protected virtual void OnModCollectionModified(ModCollectionChangedEventArgs e)
 {
     ModCollectionModified?.Invoke(this, e);
 }