diff options
Diffstat (limited to 'frontend/src/index.ts')
| -rw-r--r-- | frontend/src/index.ts | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/frontend/src/index.ts b/frontend/src/index.ts index 7910c740..029a731c 100644 --- a/frontend/src/index.ts +++ b/frontend/src/index.ts @@ -6,10 +6,22 @@ interface Window { (async () => { // Wait for main webpack chunks to definitely be loaded - console.debug('[Decky:Boot] Waiting for main Webpack chunks...'); + console.time('[Decky:Boot] Waiting for main Webpack chunks...'); while (!window.webpackChunksteamui || window.webpackChunksteamui.length < 8) { await new Promise((r) => setTimeout(r, 10)); // Can't use DFL sleep here. } + console.timeEnd('[Decky:Boot] Waiting for main Webpack chunks...'); + + // Wait for the React root to be mounted + console.time('[Decky:Boot] Waiting for React root mount...'); + let root; + while ( + !(root = document.getElementById('root')) || + !(root as any)[Object.keys(root).find((k) => k.startsWith('__reactContainer$')) as string] + ) { + await new Promise((r) => setTimeout(r, 10)); // Can't use DFL sleep here. + } + console.timeEnd('[Decky:Boot] Waiting for React root mount...'); if (!window.SP_REACT) { console.debug('[Decky:Boot] Setting up Webpack & React globals...'); |
