Fixed undo of nodes when on input
This commit is contained in:
parent
7b1b028364
commit
a63dcfa109
3 changed files with 20 additions and 12 deletions
|
|
@ -152,7 +152,7 @@ export default function ParameterComponent({
|
||||||
return (
|
return (
|
||||||
<div
|
<div
|
||||||
ref={ref}
|
ref={ref}
|
||||||
className="nopan nodrag mt-1 flex w-full flex-wrap items-center justify-between bg-muted px-5 py-2"
|
className="nopan nodrag noundo mt-1 flex w-full flex-wrap items-center justify-between bg-muted px-5 py-2"
|
||||||
>
|
>
|
||||||
<>
|
<>
|
||||||
<div
|
<div
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,7 @@ import {
|
||||||
useState,
|
useState,
|
||||||
} from "react";
|
} from "react";
|
||||||
import { Edge, Node, useReactFlow } from "reactflow";
|
import { Edge, Node, useReactFlow } from "reactflow";
|
||||||
|
import { isWrappedWithClass } from "../utils/utils";
|
||||||
import { TabsContext } from "./tabsContext";
|
import { TabsContext } from "./tabsContext";
|
||||||
|
|
||||||
type undoRedoContextType = {
|
type undoRedoContextType = {
|
||||||
|
|
@ -148,17 +149,21 @@ export function UndoRedoProvider({ children }) {
|
||||||
}
|
}
|
||||||
|
|
||||||
const keyDownHandler = (event: KeyboardEvent) => {
|
const keyDownHandler = (event: KeyboardEvent) => {
|
||||||
if (
|
if (!isWrappedWithClass(event, "noundo")) {
|
||||||
event.key === "z" &&
|
if (
|
||||||
(event.ctrlKey || event.metaKey) &&
|
event.key === "z" &&
|
||||||
event.shiftKey
|
(event.ctrlKey || event.metaKey) &&
|
||||||
) {
|
event.shiftKey
|
||||||
redo();
|
) {
|
||||||
} else if (event.key === "y" && (event.ctrlKey || event.metaKey)) {
|
event.preventDefault();
|
||||||
event.preventDefault(); // prevent the default action
|
redo();
|
||||||
redo();
|
} else if (event.key === "y" && (event.ctrlKey || event.metaKey)) {
|
||||||
} else if (event.key === "z" && (event.ctrlKey || event.metaKey)) {
|
event.preventDefault(); // prevent the default action
|
||||||
undo();
|
redo();
|
||||||
|
} else if (event.key === "z" && (event.ctrlKey || event.metaKey)) {
|
||||||
|
event.preventDefault();
|
||||||
|
undo();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -85,6 +85,9 @@ export function checkUpperWords(str: string) {
|
||||||
return words.join(" ");
|
return words.join(" ");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export const isWrappedWithClass = (event: any, className: string | undefined) =>
|
||||||
|
event.target.closest(`.${className}`);
|
||||||
|
|
||||||
export function groupByFamily(data, baseClasses, left, type) {
|
export function groupByFamily(data, baseClasses, left, type) {
|
||||||
let parentOutput: string;
|
let parentOutput: string;
|
||||||
let arrOfParent: string[] = [];
|
let arrOfParent: string[] = [];
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue