Product system

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

Обеспечивает навигацию и действия в веб-приложении Gratheon с клавиатуры, чтобы пчеловоды могли перемещаться по пасекам, ульям, рамкам, устройствам, складским страницам, диалогам и инструментам рисова...

🎯 Назначение

Обеспечивает навигацию и действия в веб-приложении Gratheon с клавиатуры, чтобы пчеловоды могли перемещаться по пасекам, ульям, рамкам, устройствам, складским страницам, диалогам и инструментам рисования без постоянной работы только мышью или сенсорным экраном.

Поддержка клавиатуры также является функцией доступности: она сохраняет типовые сценарии для людей, использующих клавиатуру, переключатели, скринридеры и другие вспомогательные технологии.

🎭 Пользовательская история

  • Как пчеловод, работающий с ноутбука, клавиатуры планшета или вспомогательных технологий,
  • я хочу, чтобы основные экраны реагировали на понятные сочетания клавиш,
  • чтобы быстрее просматривать данные колоний, переключаться между записями, редактировать аннотации на рамках и подтверждать рутинные действия с меньшим числом кликов.

🚀 Ключевые преимущества

  • Обнаружение сочетаний: Shift + ? открывает в AI Advisor список горячих клавиш для текущего экрана и включает видимые подсказки.
  • Глобальная навигация: цифровые клавиши переключают основные разделы, Ctrl + M сворачивает или разворачивает левое меню.
  • Быстрый просмотр ульев: стрелки перемещают по спискам пасек, карточкам ульев, корпусам и рамкам без возврата в меню.
  • Доступные элементы управления: строки, кнопки, сортируемые заголовки и диалоги поддерживают работу с клавиатуры и скринридера.
  • Безопасные удаления: Delete и Backspace открывают подтверждение вместо немедленного удаления записей.
  • Единообразные диалоги: Enter подтверждает поддерживаемые диалоги, Escape закрывает отменяемые окна, popover и панель AI Advisor.
  • Учёт ввода текста: глобальные сочетания игнорируются, пока фокус в полях ввода, textarea, select или редактируемых элементах.

⌨️ Реализованные сочетания

Глобальные

Область Сочетание Поведение
Любой контекст без ввода текста Shift + ? Открывает в AI Advisor список горячих клавиш для текущей страницы, если функция не заблокирована. Также включает видимые подсказки на элементах.
Любой контекст без ввода текста Ctrl + M Переключает левое навигационное меню.
Любой контекст без ввода текста 1 Открывает Apiaries.
Любой контекст без ввода текста 2 Открывает Queens или Queen Detection на free tier.
Любой контекст без ввода текста 3 Открывает Insights, если доступно.
Любой контекст без ввода текста 4 Открывает Warehouse, если доступно.
Любой контекст без ввода текста 5 Открывает Devices, если доступно.
Любой контекст без ввода текста 6 Открывает настройку Alert, если доступно.
Любой контекст без ввода текста 7 Открывает Account.
Любой контекст без ввода текста 8 Открывает AI Advisor, если доступно.
Любой контекст без ввода текста 9 Открывает Billing.
Любой контекст без ввода текста 0 Открывает Account tokens.
Панель AI Advisor Esc Закрывает панель.
Подсказки сочетаний Esc или потеря фокуса окна Скрывает видимые подсказки.

Пасеки и список ульев

Область Сочетание Поведение
Табличный список пасек Arrow Up / Arrow Down Выбирает предыдущий или следующий улей; на границах списка переходит к соседним пасекам.
Карточный список пасек Arrow Up / Arrow Down / Arrow Left / Arrow Right Перемещается между карточками ульев, сохраняя ближайшую колонку при переходе между рядами.
Список пасек Первое нажатие стрелки Фокусирует текущий выбранный улей или первый доступный, если ничего не выбрано.
Сортируемые заголовки таблицы Enter или Space Переключает сортировку по выбранной колонке.
Обзор пасеки H Возвращает к основному списку пасек/ульев.

Детали улья и структура

Область Сочетание Поведение
Детали улья H Возвращает к основному списку пасек/ульев.
Детали улья A Возвращает на страницу пасеки текущего улья, если пасека доступна.
Детали улья E Открывает редактирование основной информации улья, если улей редактируемый и не свёрнут.
Вкладка структуры улья Arrow Up / Arrow Down Перемещается между корпусами текущего улья.
Вкладка структуры улья Arrow Left / Arrow Right Перемещается между рамками выбранного корпуса, сохраняя текущую сторону рамки, если возможно.
Вкладка структуры улья Backspace Открывает подтверждение удаления выбранного корпуса.
Вкладка структуры улья Delete / Del Открывает подтверждение удаления выбранной рамки.

Инструменты рисования на стороне рамки

Область Сочетание Поведение
Холст стороны рамки C Переключает на кисть ячеек.
Холст стороны рамки F Переключает на свободное рисование.
Холст стороны рамки X Переключает на ластик ячеек.
Холст стороны рамки N Выбирает ячейки с нектаром.
Холст стороны рамки Y Выбирает ячейки с мёдом.
Холст стороны рамки P Выбирает ячейки с пыльцой.
Холст стороны рамки G Выбирает яйца.
Холст стороны рамки B Выбирает расплод.
Холст стороны рамки K Выбирает запечатанный расплод.
Холст стороны рамки D Выбирает трутневой расплод.
Холст стороны рамки U Выбирает пустые ячейки.
Холст стороны рамки + или = Увеличивает размер кисти.
Холст стороны рамки - Уменьшает размер кисти.
Холст стороны рамки Ctrl + Z / ⌘ + Z Отменяет последний штрих.

Склад и устройства

Область Сочетание Поведение
Страница Devices Arrow Up / Arrow Down Выбирает предыдущее или следующее устройство.
Страница Devices Delete / Del Открывает подтверждение удаления выбранного устройства.
Склад hive systems Arrow Up / Arrow Down Выбирает предыдущую или следующую hive system.
Склад hive systems Enter Открывает выбранную hive system.
Склад hive systems Delete / Del Открывает архивирование/деактивацию выбранной нестандартной hive system.
Диалог удаления матки на складе Enter Подтверждает удаление выбранной матки.

Диалоги и popover

Область Сочетание Поведение
Диалоги подтверждения Enter Подтверждает поддерживаемые действия удаления/архивирования/удаления элемента.
Диалоги подтверждения и модальные окна Escape Отменяет поддерживаемые диалоги.
Универсальное модальное подтверждение Tab Удерживает фокус между кнопками подтверждения и отмены.
Всплывающие меню Escape Закрывает открытое меню.

🔧 Технический обзор

Поддержка клавиатуры реализована через контекстные обработчики keydown в веб-приложении. Глобальные сочетания меню живут в общем компоненте меню, а сочетания списков, деталей, склада, устройств, диалогов и рисования обрабатываются соответствующими экранами и компонентами.

Обработчики намеренно игнорируют поля ввода (input, textarea, select и редактируемый контент), а многие сочетания на уровне представления также игнорируют комбинации с модификаторами или открывают модальные цели. Компоненты затем обновляют состояние выбора, фокусируют ссылку или строку, прокручивают выбранный элемент в видимую область, переходят к следующей сущности по текущим идентификаторам пасеки/улья/корпуса/рамки/устройства или открывают диалог подтверждения.

Видимые подсказки рендерит общий компонент KeyboardHints. Подсказки можно показать глобально после Shift + ?, а кнопки панели рисования также показывают локальные подсказки для кисти и типов ячеек.

✅ Текущее покрытие

Реализовано:

  • глобальное обнаружение сочетаний и навигация по разделам;
  • Tab-навигация по кнопкам, ссылкам, полям форм, фокусируемым строкам, сортируемым заголовкам и диалогам;
  • навигация по списку пасек и карточкам ульев;
  • навигация в деталях улья, сочетание редактирования, навигация по структуре и безопасное удаление;
  • сочетания рисования и аннотации ячеек на стороне рамки;
  • клавиатурные сценарии на страницах устройств и склада hive systems;
  • поведение Escape/Enter для подтверждений, модальных окон, popover и панели AI Advisor там, где реализовано.

🚫 Текущие ограничения

  • Shift + ? открывает панель/вид горячих клавиш в AI Advisor, а не отдельное модальное окно.
  • Сочетания нельзя настроить пользователю.
  • Полноценной command palette пока нет.
  • Горячие клавиши не гарантированы для каждой страницы приложения.
  • На странице warehouse queens сочетания описаны в AI Advisor, но на уровне списка стрелки/Delete пока не реализованы; в основном работает Enter в диалоге удаления.
  • Полное автоматизированное покрытие доступности с клавиатуры для всего приложения здесь пока не задокументировано как завершённое.

🔗 Связанные функции

💬 Заметки

Горячие клавиши реализованы консервативно: они не срабатывают в полях ввода, в большинстве навигационных сценариев не используют неожиданные модификаторы и направляют разрушительные операции через диалоги подтверждения, чтобы снизить риск случайной потери данных.


Последнее обновление: 24 июня 2026

Product map

Move from software to automatic data collection