feat(canvas): set default tool to Move and refine canvas navigation interactions

This commit is contained in:
HouYunFei
2026-08-18 14:37:25 +08:00
parent e44c0c4b3e
commit 693639838c
4 changed files with 4 additions and 3 deletions
@@ -113,7 +113,7 @@ export function InfiniteCanvas({ containerRef, viewport, tool, backgroundMode =
const isBackgroundClick = !target?.closest("[data-node-id],[data-connection-id]");
const temporaryTool = event.ctrlKey || isSpacePressed;
const activeTool = temporaryTool ? (tool === "select" ? "pan" : "select") : tool;
const shouldPan = event.button === 1 || (event.button === 0 && activeTool === "pan");
const shouldPan = event.button === 1 || (event.button === 0 && activeTool === "pan" && isBackgroundClick);
if (shouldPan) {
event.preventDefault();
+1 -1
View File
@@ -199,7 +199,7 @@ function InfiniteCanvasPage() {
const [chatSessions, setChatSessions] = useState<CanvasAssistantSession[]>([]);
const [activeChatId, setActiveChatId] = useState<string | null>(null);
const [viewport, setViewport] = useState<ViewportTransform>({ x: 0, y: 0, k: 1 });
const [canvasTool, setCanvasTool] = useState<"select" | "pan">("select");
const [canvasTool, setCanvasTool] = useState<"select" | "pan">("pan");
const [size, setSize] = useState({ width: 1200, height: 720 });
const [selectedNodeIds, setSelectedNodeIds] = useState<Set<string>>(new Set());
const [selectedConnectionId, setSelectedConnectionId] = useState<string | null>(null);