Просмотр исходного кода

fix: keyboard nav when mouse hovered over list (#9500)

Filip 1 месяц назад
Родитель
Сommit
d19e76d96c
1 измененных файлов с 4 добавлено и 1 удалено
  1. 4 1
      packages/ui/src/components/list.tsx

+ 4 - 1
packages/ui/src/components/list.tsx

@@ -58,6 +58,8 @@ export function List<T>(props: ListProps<T> & { ref?: (ref: ListRef) => void })
 
   const searchProps = () => (typeof props.search === "object" ? props.search : {})
 
+  const moved = (event: MouseEvent) => event.movementX !== 0 || event.movementY !== 0
+
   createEffect(() => {
     if (props.filter !== undefined) {
       onInput(props.filter)
@@ -227,7 +229,8 @@ export function List<T>(props: ListProps<T> & { ref?: (ref: ListRef) => void })
                         data-selected={item === props.current}
                         onClick={() => handleSelect(item, i())}
                         type="button"
-                        onMouseMove={() => {
+                        onMouseMove={(event) => {
+                          if (!moved(event)) return
                           setStore("mouseActive", true)
                           setActive(props.key(item))
                         }}