From 8db3bead13441a5882d8689dfc6a9f09c82375d9 Mon Sep 17 00:00:00 2001 From: Maze Winther Date: Wed, 25 Mar 2026 16:47:22 +0100 Subject: feat: masks, properties refactor, shaders, storage migrations, and more --- .../src/components/providers/editor-provider.tsx | 27 +++++++++------------- 1 file changed, 11 insertions(+), 16 deletions(-) (limited to 'apps/web/src/components/providers') diff --git a/apps/web/src/components/providers/editor-provider.tsx b/apps/web/src/components/providers/editor-provider.tsx index 746cfd16..35e5dfba 100644 --- a/apps/web/src/components/providers/editor-provider.tsx +++ b/apps/web/src/components/providers/editor-provider.tsx @@ -3,13 +3,12 @@ import { useEffect, useState } from "react"; import { useRouter } from "next/navigation"; import { Loader2 } from "lucide-react"; +import { EditorCore } from "@/core"; import { useEditor } from "@/hooks/use-editor"; -import { - useKeybindingsListener, - useKeybindingDisabler, -} from "@/hooks/use-keybindings"; +import { useKeybindingsListener } from "@/hooks/use-keybindings"; +import { useKeybindingsStore } from "@/stores/keybindings-store"; import { useEditorActions } from "@/hooks/actions/use-editor-actions"; -import { prefetchFontAtlas } from "@/lib/fonts/google-fonts"; +import { loadFontAtlas } from "@/lib/fonts/google-fonts"; interface EditorProviderProps { projectId: string; @@ -17,23 +16,19 @@ interface EditorProviderProps { } export function EditorProvider({ projectId, children }: EditorProviderProps) { - const editor = useEditor(); + const activeProject = useEditor((e) => e.project.getActiveOrNull()); const router = useRouter(); const [isLoading, setIsLoading] = useState(true); const [error, setError] = useState(null); - const { disableKeybindings, enableKeybindings } = useKeybindingDisabler(); - const activeProject = editor.project.getActiveOrNull(); + const { setLoadingProject } = useKeybindingsStore(); useEffect(() => { - if (isLoading) { - disableKeybindings(); - } else { - enableKeybindings(); - } - }, [isLoading, disableKeybindings, enableKeybindings]); + setLoadingProject(isLoading); + }, [isLoading, setLoadingProject]); useEffect(() => { let cancelled = false; + const editor = EditorCore.getInstance(); const loadProject = async () => { try { @@ -43,7 +38,7 @@ export function EditorProvider({ projectId, children }: EditorProviderProps) { if (cancelled) return; setIsLoading(false); - prefetchFontAtlas(); + loadFontAtlas(); } catch (err) { if (cancelled) return; @@ -76,7 +71,7 @@ export function EditorProvider({ projectId, children }: EditorProviderProps) { return () => { cancelled = true; }; - }, [projectId, editor, router]); + }, [projectId, router]); if (error) { return ( -- cgit v1.3.1