From 47bc910a8482d3d2cc882e28e862ca5ad61063b6 Mon Sep 17 00:00:00 2001 From: Jonas Dellinger Date: Wed, 7 Jun 2023 07:35:05 +0200 Subject: Add functionality to hide plugins from quick access menu (#468) --- frontend/src/components/PluginView.tsx | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'frontend/src/components/PluginView.tsx') diff --git a/frontend/src/components/PluginView.tsx b/frontend/src/components/PluginView.tsx index 3ecc2c86..b53035f7 100644 --- a/frontend/src/components/PluginView.tsx +++ b/frontend/src/components/PluginView.tsx @@ -8,6 +8,8 @@ import { staticClasses, } from 'decky-frontend-lib'; import { VFC, useEffect, useState } from 'react'; +import { useTranslation } from 'react-i18next'; +import { FaEyeSlash } from 'react-icons/fa'; import { Plugin } from '../plugin'; import { useDeckyState } from './DeckyState'; @@ -16,8 +18,10 @@ import { useQuickAccessVisible } from './QuickAccessVisibleState'; import TitleView from './TitleView'; const PluginView: VFC = () => { + const { hiddenPlugins } = useDeckyState(); const { plugins, updates, activePlugin, pluginOrder, setActivePlugin, closeActivePlugin } = useDeckyState(); const visible = useQuickAccessVisible(); + const { t } = useTranslation(); const [pluginList, setPluginList] = useState( plugins.sort((a, b) => pluginOrder.indexOf(a.name) - pluginOrder.indexOf(b.name)), @@ -48,6 +52,7 @@ const PluginView: VFC = () => { {pluginList .filter((p) => p.content) + .filter(({ name }) => !hiddenPlugins.includes(name)) .map(({ name, icon }) => ( setActivePlugin(name)}> @@ -59,6 +64,12 @@ const PluginView: VFC = () => { ))} + {hiddenPlugins.length > 0 && ( +
+ +
{t('PluginView.hidden', { count: hiddenPlugins.length })}
+
+ )}
-- cgit v1.2.3