diff --git a/apps/desktop/src/renderer/src/components/SettingsModal.tsx b/apps/desktop/src/renderer/src/components/SettingsModal.tsx index d9a4404..db5eda0 100644 --- a/apps/desktop/src/renderer/src/components/SettingsModal.tsx +++ b/apps/desktop/src/renderer/src/components/SettingsModal.tsx @@ -10,6 +10,7 @@ import { LuLogOut, LuPlus, LuPuzzle, + LuRefreshCw, LuSearch, LuSettings2, LuSparkles, @@ -652,6 +653,8 @@ function PluginsPanel({ }): ReactNode { const plugins = usePluginList() const [scope, setScope] = useState<'user' | 'project' | 'builtin'>('user') + /** 全局插件重载进行中(重扫目录 + 重建运行时;期间刷新按钮禁用旋转) */ + const [reloading, setReloading] = useState(false) const [dirs, setDirs] = useState<{ user: string[]; project: string[]; global: string[] }>({ user: [], project: [], @@ -768,24 +771,6 @@ function PluginsPanel({ onClick={(e) => e.stopPropagation()} onKeyDown={(e) => e.stopPropagation()} > -
- {p.enabled ? '已启动' : '已关闭'} - -
{p.hasSettings && p.enabled && (
入口 @@ -806,6 +791,45 @@ function PluginsPanel({
)} +
+ {p.enabled ? '启动' : '关闭'} + +
+ {p.source === 'external' && ( +
+ 重载 + +
+ )} ) diff --git a/apps/desktop/src/renderer/src/components/SidebarNav.tsx b/apps/desktop/src/renderer/src/components/SidebarNav.tsx index 8493df6..db91e53 100644 --- a/apps/desktop/src/renderer/src/components/SidebarNav.tsx +++ b/apps/desktop/src/renderer/src/components/SidebarNav.tsx @@ -444,7 +444,7 @@ export function SidebarNav({ onClick={() => onOpenPlugin(plugin.manifest.id)} className={`${navRowClass} ${active ? 'bg-hover-2 text-ink' : ''}`} > - +