summaryrefslogtreecommitdiff
path: root/frontend/src/components/DeckyState.tsx
diff options
context:
space:
mode:
authorNihaal Sangha <nihaal.git@gmail.com>2026-09-25 21:32:11 +0100
committerGitHub <noreply@github.com>2026-09-25 16:32:11 -0400
commit84288115c8db0abe40061df0612567ab4ac81967 (patch)
tree216215d9aa6f709e329cd5033ea1c9fedbbf9110 /frontend/src/components/DeckyState.tsx
parentb73a094ae148ca39de5a349432f45f1bf29c0131 (diff)
downloaddecky-loader-84288115c8db0abe40061df0612567ab4ac81967.tar.gz
decky-loader-84288115c8db0abe40061df0612567ab4ac81967.zip
Add sort plugins setting (#859)
Diffstat (limited to 'frontend/src/components/DeckyState.tsx')
-rw-r--r--frontend/src/components/DeckyState.tsx11
1 files changed, 11 insertions, 0 deletions
diff --git a/frontend/src/components/DeckyState.tsx b/frontend/src/components/DeckyState.tsx
index d1b558c1..db938a26 100644
--- a/frontend/src/components/DeckyState.tsx
+++ b/frontend/src/components/DeckyState.tsx
@@ -10,6 +10,7 @@ interface PublicDeckyState {
disabledPlugins: DisabledPlugin[];
installedPlugins: (Plugin | DisabledPlugin)[];
pluginOrder: string[];
+ sortPlugins: boolean;
frozenPlugins: string[];
hiddenPlugins: string[];
activePlugin: Plugin | null;
@@ -31,6 +32,7 @@ export class DeckyState {
private _disabledPlugins: DisabledPlugin[] = [];
private _installedPlugins: (Plugin | DisabledPlugin)[] = [];
private _pluginOrder: string[] = [];
+ private _sortPlugins: boolean = false;
private _frozenPlugins: string[] = [];
private _hiddenPlugins: string[] = [];
private _activePlugin: Plugin | null = null;
@@ -49,6 +51,7 @@ export class DeckyState {
disabledPlugins: this._disabledPlugins,
installedPlugins: this._installedPlugins,
pluginOrder: this._pluginOrder,
+ sortPlugins: this._sortPlugins,
frozenPlugins: this._frozenPlugins,
hiddenPlugins: this._hiddenPlugins,
activePlugin: this._activePlugin,
@@ -83,6 +86,11 @@ export class DeckyState {
this.notifyUpdate();
}
+ setSortPlugins(sortPlugins: boolean) {
+ this._sortPlugins = sortPlugins;
+ this.notifyUpdate();
+ }
+
setFrozenPlugins(frozenPlugins: string[]) {
this._frozenPlugins = frozenPlugins;
this.notifyUpdate();
@@ -139,6 +147,7 @@ interface DeckyStateContext extends PublicDeckyState {
setActivePlugin(name: string): void;
setPluginOrder(pluginOrder: string[]): void;
setDisabledPlugins(disabled: DisabledPlugin[]): void;
+ setSortPlugins(sortPlugins: boolean): void;
closeActivePlugin(): void;
}
@@ -178,6 +187,7 @@ export const DeckyStateContextProvider: FC<Props> = ({ children, deckyState }) =
const closeActivePlugin = deckyState.closeActivePlugin.bind(deckyState);
const setPluginOrder = deckyState.setPluginOrder.bind(deckyState);
const setDisabledPlugins = deckyState.setDisabledPlugins.bind(deckyState);
+ const setSortPlugins = deckyState.setSortPlugins.bind(deckyState);
return (
<DeckyStateContext.Provider
@@ -189,6 +199,7 @@ export const DeckyStateContextProvider: FC<Props> = ({ children, deckyState }) =
closeActivePlugin,
setPluginOrder,
setDisabledPlugins,
+ setSortPlugins,
}}
>
{children}