🐛 修复启动应用
This commit is contained in:
@@ -16,7 +16,7 @@ import { useCollectionStore } from '@/features/collection/store';
|
||||
import { useDownloadsStore } from '@/features/downloads/store';
|
||||
import { Progress } from '@/components/ui/progress';
|
||||
import { X } from 'lucide-solid';
|
||||
import { checkIsInstalled, launchApp } from '@/lib/api/deb';
|
||||
import { checkIsInstalled, checkLaunchApp, launchApp } from '@/lib/api/deb';
|
||||
|
||||
const AppDetail: Component = () => {
|
||||
const params = useParams();
|
||||
@@ -124,10 +124,16 @@ const AppDetail: Component = () => {
|
||||
);
|
||||
|
||||
if (downloadTask?.status === 'installed' || isInstalled()) {
|
||||
const [appCanLaunch, setAppCanLaunch] = createSignal(false);
|
||||
checkLaunchApp(params.pkgname).then(canLaunch => {
|
||||
setAppCanLaunch(canLaunch);
|
||||
});
|
||||
|
||||
return (
|
||||
<Button
|
||||
size="lg"
|
||||
class='w-full'
|
||||
disabled={!appCanLaunch()}
|
||||
onClick={() => {
|
||||
launchApp(params.pkgname)
|
||||
showToast({ description: '正在启动应用...' });
|
||||
|
||||
@@ -4,6 +4,10 @@ export async function checkIsInstalled(pkgname: string): Promise<boolean> {
|
||||
return await invoke('check_is_installed', { pkgname });
|
||||
}
|
||||
|
||||
export async function launchApp(pkgname: string) {
|
||||
await invoke('launch_app', { pkgname });
|
||||
export async function checkLaunchApp(pkgname: string): Promise<boolean> {
|
||||
return await invoke('check_launch_app', { pkgname });
|
||||
}
|
||||
|
||||
export async function launchLaunchApp(pkgname: string) {
|
||||
await invoke('launch_launch_app', { pkgname });
|
||||
}
|
||||
Reference in New Issue
Block a user