From 5712e3be3806921874eecda3c1a2a8564db85128 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E6=80=9D=E6=B5=B7?= <10001@qq.com> Date: Thu, 20 Feb 2025 11:44:00 +0800 Subject: [PATCH] modify --- Editor/PackageManager/RepositoryDataFetcher.cs | 5 ++--- .../Window/FrameworkPackageManagerWindow.cs | 12 +++++++++--- .../PackageManager/Window/PackageBottomStateBar.cs | 3 ++- Editor/PackageManager/Window/PackageInfoView.cs | 4 +++- 4 files changed, 16 insertions(+), 8 deletions(-) diff --git a/Editor/PackageManager/RepositoryDataFetcher.cs b/Editor/PackageManager/RepositoryDataFetcher.cs index 5a15fd1..abf8ac4 100644 --- a/Editor/PackageManager/RepositoryDataFetcher.cs +++ b/Editor/PackageManager/RepositoryDataFetcher.cs @@ -86,10 +86,9 @@ namespace AlicizaX.PackageManager.Editor private const string PackageJsonPath = "/raw/branch/main/package.json"; - - public static void FetchRepositoryData(Action> callback) { + EditorPrefs.SetString("PackageUpdateDate", DateTime.Now.ToString()); EditorCoroutineUtility.StartCoroutineOwnerless(FetchDataRoutine(callback)); } @@ -188,7 +187,7 @@ namespace AlicizaX.PackageManager.Editor private static void UpdateWithPackageInfo(ref RepositoryPackageData data, PackageJsonResponse package) { if (package == null) return; - + data.name = package.name; data.displayName = package.displayName; data.version = package.version; data.unityVersion = package.unity; diff --git a/Editor/PackageManager/Window/FrameworkPackageManagerWindow.cs b/Editor/PackageManager/Window/FrameworkPackageManagerWindow.cs index b5bdb1e..754319d 100644 --- a/Editor/PackageManager/Window/FrameworkPackageManagerWindow.cs +++ b/Editor/PackageManager/Window/FrameworkPackageManagerWindow.cs @@ -12,8 +12,13 @@ namespace AlicizaX.PackageManager.Editor internal class FrameworkPackageManagerWindow : EditorWindow { private const string VisualAssetPath = "Packages/com.alicizax.unity.packagemanager/Editor/PackageManager/Res/AlicizaXPackageManagerWindow.uxml"; - public List RepositoryPackageDatas = new List(); + public List RepositoryPackageDatas = new(); + public static FrameworkPackageManagerWindow Instance; + public FrameworkPackageManagerWindow() + { + Instance = this; + } public void RefreshPackageData(Action callBack) { @@ -28,8 +33,7 @@ namespace AlicizaX.PackageManager.Editor [MenuItem("Tools/AlicizaX/Package Manager")] internal static void Open() { - EditorWindow.GetWindow().Show(); - GetWindow().Refresh(); + GetWindow().Show(); } private void CreateGUI() @@ -70,6 +74,8 @@ namespace AlicizaX.PackageManager.Editor packageListView.itemsSource = RepositoryPackageDatas; + + Refresh(); } private void PackageListViewOnOnSelectionChangedEvent(IEnumerable obj) diff --git a/Editor/PackageManager/Window/PackageBottomStateBar.cs b/Editor/PackageManager/Window/PackageBottomStateBar.cs index 69f371d..3111a04 100644 --- a/Editor/PackageManager/Window/PackageBottomStateBar.cs +++ b/Editor/PackageManager/Window/PackageBottomStateBar.cs @@ -20,7 +20,8 @@ namespace AlicizaX.PackageManager.Editor stateLabel = new Label(); stateLabel.name = "stateLabel"; - stateLabel.text = "Last update Feb 19,13:52"; + + stateLabel.text = EditorPrefs.GetString("PackageUpdateDate", ""); stateLabel.style.alignSelf = Align.Center; stateLabel.style.marginLeft = new Length(2, LengthUnit.Pixel); stateLabel.style.flexGrow = 1; // 让 Label 占据剩余空间 diff --git a/Editor/PackageManager/Window/PackageInfoView.cs b/Editor/PackageManager/Window/PackageInfoView.cs index 13795fc..ed799b4 100644 --- a/Editor/PackageManager/Window/PackageInfoView.cs +++ b/Editor/PackageManager/Window/PackageInfoView.cs @@ -154,7 +154,6 @@ namespace AlicizaX.PackageManager.Editor _btnRemove.style.marginLeft = 0; - packageBtnContainer.Add(_btnInstall); packageBtnContainer.Add(_btnUpdate); packageBtnContainer.Add(_btnRemove); @@ -193,14 +192,17 @@ namespace AlicizaX.PackageManager.Editor private void OnBtnUpdate() { + PackageManagerCheckTool.UpdatePackage(_selectRepositoryPackageData.name); } private void OnBtnInstall() { + PackageManagerCheckTool.InstallPackage(_selectRepositoryPackageData.cloneUrl); } private void OnBtnRemove() { + PackageManagerCheckTool.UninstallPackage(_selectRepositoryPackageData.name); } } }