diff --git a/src/components/__tests__/BaseNode.test.tsx b/src/components/__tests__/BaseNode.test.tsx
index 7124f9aa..8c8ad46f 100644
--- a/src/components/__tests__/BaseNode.test.tsx
+++ b/src/components/__tests__/BaseNode.test.tsx
@@ -307,21 +307,5 @@ describe("BaseNode", () => {
expect(mockZoomNodeById).toHaveBeenCalledWith("test-node-1");
});
- it("should skip generic node zoom inside explicitly handled double-click regions", () => {
- render(
-
- Custom}
- />
-
- );
-
- fireEvent.click(screen.getByTestId("custom-double-click"), { detail: 2 });
- fireEvent.doubleClick(screen.getByTestId("custom-double-click"));
-
- expect(mockZoomNodeById).not.toHaveBeenCalled();
- });
-
});
});
diff --git a/src/components/__tests__/SmartTextNode.test.tsx b/src/components/__tests__/SmartTextNode.test.tsx
index 72002966..bee5701e 100644
--- a/src/components/__tests__/SmartTextNode.test.tsx
+++ b/src/components/__tests__/SmartTextNode.test.tsx
@@ -3,11 +3,9 @@ import { act } from "react";
import { ReactFlowProvider } from "@xyflow/react";
import { beforeEach, describe, expect, it, vi } from "vitest";
import { SmartTextNode } from "@/components/nodes/SmartTextNode";
-import { NodeDoubleClickZoomProvider } from "@/components/nodes/NodeDoubleClickZoomContext";
import { REQUEST_SMART_TEXT_EDIT_EVENT } from "@/utils/smartTextEditRequest";
const mockUpdateNodeData = vi.fn();
-const mockZoomNodeById = vi.fn();
vi.mock("@/store/workflowStore", () => ({
useWorkflowStore: vi.fn((selector) => {
@@ -34,9 +32,7 @@ vi.mock("@/hooks/useSelectedNodeCount", () => ({
function TestWrapper({ children }: { children: React.ReactNode }) {
return (
-
- {children}
-
+ {children}
);
}
@@ -91,7 +87,6 @@ describe("SmartTextNode", () => {
}));
});
- expect(mockZoomNodeById).not.toHaveBeenCalled();
const editor = await screen.findByRole("textbox", { name: /Write text content|编写文本内容|編寫文字內容|テキスト内容を書く/ });
await waitFor(() => expect(document.activeElement).toBe(editor));
diff --git a/src/components/nodes/BaseNode.tsx b/src/components/nodes/BaseNode.tsx
index f635dc80..e9594e68 100644
--- a/src/components/nodes/BaseNode.tsx
+++ b/src/components/nodes/BaseNode.tsx
@@ -23,7 +23,6 @@ import { getEffectiveNodeHeaderModel, getNodeHeaderTitle } from "./nodeHeaderTit
import { REQUEST_SMART_TEXT_EDIT_EVENT } from "@/utils/smartTextEditRequest";
const DEFAULT_NODE_DIMENSION = 300;
-const SKIP_NODE_DOUBLE_CLICK_ZOOM_SELECTOR = "[data-skip-node-double-click-zoom]";
interface BaseNodeProps {
id: string;
@@ -308,10 +307,6 @@ export function BaseNode({
return;
}
- if (target?.closest(SKIP_NODE_DOUBLE_CLICK_ZOOM_SELECTOR)) {
- return;
- }
-
const lastZoom = lastNodeDoubleClickZoomRef.current;
if (lastZoom && lastZoom.source !== source && now - lastZoom.at < 250) {
return;
@@ -321,8 +316,9 @@ export function BaseNode({
event.preventDefault();
event.stopPropagation();
+ nodeDoubleClickZoom?.zoomNodeById(id);
+
if (node?.type === "smartText") {
- nodeDoubleClickZoom?.zoomNodeById(id);
window.setTimeout(() => {
window.dispatchEvent(new CustomEvent(REQUEST_SMART_TEXT_EDIT_EVENT, {
detail: { nodeId: id },
@@ -330,8 +326,6 @@ export function BaseNode({
}, 80);
return;
}
-
- nodeDoubleClickZoom?.zoomNodeById(id);
};
const handleNodeClickCapture = (event: ReactMouseEvent) => {