summaryrefslogtreecommitdiff
path: root/frontend/src/plugin-loader.tsx
diff options
context:
space:
mode:
authorJonas Dellinger <jonas@dellinger.dev>2023-05-29 18:29:36 +0200
committerGitHub <noreply@github.com>2023-05-29 09:29:36 -0700
commit010feddf36646fb9695106bd64eab41e47e962fe (patch)
tree4619a5c0fc1b2c9ca475ce644cce18464c77ca3e /frontend/src/plugin-loader.tsx
parent5114bb57112bf8bbad30768ffd26803d464b19a2 (diff)
downloaddecky-loader-010feddf36646fb9695106bd64eab41e47e962fe.tar.gz
decky-loader-010feddf36646fb9695106bd64eab41e47e962fe.zip
Add update all button to plugin list (#466)
Diffstat (limited to 'frontend/src/plugin-loader.tsx')
-rw-r--r--frontend/src/plugin-loader.tsx16
1 files changed, 15 insertions, 1 deletions
diff --git a/frontend/src/plugin-loader.tsx b/frontend/src/plugin-loader.tsx
index 15a0ca36..57483293 100644
--- a/frontend/src/plugin-loader.tsx
+++ b/frontend/src/plugin-loader.tsx
@@ -16,12 +16,13 @@ import { FaExclamationCircle, FaPlug } from 'react-icons/fa';
import { DeckyState, DeckyStateContextProvider, useDeckyState } from './components/DeckyState';
import LegacyPlugin from './components/LegacyPlugin';
import { deinitFilepickerPatches, initFilepickerPatches } from './components/modals/filepicker/patches';
+import MultiplePluginsInstallModal from './components/modals/MultiplePluginsInstallModal';
import PluginInstallModal from './components/modals/PluginInstallModal';
import NotificationBadge from './components/NotificationBadge';
import PluginView from './components/PluginView';
import WithSuspense from './components/WithSuspense';
import Logger from './logger';
-import { Plugin } from './plugin';
+import { InstallType, Plugin } from './plugin';
import RouterHook from './router-hook';
import { deinitSteamFixes, initSteamFixes } from './steamfixes';
import { checkForUpdates } from './store';
@@ -168,6 +169,19 @@ class PluginLoader extends Logger {
);
}
+ public addMultiplePluginsInstallPrompt(
+ request_id: string,
+ requests: { name: string; version: string; hash: string; install_type: InstallType }[],
+ ) {
+ showModal(
+ <MultiplePluginsInstallModal
+ requests={requests}
+ onOK={() => this.callServerMethod('confirm_plugin_install', { request_id })}
+ onCancel={() => this.callServerMethod('cancel_plugin_install', { request_id })}
+ />,
+ );
+ }
+
public uninstallPlugin(name: string, title: string, button_text: string, description: string) {
showModal(
<ConfirmModal