From b4ef6532997fdfeb950af16edfa718d1c19507f5 Mon Sep 17 00:00:00 2001 From: Elysia Date: Sat, 31 Jan 2026 00:17:07 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E7=A1=AE=E8=AE=A4?= =?UTF-8?q?=E5=8D=B8=E8=BD=BD=E7=95=8C=E9=9D=A2=E5=BA=94=E7=94=A8=E5=90=8D?= =?UTF-8?q?=E7=A7=B0=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/App.vue | 6 ++++-- src/modeuls/processInstall.ts | 13 ++++++------- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/App.vue b/src/App.vue index e7e0345b..3940fbc7 100644 --- a/src/App.vue +++ b/src/App.vue @@ -258,7 +258,8 @@ const toggleAllUpgrades = () => { const upgradeSingleApp = (app) => { if (!app?.pkgname) return; - handleUpgrade(app.pkgname, app.newVersion || ''); + const target = apps.value.find(a => a.Pkgname === app.pkgname); + handleUpgrade(target); }; const upgradeSelectedApps = () => { @@ -300,7 +301,8 @@ const refreshInstalledApps = async () => { }; const requestUninstall = (app) => { - uninstallTargetApp.value = app; + const target = apps.value.find(a => a.Pkgname === app.pkgname); + uninstallTargetApp.value = target; showUninstallModal.value = true; }; diff --git a/src/modeuls/processInstall.ts b/src/modeuls/processInstall.ts index 0c9c44ab..cfa40a45 100644 --- a/src/modeuls/processInstall.ts +++ b/src/modeuls/processInstall.ts @@ -9,7 +9,6 @@ import { downloads } from "../global/downloadStatus"; import { InstallLog, DownloadItem, DownloadResult } from '../global/typedefinition'; let downloadIdCounter = 0; -const fallbackIcon = 'data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"%3E%3Crect fill="%23f0f0f0" width="100" height="100"/%3E%3Ctext x="50" y="50" text-anchor="middle" dy=".3em" fill="%23999" font-size="14"%3EAPM%3C/text%3E%3C/svg%3E'; export const handleInstall = () => { if (!currentApp.value?.Pkgname) return; @@ -54,16 +53,16 @@ export const handleRetry = (download_: DownloadItem) => { window.ipcRenderer.send('queue-install', JSON.stringify(download_)); }; -export const handleUpgrade = (pkgname: string, newVersion = '') => { - if (!pkgname) return; +export const handleUpgrade = (pkg: any) => { + if (!pkg.pkgname) return; downloadIdCounter += 1; const download: DownloadItem = { id: downloadIdCounter, - name: pkgname, - pkgname: pkgname, - version: newVersion, - icon: fallbackIcon, + name: pkg.Name, + pkgname: pkg.Pkgname, + version: pkg.Version, + icon: `${APM_STORE_BASE_URL}/${APM_STORE_ARCHITECTURE}/${pkg._category}/${pkg.Pkgname}/icon.png`, status: 'queued', progress: 0, downloadedSize: 0,