From 6e3c05072cb507e2a376b7019836bea7bf663cb0 Mon Sep 17 00:00:00 2001 From: AAGaming Date: Sat, 15 Oct 2022 23:46:42 -0400 Subject: Developer menu (#211) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * add settings utils to use settings outside of components * initial implementation of developer menu * ✨ Add support for addScriptToEvaluateOnNewDocument * React DevTools support * increase chance of RDT successfully injecting * Rewrite toaster hook to not re-create the window * remove friends focus workaround because it's fixed * Expose various DFL utilities as DFL in dev mode * try to fix text field focuss * move focusable to outside field * add onTouchEnd and onClick to focusable * Update pnpm-lock.yaml Co-authored-by: FinalDoom <7464170-FinalDoom@users.noreply.gitlab.com> Co-authored-by: TrainDoctor --- frontend/src/components/settings/index.tsx | 50 +++++++++++++++++++----------- 1 file changed, 32 insertions(+), 18 deletions(-) (limited to 'frontend/src/components/settings/index.tsx') diff --git a/frontend/src/components/settings/index.tsx b/frontend/src/components/settings/index.tsx index eb3a8bbd..01f7d407 100644 --- a/frontend/src/components/settings/index.tsx +++ b/frontend/src/components/settings/index.tsx @@ -1,25 +1,39 @@ import { SidebarNavigation } from 'decky-frontend-lib'; +import { lazy } from 'react'; +import { useSetting } from '../../utils/hooks/useSetting'; +import WithSuspense from '../WithSuspense'; import GeneralSettings from './pages/general'; import PluginList from './pages/plugin_list'; +const DeveloperSettings = lazy(() => import('./pages/developer')); + export default function SettingsPage() { - return ( - , - route: '/decky/settings/general', - }, - { - title: 'Plugins', - content: , - route: '/decky/settings/plugins', - }, - ]} - /> - ); + const [isDeveloper, setIsDeveloper] = useSetting('developer.enabled', false); + + const pages = [ + { + title: 'General', + content: , + route: '/decky/settings/general', + }, + { + title: 'Plugins', + content: , + route: '/decky/settings/plugins', + }, + ]; + + if (isDeveloper) + pages.push({ + title: 'Developer', + content: ( + + + + ), + route: '/decky/settings/developer', + }); + + return ; } -- cgit v1.2.3