Right click deletion difficulty due to pixel-perfect accuracy requirement (accessibility)
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 16.2k
- Forks
- 1.9k
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 80
Description
Hi hi,
Currently when deleting objects with right click you have to do this perfectly as moving even a single pixel will result in camera panning instead of the desired deletion. For those with unsteady hands or a sensitive mouse this can be quite difficult. With a pen tablet such as a Wacom, often used for ergonomics and RSI-management, it is almost impossible to consistently right click without also moving the pen slightly.
I have several solutions in mind. In order of preference:
- Split deletion and panning functionality and allow for individual binding. This would allow for middle click for panning the camera and right click for removal, which is used by some other games and a lot of drawing software as well.
- Some form of grace period time and/or pixel area. For example when right clicking for less then X milliseconds and/or within Y pixels of the initial click position count as delete on the original click position instead of panning the camera.
- Apparently, from https://stackoverflow.com/questions/38846373/how-much-time-should-the-mouse-left-button-be-held: It shows that the average mouse click lasts 85ms, with Q3 = 95ms, Q1= 75ms; with an upper fence of 135ms and a lower fence of 55ms.
- Extra feature in bulldozer tool that turns left click into the action of right click delete. This would mean a lot of extra button presses for constant build/remove toggling though, so it's a last resort.
This is mainly accessibility, but possibly might be considered an original bug as well? Though with the small screen resolutions at the time it may not have been as easy to trigger compared to the 4k+ displays of today.
Cheers
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
No files, tests, or entry points are named. First clarify which of the three proposed input-behavior approaches is wanted with maintainers, then locate the relevant mouse-control code and its tests; done should include an agreed accessible deletion interaction and coverage for accidental panning.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- accessibility, game-dev
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100