Перейти к основному содержимому

keypress-on-todo

Описание

Срабатывает, когда задача находится в фокусе во время использования клавиатурной навигации

Использование

"keypress-on-todo": ({
code: string,
event: KeyboardEvent
}) => void;

Параметры

Коллбэк события keypress-on-todo может принимать объект со следующими параметрами:

  • code - (обязательный) код нажатой клавиши или сочетания клавиш в нижнем регистре. Полные списки горячих клавиш и их кодов приведены ниже
  • event - (обязательный) нативный объект события
информация

Для обработки внутренних событий используйте методы Event Bus

Пример

const { ToDo, Toolbar } = todo;
const {tasks, projects, users} = getData();

const list = new ToDo("#root", {
tasks,
projects,
users
});

const toolbar = new Toolbar("#toolbar", {
api: list.api,
});

// подписка на событие "keypress-on-todo"
list.api.on("keypress-on-todo", ({code, event}) => {
console.log("The", code, "key is pressed");
});

Горячие клавиши

Обычный режим

Следующие сочетания клавиш работают, когда встроенный редактор закрыт.

Горячая клавишаКод клавишиОписание
EscapeescapeЗакрывает меню, если оно открыто для задачи в момент нажатия клавиши. Повторное нажатие закроет редактор, сбросит фильтрацию и свернёт результаты поиска на панели инструментов
совет

Коды клавиш, описанные ниже, недоступны, если фокус установлен на строке поиска панели инструментов.

Горячая клавишаКод клавишиОписание
EnterenterСоздаёт новую задачу на том же уровне, что и выбранная, перемещает выделение на созданную задачу и открывает редактор
ArrowUparrowupПеремещает выделение вверх к предыдущей задаче
ArrowDownarrowdownПеремещает выделение вниз к следующей задаче
Ctrl(Cmd)+Enterctrl+enterОткрывает редактор выбранной задачи
Ctrl(Cmd)+Click /
Ctrl(Cmd)+Shift+Click
добавлено в v1.1
ctrl /
ctrl+shift
Выбирает несколько задач вместе со всеми дочерними.
Если задача уже выбрана — снимает выделение, при этом:
- Если у задачи есть родители, которые тоже выбраны — снимает выделение с задачи вместе с её родителями.
- Если у задачи есть дочерние, которые тоже выбраны — снимает выделение только с самой задачи.
Shift+Click
добавлено в v1.1
shiftВыбирает диапазон задач
Shift+ArrowUp
добавлено в v1.1
shift+arrowupВыбирает задачу выше текущей.
Если задача выше уже выбрана — снимает с неё выделение
Shift+ArrowDown
добавлено в v1.1
shift+arrowdownВыбирает задачу (и все её дочерние) ниже текущей.
Если задача ниже уже выбрана — снимает с неё выделение
Ctrl+ArrowUpctrl+arrowupПеремещает выбранную задачу вверх в пределах того же уровня
Ctrl+ArrowDownctrl+arrowdownПеремещает выбранную задачу вниз в пределах того же уровня
SpacespaceОтмечает задачу как выполненную или невыполненную в зависимости от её текущего состояния
Delete /
Backspace
delete /
backspace
Удаляет выбранную задачу по следующей логике:
- после удаления дочерней задачи перемещает выделение вниз/вверх до родительской задачи
- после удаления родительской задачи перемещает выделение вниз к следующей родительской задаче, если она есть; иначе перемещает выделение вверх к предыдущей родительской задаче
ArrowRightarrowrightРазворачивает свёрнутую родительскую задачу
ArrowLeftarrowleftСворачивает развёрнутую родительскую задачу. Если задача уже свёрнута или не имеет дочерних задач, перемещает выделение к родительской задаче
TabtabПонижает уровень вложенности задачи на один
Shift+Tabshift+tabПовышает уровень вложенности задачи на один
Ctrl(Cmd)+Dctrl+dДублирует выбранную задачу на том же уровне
Ctrl(Cmd)+Cctrl+cКопирует выбранную задачу в буфер обмена, включая все дочерние задачи
Ctrl(Cmd)+Vctrl+vВставляет скопированную задачу на тот же уровень, что и текущая выбранная задача. Скопированную задачу можно вставить на любой уровень, структура скопированной задачи сохраняется
Ctrl(Cmd)+Zctrl+zОтменяет последнее действие (undo)
Ctrl(Cmd)+Y /
Ctrl(Cmd)+Shift+Z
ctrl+y /
ctrl+shift+z
Повторяет отменённое действие (redo)
Alt+1 /
Alt+2 /
Alt+3
alt+1 /
alt+2 /
alt+3
Устанавливает приоритет выбранной задачи (соответствует горячей клавише элемента priorities)
Alt+0alt+0Сбрасывает приоритет выбранной задачи

Режим редактирования

Следующие сочетания клавиш работают, когда встроенный редактор открыт.

Горячая клавишаКод клавишиОписание
EscapeescapeЗакрывает редактор без сохранения изменений
EnterenterЗакрывает редактор и сохраняет изменения
Shift+Entershift+enterСоздаёт новый абзац