musescore / musescore/MuseScore
Deletion of line elements does not match visual selection
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 15.1k
- Forks
- 3.3k
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 91
Description
Issue type
UX/Interaction bug (incorrect behaviour)
Description with steps to reproduce
- Create four crotchets, and a line (for example a Staff text line) spanning all four
- Range-select the first two beats
- Note the first two notes and the staff text line are visually selected
- Press delete
- The notes are deleted. The staff text line is unaffected.
- Undo. Now range-select all four notes.
- Now all four notes and the staff text line are visually selected.
- Press delete
- This time, the notes and the staff text line are deleted.
It seems that the line element is visually selected if any part of it is within the range selection, but the delete operation affects it only if every part of it is within the range selection.
However, other operations (say, changing the colour using Properties > Appearance) affect it if any part of it is within the visual selection.
So this is a bit confusing and inconsistent. I'm not sure what the best design here is. Should line elements always only be part of the range selection if they are fully encompassed by it?
[Note re: classifying as "bug" - I don't really know how to classify issues that are probably "working as designed, but the design is problematic". Neither "bug" nor "feature request" seem right.]
Supporting files, videos and screenshots
In which versions of MuseScore Studio is this issue present?
OS: macOS Sequoia (15.7.7), Arch.: arm64, MuseScore Studio version (64-bit): 4.7.4-260706075, revision: github-musescore-musescore-7688c00
Regression
I was unable to check
Operating system
macOS
Additional context
No response
Checklist
- This report follows the guidelines for reporting bugs and issues
- I have verified that this issue has not been logged before, by searching the issue tracker for similar issues
- I have attached all requested files and information to this report
- I have attempted to identify the root problem as concisely as possible, and have used minimal reproducible examples where possible
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
Reproduce the range-selection and deletion steps in MuseScore Studio, comparing partial and complete selection of the line element. Then trace the selection and delete handling in the relevant desktop interaction code; done means the chosen selection semantics are consistent for deletion and other operations, with tests covering the reported cases.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- design, desktop
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100