mirror of
https://github.com/excalidraw/excalidraw.git
synced 2025-05-03 10:00:07 -04:00
Merge 95cce9a553
into 2a0d15799c
This commit is contained in:
commit
a828ffd52d
1 changed files with 17 additions and 0 deletions
|
@ -147,6 +147,22 @@ export const SearchMenu = () => {
|
|||
}
|
||||
};
|
||||
|
||||
const fixInputCursorPosition = () => {
|
||||
requestAnimationFrame(() => {
|
||||
const searchInput = searchInputRef.current;
|
||||
const isFocus = document.activeElement === searchInput;
|
||||
// if input is not focus and input instance is not exist return
|
||||
if (!searchInput || !isFocus) {
|
||||
return;
|
||||
}
|
||||
const cursorPosition = searchInput.selectionStart;
|
||||
const textLength = searchInput.value.length!;
|
||||
if (cursorPosition !== textLength) {
|
||||
searchInput.setSelectionRange(textLength, textLength);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
useEffect(() => {
|
||||
setAppState((state) => {
|
||||
return {
|
||||
|
@ -292,6 +308,7 @@ export const SearchMenu = () => {
|
|||
if (event.key === KEYS.ARROW_UP) {
|
||||
event.stopPropagation();
|
||||
stableState.goToPreviousItem();
|
||||
fixInputCursorPosition();
|
||||
} else if (event.key === KEYS.ARROW_DOWN) {
|
||||
event.stopPropagation();
|
||||
stableState.goToNextItem();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue