musescore / MuseScore

MuseScore is an open source and free music notation software. For support, contribution, bug reports, visit MuseScore.org. Fork and make pull requests!
https://musescore.org
Other
12.14k stars 2.63k forks source link

Pickup measures show wrong rests when the Actual duration is modified #24976

Open cadiz2 opened 1 day ago

cadiz2 commented 1 day ago

Issue type

UX/Interaction bug (incorrect behaviour)

Description with steps to reproduce

  1. New score for Flute, Time signature 4/4, with a pickup measure (1/4) created with the Wizard.
  2. Create two more incomplete measures (Actual duration : 1/4 and 1/8) in the following measures

    Expected result: display of a quarter rest (as when creating the score) and a 8th rest

Supporting files, videos and screenshots

Video pickup

What is the latest version of MuseScore Studio where this issue is present?

4.4.0

Regression

Yes, this used to work in a previous version of MuseScore 4.x

Operating system

Windows 10

Additional context

No response

Checklist

oktophonie commented 1 day ago

It it really a 'malfunction'? It seems just as likely that you might want a measure rest as you might want it to split into specific rests. After 'bar 0', bars with modified lengths are not likely to be pickup bars.

cadiz2 commented 1 day ago

This is a very unexpected result:

  1. Because I can't remember a previous version of MuseScore that didn't display the rest associated with the change in Actual Duration. And therefore confusing.
  2. In addition, why should the behavior be different when creating the score with the wizard and when changing it once it's been created? It's inconsistent, and therefore wrong in my eyes.
cbjeukendrup commented 1 day ago

It looks like we'll need a way to let the user tell whether something is intended to be a pickup bar or not. Currently, some heuristic is used, but I doubt its validity. I believe this heuristic was changed in 4.4; that may or may not be related.

MarcSabatella commented 1 day ago

For more history about the pickup heuristic, see issue https://github.com/musescore/MuseScore/issues/22080 and the PR that closed it, https://github.com/musescore/MuseScore/pull/22083. I'm not so sure the change in how rests are shown by default in empty measures was carefully considered and any change might be just an unintentional side effect. Assuming this is indeed the PR that changed the behavior, which seems likely, but I'm not by any means sure about that either.