musescore / musescore/MuseScore

Deletion of line elements does not match visual selection

Open
#34,480 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

P3 UX/interaction
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
  1. Create four crotchets, and a line (for example a Staff text line) spanning all four
  2. Range-select the first two beats
  3. Note the first two notes and the staff text line are visually selected
  4. Press delete
  5. The notes are deleted. The staff text line is unaffected.
  6. Undo. Now range-select all four notes.
  7. Now all four notes and the staff text line are visually selected.
  8. Press delete
  9. 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
Image Image
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

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.