@@ -23,7 +23,7 @@ import { useHotkeyData } from 'features/system/components/HotkeysModal/useHotkey
2323import { StickyScrollable } from 'features/system/components/StickyScrollable' ;
2424import { allHotkeysReset } from 'features/system/store/hotkeysSlice' ;
2525import type { ChangeEventHandler , ReactElement } from 'react' ;
26- import { cloneElement , Fragment , memo , useCallback , useMemo , useRef , useState } from 'react' ;
26+ import { cloneElement , Fragment , memo , useCallback , useMemo , useState } from 'react' ;
2727import { useTranslation } from 'react-i18next' ;
2828import { PiXBold } from 'react-icons/pi' ;
2929
@@ -45,7 +45,6 @@ const HotkeysModal = ({ children }: HotkeysModalProps) => {
4545 const dispatch = useAppDispatch ( ) ;
4646 const [ hotkeyFilter , setHotkeyFilter ] = useState ( '' ) ;
4747 const [ isEditMode , setIsEditMode ] = useState ( false ) ;
48- const inputRef = useRef < HTMLInputElement | null > ( null ) ;
4948 const clearHotkeyFilter = useCallback ( ( ) => setHotkeyFilter ( '' ) , [ ] ) ;
5049 const onChange = useCallback < ChangeEventHandler < HTMLInputElement > > ( ( e ) => setHotkeyFilter ( e . target . value ) , [ ] ) ;
5150 const toggleEditMode = useCallback ( ( ) => setIsEditMode ( ( prev ) => ! prev ) , [ ] ) ;
@@ -91,14 +90,20 @@ const HotkeysModal = ({ children }: HotkeysModalProps) => {
9190 { cloneElement ( children , {
9291 onClick : onOpen ,
9392 } ) }
94- < Modal isOpen = { isOpen } onClose = { onClose } isCentered size = "2xl" useInert = { false } initialFocusRef = { inputRef } >
93+ < Modal isOpen = { isOpen } onClose = { onClose } isCentered size = "2xl" useInert = { false } >
9594 < ModalOverlay />
9695 < ModalContent maxH = "80vh" h = "80vh" >
9796 < ModalHeader > { t ( 'hotkeys.hotkeys' ) } </ ModalHeader >
9897 < ModalCloseButton />
9998 < ModalBody display = "flex" flexDir = "column" gap = { 4 } >
10099 < InputGroup >
101- < Input ref = { inputRef } placeholder = { t ( 'hotkeys.searchHotkeys' ) } value = { hotkeyFilter } onChange = { onChange } />
100+ < Input
101+ autoFocus
102+ placeholder = { t ( 'hotkeys.searchHotkeys' ) }
103+ value = { hotkeyFilter }
104+ onChange = { onChange }
105+ tabIndex = { 1 }
106+ />
102107 { hotkeyFilter . length && (
103108 < InputRightElement h = "full" pe = { 2 } >
104109 < IconButton
0 commit comments