primefaces / primefaces/primereact
MultiSelect: Filter text selection
Nobody has claimed this yet.
- Dominant language
- CSS
- Stars
- 8.3k
- Forks
- 1.2k
- PR merge metrics
- No merged PRs in 30d
Description
Describe the bug
When using MultiSelect with filtering enabled, if I type in the filter input, select the typed text with the mouse, drag outside the panel, and release, the overlay closes.
This makes normal text-selection behavior in the filter input feel broken, because the panel is dismissed even though the interaction started inside the filter field.
Reproducer
I can reproduce this consistently with a standard MultiSelect filter input.
System Information
System:
OS: macOS 26.3.1
CPU: (8) arm64 Apple M1 Pro
Memory: 76.47 MB / 16.00 GB
Shell: 5.9 - /bin/zsh
Binaries:
Node: 24.14.0 - /Users/lennert.van-sever/.nvm/versions/node/v24.14.0/bin/node
Yarn: 1.22.22 - /usr/local/bin/yarn
npm: 11.9.0 - /Users/lennert.van-sever/.nvm/versions/node/v24.14.0/bin/npm
pnpm: 10.2.0 - /usr/local/bin/pnpm
Browsers:
Chrome: 146.0.7680.164
Edge: 146.0.3856.72
Firefox: 148.0.2
Safari: 26.3.1
Steps to reproduce the behavior
- Open a
MultiSelectpanel withfilterenabled. - Type some text into the filter input.
- Select the typed text with the mouse.
- Keep holding the mouse button, move the cursor outside the overlay/panel.
- Release the mouse button outside.
Expected behavior
The overlay should remain open.
Releasing the mouse outside after starting a text-selection interaction inside the filter input should not be treated as an outside dismiss.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the behavior in the MultiSelect component with filtering enabled, then trace how the filter input and overlay handle mouse selection and outside dismissal. Done means selecting text in the filter input and releasing outside leaves the overlay open; verify the reported reproduction steps after the change.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- react
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 58/100