PackageAssetPostprocessor.cs
833 Bytes
using System.Linq;
namespace UnityEditor.PackageManager.UI
{
internal class PackageAssetPostprocessor : AssetPostprocessor
{
static bool IsPackageJsonAsset(string path)
{
var pathComponents = (path ?? "").Split('/');
return pathComponents.Length == 3 && pathComponents[0] == "Packages" && pathComponents[2] == "package.json";
}
static void OnPostprocessAllAssets(string[] importedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths)
{
if (PackageCollection.Instance != null && (importedAssets.Any(IsPackageJsonAsset) || deletedAssets.Any(IsPackageJsonAsset) || movedAssets.Any(IsPackageJsonAsset)))
{
PackageCollection.Instance.FetchListOfflineCache(true);
}
}
}
}