diff --git a/Source/Editor/Content/Items/PrefabItem.cs b/Source/Editor/Content/Items/PrefabItem.cs index a61e07e7c..6394ed52c 100644 --- a/Source/Editor/Content/Items/PrefabItem.cs +++ b/Source/Editor/Content/Items/PrefabItem.cs @@ -42,6 +42,32 @@ namespace FlaxEditor.Content /// public override SpriteHandle DefaultThumbnail => SpriteHandle.Invalid; + private string _cachedTypeDescription = null; + + /// + public override string TypeDescription + { + get + { + if (_cachedTypeDescription != null) + return _cachedTypeDescription; + + Prefab prefab = FlaxEngine.Content.LoadAsync(ID); + if (prefab.WaitForLoaded(5000)) + { + _cachedTypeDescription = "Prefab"; + } + + Actor root = prefab.GetDefaultInstance(); + if (root is UIControl or UICanvas) + _cachedTypeDescription = "Widget"; + else + _cachedTypeDescription = "Prefab"; + + return _cachedTypeDescription; + } + } + /// public override bool IsOfType(Type type) {