"hide courtesy key signature" not working when hiding for only one staff of multiple-staff score from context menu

• Feb 19, 2019 - 16:53
Reported version
3.0
Priority
P2 - Medium
Type
Functional
Frequency
Once
Severity
S3 - Major
Reproducibility
Always
Status
closed
Regression
No
Workaround
No
Project

The "hide courtesy key signature" feature is not working for piano staves. The context menu indicates that it does indeed change some flag in the file to say that the courtesy should be hidden (and thus the context menu offers to make it visible again), but the actual courtesy is shown regardless.

It does work correctly for single staves, and the "hide courtesy time signature" feature works correctly on piano staves.

Attachment Size
courtesy-key-signature.mscz 4.09 KB

Comments

Title "hide courtesy key signature" not working on piano staff "hide courtesy key signature" not working when hiding for only one staff of multiple-staff score
Severity S4 - Minor S3 - Major
Priority P0 - Critical

I think what has happened is that you managed to turn off the "show courtesy" option for the top staff only, and that apparently doesn't work. Probably you meant to turn it off for both, and had you used the Inspector instead of the right-click, this would have happened automatically.

But it probably should have "worked" in that hiding it for the top staff only should have hidden it there. Or, we could change the logic for that menu option to just go ahead and do it for all staves, but still, it probably does need to be possible to hide them independently for different staves.

Thank you for the unexpectedly quick reply!

It doesn't seem to be related to hiding/showing for a single staff within the grand staff. However, I can confirm that changing the visibility from the inspector does indeed work, whereas changing it from the context menu does not. That means there's still a bug, but there's an easy workaround.

To see that it is indeed related to the individual staves, try setting both staves to hide using right-click. In other words, in your test file, so far you've done it for the top, now do it for the bottom also. You'll see suddenly it works. The reason Inspector works right away is that clicking a single key signature. always selects them all.

Title "hide courtesy key signature" not working when hiding for only one staff of multiple-staff score "hide courtesy key signature" not working when hiding for only one staff of multiple-staff score from context menu
Priority P0 - Critical P2 - Medium
Status PR created fixed

Fixed in branch master, commit 37dfa26712

_fix #299246 and fix #284434

This commit solves 2 issues:

issue 299246 : Hiding courtesy time signature only works for the first staff
issue 284434 : "hide courtesy key signature" not working when hiding for only one staff of multiple-staff score from context menu

When selecting a time signature, it now shows the same behavior as selecting a key signature which solves
Key Signature had exactly the same problem as Show/Hid Courtesy Time Signature. This is solved
similar for both key and time signature.

Also, in propertymenu.cpp all static_cast() replaced by toXx(), according the coding rules._

Fix version
3.5.0