Skip to content

Commit 45cf5c3

Browse files
fix(docsearch): don't open modal on / when editing text
1 parent 78a0aa8 commit 45cf5c3

1 file changed

Lines changed: 13 additions & 1 deletion

File tree

src/useDocSearchKeyboardEvents.ts

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,18 @@ interface UseDocSearchKeyboardEventsProps {
88
searchButtonRef?: React.RefObject<HTMLButtonElement>;
99
}
1010

11+
function isEditingContent(event: KeyboardEvent): boolean {
12+
const element = event.target as HTMLElement;
13+
const tagName = element.tagName;
14+
15+
return (
16+
element.isContentEditable ||
17+
tagName === 'INPUT' ||
18+
tagName === 'SELECT' ||
19+
tagName === 'TEXTAREA'
20+
);
21+
}
22+
1123
export function useDocSearchKeyboardEvents({
1224
isOpen,
1325
onOpen,
@@ -23,7 +35,7 @@ export function useDocSearchKeyboardEvents({
2335
(event.key === 'k' && (event.metaKey || event.ctrlKey)) ||
2436
// The `/` shortcut opens but doesn't close the modal because it's
2537
// a character.
26-
(event.key === '/' && !isOpen)
38+
(!isEditingContent(event) && event.key === '/' && !isOpen)
2739
) {
2840
event.preventDefault();
2941

0 commit comments

Comments
 (0)