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/index.tsx | 28 +++------------------------- 1 file changed, 3 insertions(+), 25 deletions(-) (limited to 'frontend/src/index.tsx') diff --git a/frontend/src/index.tsx b/frontend/src/index.tsx index 08b37d15..03010e13 100644 --- a/frontend/src/index.tsx +++ b/frontend/src/index.tsx @@ -1,6 +1,3 @@ -import { ButtonItem, CommonUIModule, webpackCache } from 'decky-frontend-lib'; -import { forwardRef } from 'react'; - import PluginLoader from './plugin-loader'; import { DeckyUpdater } from './updater'; @@ -11,32 +8,12 @@ declare global { importDeckyPlugin: Function; syncDeckyPlugins: Function; deckyHasLoaded: boolean; + deckyHasConnectedRDT?: boolean; deckyAuthToken: string; - webpackJsonp: any; + DFL?: any; } } -// HACK to fix plugins using webpack v4 push - -const v4Cache = {}; -for (let m of Object.keys(webpackCache)) { - v4Cache[m] = { exports: webpackCache[m] }; -} - -if (!window.webpackJsonp || window.webpackJsonp.deckyShimmed) { - window.webpackJsonp = { - deckyShimmed: true, - push: (mod: any): any => { - if (mod[1].get_require) return { c: v4Cache }; - }, - }; - CommonUIModule.__deckyButtonItemShim = forwardRef((props: any, ref: any) => { - // tricks the old filter into working - const dummy = `childrenContainerWidth:"min"`; - return ; - }); -} - (async () => { window.deckyAuthToken = await fetch('http://127.0.0.1:1337/auth/token').then((r) => r.text()); @@ -44,6 +21,7 @@ if (!window.webpackJsonp || window.webpackJsonp.deckyShimmed) { window.DeckyPluginLoader?.deinit(); window.DeckyPluginLoader = new PluginLoader(); + window.DeckyPluginLoader.init(); window.importDeckyPlugin = function (name: string, version: string) { window.DeckyPluginLoader?.importPlugin(name, version); }; -- cgit v1.2.3