reload node config when reload window

This commit is contained in:
codetypes committed 2025-04-14 22:53:51 +08:00
1 parent 5fb3a650fb
commit 5fb19c5c08
7 files changed
+66 -17

No files matched your search

+7 -1
View File
@@ -351,7 +351,13 @@ export const Editor: FC<EditorProps> = ({ onChange, data: editor, ...props }) =>
}
});
}
}, [editorSize, workspace.editing, graph, t]);
}, [editorSize, workspace.editing, graph]);
useEffect(() => {
if (graph) {
graph.refresh();
}
}, [t]);
return (
<div
+3 -3
View File
@@ -481,7 +481,7 @@ const alertDeleteFile = (path: string) => {
if (path === workspace.editing?.path) {
workspace.close(path);
}
ipcRenderer.invoke("trashItem", path);
ipcRenderer.invoke("trash-item", path);
}}
>
{i18n.t("moveToTrash")}
@@ -526,7 +526,7 @@ const alertDeleteFolder = (path: string) => {
workspace.close(editor.path);
}
});
ipcRenderer.invoke("trashItem", path);
ipcRenderer.invoke("trash-item", path);
alert.destroy();
}}
>
@@ -812,7 +812,7 @@ export const Explorer: FC = () => {
break;
}
case "revealFile":
ipcRenderer.invoke("showItemInFolder", node.path);
ipcRenderer.invoke("show-item-in-folder", node.path);
break;
case "rename": {
if (b3util.isTreeFile(node.path)) {
+2 -2
View File
@@ -29,8 +29,8 @@ const getFocusedWebContents = () => {
return BrowserWindow.getFocusedWindow()?.webContents;
};
ipcRenderer.on("open-project", (_, dir) => {
useWorkspace.getState().init(dir);
ipcRenderer.on("open-project", (_, dir, files) => {
useWorkspace.getState().init(dir, files);
});
ipcRenderer.on("refresh-app-men", () => {
+1 -1
View File
@@ -50,7 +50,7 @@ const calcTextWith = (text: string, fontSize?: string) => {
const metrics = ctx.measureText(text);
width = metrics.width;
// width = width - (isMacos ? 1.6 : 0.8);
width *= isMacos ? 0.88 : 0.95;
width *= isMacos ? 0.88 : 0.98;
textWidthMap.set(key, width);
}
}
+2
View File
@@ -1,3 +1,4 @@
import { ipcRenderer } from "electron";
import { FC } from "react";
import { useSetting } from "../contexts/setting-context";
import { message, setGlobalHooks } from "../misc/hooks";
@@ -5,6 +6,7 @@ import { message, setGlobalHooks } from "../misc/hooks";
export const Setup: FC = () => {
if (!message) {
useSetting().load();
ipcRenderer.invoke("ready-to-show");
}
setGlobalHooks();
return <div></div>;
+18 -2
View File
@@ -113,7 +113,7 @@ export interface WorkspaceModel {
}
export type WorkspaceStore = {
init: (project: string) => void;
init: (project: string, files?: { path: string; active: boolean }[]) => void;
createProject: () => void;
openProject: (project?: string) => void;
batchProject: () => void;
@@ -225,7 +225,7 @@ export const useWorkspace = create<WorkspaceStore>((set, get) => ({
path: "",
settings: {},
init: (path) => {
init: (path, files) => {
const workspace = get();
if (!workspace.workdir) {
try {
@@ -236,6 +236,20 @@ export const useWorkspace = create<WorkspaceStore>((set, get) => ({
workspace.loadNodeDefs();
workspace.watch();
useSetting.getState().appendRecent(path);
if (files?.length) {
for (const entry of files) {
try {
const editor = new EditorStore(entry.path);
workspace.editors.push(editor);
if (entry.active) {
workspace.open(editor.path);
}
} catch (error) {
console.error(error);
message.error(`invalid file: ${path}`);
}
}
}
} catch (error) {
console.error(error);
if (!fs.existsSync(path)) {
@@ -505,6 +519,7 @@ export const useWorkspace = create<WorkspaceStore>((set, get) => ({
if (editor) {
workspace.onEditingTree(editor);
}
ipcRenderer.invoke("open-file", path);
},
close: (path) => {
@@ -523,6 +538,7 @@ export const useWorkspace = create<WorkspaceStore>((set, get) => ({
set({ editingNode: undefined, editingTree: undefined });
}
set({ editing: editting, editors: editors });
ipcRenderer.invoke("close-file", path);
},
find: (path) => {