1
0
Fork 0
mirror of https://github.com/plankanban/planka.git synced 2025-07-28 17:49:43 +02:00

feat: Open card once created with Ctrl+Enter (#373)

This commit is contained in:
RAR 2023-01-08 21:59:24 +01:00 committed by GitHub
parent 58eda7d555
commit 66aa2c36bb
6 changed files with 38 additions and 23 deletions

View file

@ -21,36 +21,46 @@ const CardAdd = React.memo(({ isOpened, onCreate, onClose }) => {
const nameField = useRef(null);
const submit = useCallback(() => {
const cleanData = {
...data,
name: data.name.trim(),
};
const submit = useCallback(
(autoOpen) => {
const cleanData = {
...data,
name: data.name.trim(),
};
if (!cleanData.name) {
nameField.current.ref.current.select();
return;
}
if (!cleanData.name) {
nameField.current.ref.current.select();
return;
}
onCreate(cleanData);
onCreate(cleanData, autoOpen);
setData(DEFAULT_DATA);
setData(DEFAULT_DATA);
focusNameField();
}, [onCreate, data, setData, focusNameField]);
if (autoOpen) {
onClose();
} else {
focusNameField();
}
},
[onCreate, onClose, data, setData, focusNameField],
);
const handleFieldKeyDown = useCallback(
(event) => {
switch (event.key) {
case 'Enter':
case 'Enter': {
event.preventDefault();
submit();
const autoOpen = event.ctrlKey;
submit(autoOpen);
break;
case 'Escape':
}
case 'Escape': {
onClose();
break;
}
default:
}
},