Click & hold sometimes get interpreted as multiple clicks
- Dominant language
- C++
- Stars
- 10.4k
- Forks
- 1.3k
- Avg merge
- 2d 13h
- Merged PRs (30d)
- 7
Description
### System Information
TUXEDO OS 24.04.4 LTS on Wayland - X11 display driver, Multi-window, 2 monitors - OpenGL 3 (Compatibility) - Mesa Intel(R) Iris(R) Xe Graphics (RPL-P) - 13th Gen Intel(R) Core(TM) i7-13700H (20 threads) - 62.52 GiB memory - PulseAudio (44100 Hz, Stereo/mono)
### LMMS Version(s)
1.3.0.alpha.1.1033+dff0fdb, but many versions before that too
### Most Recent Working Version
_No response_
### Bug Summary
This bug happens randomly, not every time.
Essentially clicking and holding the left mouse buttons sometimes registers as multiple clicks.
This causes unexpected and annoying behavior like :
- Clicking and holding on a knob to modify its value with the mouse drag sometimes opens the value modification popup as if it was double clicked
- Clicking and holding on a knob might trigger unwanted neighboring controls
- Clicking and dragging notes on the piano roll might drop them halfway, and a new note or notes get created while still dragging.
Here is an example video, where the envelope gets triggered while rotating a knob, and another example where the dragging the knob ends up opening its value modification pop up while this was not intended.
Note that in the video, the problem happens only on the first and last clicks. Knobs that I was modifying in between worked fine. Hence why I mentioned that this bug is random.
https://github.com/user-attachments/assets/f0350d70-0d5f-4896-a814-8717698d989d
### Expected Behaviour
Clicking and holding should act usual, not issue random clicks.
### Steps To Reproduce
Do any actions that require clicking and dragging : change knob values up & down, drag drop notes in the piano roll ...
### Logs
Click to expand
### Screenshots / Minimum Reproducible Project
This happens even on empty projects
### Please search the issue tracker for existing bug reports before submitting your own.
- [x] I have searched all existing issues and confirmed that this is not a duplicate.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reproducing the issue with knob dragging and piano-roll note dragging in an empty project, using the attached video as a reference. Trace the mouse click, hold, and drag handling involved in these interactions; done means a held drag no longer produces extra clicks, popups, neighboring control triggers, or dropped and newly created notes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, linux
- Domain
- desktop
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100