musescore / musescore/MuseScore

A Control-Click (in MacOS) must be followed by mouseUp or the subsequent drag moves the score rather than navigating the contextual menu

Open
#21,946 2 comments 0 reactions 1 assignee View on GitHub

@avvvvve is already working on this.

Since Mar 15, 2024.

community P3 regression MS3 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)

Task

While holding control and clicking OR while holding right-click to invoke a context menu and then moving the mouse, do not drag the score while the mouse is still held down.

Target behavior:

  1. Hold control and mouseDown to invoke context menu (or hold right-click)
  2. While still pressing the mouse drag the cursor over the menu. Hover states should appear just as in a normal interaction with the context menu. (Currently, doing so drags the canvas)
  3. mouseUp while hovering on a context menu item should then act as if it were clicked
    • Note: if you release the mouse off the menu, over a disabled menu item, or over a menu item with sub-options, nothing should happen but the menu should stay open.

Note that this is probably a tricky issue to solve and likely not a good issue for a first-time contributor

Bug description

Here on the Mac I use Control-Click to invoke a contextual menu but this has an annoying glitch since MuseScore 4.

MS4 behavior MacOS: In MS4.0, after a Control-click, I have to release the mouse before attempting to navigate the contextual menu. If I leave the mouse down after Control-Click, and move the mouse to navigate the menu, the score receives a drag event, usually resulting in a score drag ... but sometimes a drag of a score object, like a note or frame. I've ever encountered this behavior in any MacOS application.

In contrast:

MS3 behavior on MacOS: After invoking a contextual menu̦ in MS3.6.2—via Control-Click—I can immediately navigate the resulting menu with the mouse still down. No preemptive mouseUp is required to navigate the contextual menu; No preemptive mouseUp is required to prevent dragging a) the score or b) an object inadvertently selected when MuseScore passes the click event to the score?

Verbatim report here, posted Dec 19, 2022.
https://musescore.org/en/node/338852

scorster

Steps to reproduce
Steps to replicate an unintended score drag:
  • Open any MuseScore file in MacOS
  • Control-click in a "white area" of the score
  • With the mouse still down try to navigate the contextual menu
  • Unexpected result: MuseScore ignores the menu and drags the score.
Steps to replicate an unintended object drag
  • Open any MuseScore file in MacOS
  • Control-click any score object
  • With the mouse still down try to navigate the contextual menu
  • Unexpected result: MuseScore ignores the menu and drags the object.
MuseScore Version

MS4.2.1.24...

Regression

Yes, this used to work in MuseScore 3.x and now is broken

Operating system

MacOS 13.5.2

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.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.