Space/Alt+right no longer enter another sticking

• Oct 11, 2019 - 04:54
Reported version
3.x-dev
Priority
P1 - High
Type
Functional
Frequency
Once
Severity
S3 - Major
Reproducibility
Always
Status
closed
Regression
Yes
Workaround
Yes
Project

1) add notes to a score
2) add sticking to one note
3) press Space to move to next note

Result: edit mode is terminated, you cannot type another sticking

This is because of a fix I made for a crash a while ago, see https://github.com/musescore/MuseScore/commit/7cb3bc28e042faf5a931a192c…. Also, the same change partially broke entry of expression text (the text is entered, but placement is wrong).

Fix forthcoming.


Comments

Status PR created fixed

Fixed in branch master, commit 7bc8ccdef0

_fix #295531: unable to enter successive sticking elements

Resolves: https://musescore.org/en/node/295531

In an earlier fix for a crash entering fingering with custom text style,
I introduced a change to how the textTab() function ("fingering mode") works,
so instead of creating a new text element with the same text style as the previous element
(which could conceivably be a user style),
we create one with the same text style as the default text style for that element,
and then change the text style later if needed.
This fails for sticking because it had no default text style.
So this change simply adds one, by overriding Sticking::propertyDefault().

The same previous bug fix also broke expression text a little,
because this is actually a staff text, and this process of first creating an element
with the default text style and then changing it ends up missing the placement property.
So you get an object with expression text style but palcement above.
I fix that by special-casing this combination - one of the few places
where we create a pseudo element type that is really just a different text style.
We formerly did this for system text, but it's a first class element now.
Also, RNA is just a different text style on chord symbol,
but that goes through a totally different code path, which works correctly already._

Fix version
3.3.0