primereact icon indicating copy to clipboard operation
primereact copied to clipboard

MultiSelect: onBlur event mismatch

Open dominikj111 opened this issue 3 years ago • 4 comments

Describe the bug

The component's event "onBlur" is fired on, not only when focus is lost.

Reproducer

https://codesandbox.io/s/objective-wind-13w45j?file=/src/App.jsx:448-459

PrimeReact version

7.2.1

React version

17.x

Language

ALL

Build / Runtime

Create React App (CRA)

Browser(s)

No response

Steps to reproduce the behavior

1a. click on the MultiSelect to show the list of options 2a. pick any option 3a. onBlur event will increase counter above

1b. click on the MultiSelect to show the list of options and then click on filter input or "select all" checkbox 2b. onBlur event will increase counter above

Expected behavior

The onBlur event should to be triggered only when then component as a whole will lost the focus.

So it shouldn't be triggered during options selection nor filtering, but only when user will click (on|to) some(thing|where) else.

dominikj111 avatar May 03 '22 09:05 dominikj111

I fixed this by not calling onBlur if the Overlay is showing. This seems to fix the issue and blur is only called now when you leave the field with the overlay closed.

melloware avatar May 03 '22 22:05 melloware