diff --git a/SpineViewer/ViewModels/MainWindow/SpineObjectListViewModel.cs b/SpineViewer/ViewModels/MainWindow/SpineObjectListViewModel.cs
index 9ef4b69..a161261 100644
--- a/SpineViewer/ViewModels/MainWindow/SpineObjectListViewModel.cs
+++ b/SpineViewer/ViewModels/MainWindow/SpineObjectListViewModel.cs
@@ -599,7 +599,7 @@ namespace SpineViewer.ViewModels.MainWindow
}
else if (models.Count > 0)
{
- AddSpineObject(models[0]);
+ InsertSpineObject(models[0]);
_logger.LogCurrentProcessMemoryUsage();
}
}
@@ -620,10 +620,10 @@ namespace SpineViewer.ViewModels.MainWindow
{
if (ct.IsCancellationRequested) break;
- var cfg = models[i];
+ var cfg = models[totalCount - 1 - i];
reporter.ProgressText = $"[{i}/{totalCount}] {cfg}";
- if (AddSpineObject(cfg))
+ if (InsertSpineObject(cfg))
success++;
else
error++;
@@ -650,15 +650,15 @@ namespace SpineViewer.ViewModels.MainWindow
}
///
- /// 安全地在列表末尾添加一个模型, 发生错误会输出日志
+ /// 安全地在列表头添加一个模型, 发生错误会输出日志
///
/// 是否添加成功
- private bool AddSpineObject(SpineObjectWorkspaceConfigModel cfg)
+ private bool InsertSpineObject(SpineObjectWorkspaceConfigModel cfg)
{
try
{
var sp = new SpineObjectModel(cfg);
- lock (_spineObjectModels.Lock) _spineObjectModels.Add(sp);
+ lock (_spineObjectModels.Lock) _spineObjectModels.Insert(0, sp);
if (Application.Current.Dispatcher.CheckAccess())
{
RequestSelectionChanging?.Invoke(this, new(NotifyCollectionChangedAction.Reset));