diff --git a/invokeai/frontend/web/src/features/regionalPrompts/components/ToolChooser.tsx b/invokeai/frontend/web/src/features/regionalPrompts/components/ToolChooser.tsx index 524a3fe0c0..2fc4a6c380 100644 --- a/invokeai/frontend/web/src/features/regionalPrompts/components/ToolChooser.tsx +++ b/invokeai/frontend/web/src/features/regionalPrompts/components/ToolChooser.tsx @@ -2,41 +2,46 @@ import { ButtonGroup, IconButton } from '@invoke-ai/ui-library'; import { useStore } from '@nanostores/react'; import { $tool } from 'features/regionalPrompts/store/regionalPromptsSlice'; import { useCallback } from 'react'; +import { useHotkeys } from 'react-hotkeys-hook'; import { useTranslation } from 'react-i18next'; import { PiArrowsOutCardinalBold, PiEraserBold, PiPaintBrushBold } from 'react-icons/pi'; export const ToolChooser: React.FC = () => { const { t } = useTranslation(); const tool = useStore($tool); + const setToolToBrush = useCallback(() => { $tool.set('brush'); }, []); + useHotkeys('b', setToolToBrush, []); const setToolToEraser = useCallback(() => { $tool.set('eraser'); }, []); + useHotkeys('e', setToolToEraser, []); const setToolToMove = useCallback(() => { $tool.set('move'); }, []); + useHotkeys('v', setToolToMove, []); return ( } variant={tool === 'brush' ? 'solid' : 'outline'} onClick={setToolToBrush} /> } variant={tool === 'eraser' ? 'solid' : 'outline'} onClick={setToolToEraser} /> } variant={tool === 'move' ? 'solid' : 'outline'} onClick={setToolToMove}