Keyboard shortcut [V] not disabled for elements that can't be saved as invisible

• Apr 17, 2016 - 22:44
Reported version

It seems that, if you make a bracket (curly bracket or otherwise) invisible in a score, this is not actually kept on save.

To reproduce:

1) Create a new score.
2) Make one of the curly brackets about one of the staves invisible.
3) Save.
4) Quit, re-open, and load the save

Expected: the bracket that you set invisible remains invisible
Actual: the invisible bracket is now visible


Title Invisible Bracket Keyboard shortcut [V] not disabled for elements that can't be saved as invisible
Status (old) duplicate active

Actually, I just discovered that even though nothing is displayed in the inspector, the visible shortcut still works. It looks like that needs to be disabled, too.


I mean, if the ability to make brackets like that invisible is not allowed, then that will cause a lot of problems since brackets are applied to every staff in the score. Meaning that if you have, say, a piano score that splits into two grand staves at one point, with brackets on each and a third bracket encompassing both, then you'll have that third bracket on every single staff, even at the beginning. That's what I was trying to hide.

And yes, I'm using 2.0.3.

These brackets are generated on the fly, that's why they cannot be made invisible. The fix was to disable the inspector for These to not feed the Impression they could get made invisible. The next fix most probably would be to not allow a Ctrl+V on them either.

That would explain it. Any hope that there will be an option to set the start of when those brackets show up? So, you stick it on a staff, and only staves after the one you stick it on (not before) wind up with those brackets?

See - assuminng you mean system, not staff, this doens't really make sense. It would have to be tied to the measure range, not the "system", for the same reason it doesn't make sense to mark them invisible by system. But I'm still not understanding the use case. The only situation I can imagine where you'd need brackets to sometimes show up and sometimes not for the same staff is if you are using "Hide empty staves" and sometimes only one staff from the group is visible, but MuseScore already does the right thing in all such cases I tried, no special workarounds required.

So you might want to explain more detail the problem you are having. Perhaps you've run into some sort of corner case bug where the brackets don't update properly; if so, we'd need a sample score and steps to reproduce the problem in order to investigate and fix it. Or maybe I'm misunderstanding, but either way, we need more information. probably bet to follow up in the forum thread rather than here.

I was investigating this issue on IRC with Animesh (nasehim7). I'm just making a note here that another issue was discovered while investigating on 3.0-dev: #182226: SEGFAULT trying to switch visible state of Bracket with "V" key.

Also we were trying to determine which elements exactly are the ones that aren't able to save the state of their visibility. As of current 2.1-dev fee488e it seems brackets aren't able to save their visibility state. But it seems clefs & time sigs (including courtesy clefs & time sigs) are able to save their visiblity state. So we will need to disable the "v" shortcut for all brackets, but I'm not sure what other elements also have this property of not saving their visibility state...if anyone knows, please explicitly list them here. Only other one I know of is instrument names.

I'm noting that as werner was fixing #182226: SEGFAULT trying to switch visible state of Bracket with "V" key he also made another commit titled "don't allow 'toggle-visible' for brackets" in master.

I also tested instrument names in lastest 3.0-dev bcbe537 and I found that I am unable to make instrument names invisible.

So now the question is: are there any other elements that need to prevented from being set to invisible? If no, then I think we can say this issue has been fixed in 3.0, at least. Maybe someone should put in a small test script to make sure.