diff --git a/libmscore/layout.cpp b/libmscore/layout.cpp index 793521b07bdbf..c5124cc04f879 100644 --- a/libmscore/layout.cpp +++ b/libmscore/layout.cpp @@ -3970,15 +3970,14 @@ qreal Score::computeMinWidth(Segment* fs, bool firstMeasureInSystem) rest2[staffIdx] = true; // space chord symbols separately from segments - if (hFound || eFound) { + if (hFound || spaceHarmony) { qreal sp = 0.0; // space chord symbols unless they miss each other vertically if (hFound && hBbox.top() < hLastBbox[staffIdx].bottom() && hBbox.bottom() > hLastBbox[staffIdx].top()) sp = hRest[staffIdx] + minHarmonyDistance + hSpace.lw(); - // barline: limit space to maxHarmonyBarDistance - else if (eFound && !hFound && spaceHarmony) + else if (spaceHarmony) sp = qMin(hRest[staffIdx], maxHarmonyBarDistance); hLastBbox[staffIdx] = hBbox; diff --git a/libmscore/measure.cpp b/libmscore/measure.cpp index eadf030e89b40..5ca29b5a15cbe 100644 --- a/libmscore/measure.cpp +++ b/libmscore/measure.cpp @@ -3415,15 +3415,14 @@ void Measure::layoutX(qreal stretch) rest2[staffIdx] = true; // space chord symbols separately from segments - if (hFound || eFound) { + if (hFound || spaceHarmony) { qreal sp = 0.0; // space chord symbols unless they miss each other vertically if (hFound && hBbox.top() < hLastBbox[staffIdx].bottom() && hBbox.bottom() > hLastBbox[staffIdx].top()) sp = hRest[staffIdx] + minHarmonyDistance + hSpace.lw(); - // barline: limit space to maxHarmonyBarDistance - else if (eFound && spaceHarmony) + else if (spaceHarmony) sp = qMin(hRest[staffIdx], maxHarmonyBarDistance); hLastBbox[staffIdx] = hBbox; diff --git a/vtest/gen b/vtest/gen index 9d21527affa57..ce9ca91142b51 100755 --- a/vtest/gen +++ b/vtest/gen @@ -45,7 +45,8 @@ else accidental-1 accidental-2 accidental-3 accidental-4 accidental-5\ accidental-6 accidental-7 accidental-8 accidental-9 accidental-10\ tie-1 tie-2 tie-3 grace-1 grace-2 grace-3 grace-4 tuplets-1 tuplets-2 breath-1\ - harmony-1 harmony-2 harmony-3 harmony-4 harmony-5 harmony-6 harmony-7 harmony-8 harmony-9 harmony-10 harmony-11\ + harmony-1 harmony-2 harmony-3 harmony-4 harmony-5 harmony-6 harmony-7 + harmony-8 harmony-9 harmony-10 harmony-11 harmony-12\ beams-1 beams-2 beams-3 beams-4 beams-5 beams-6 beams-7 beams-8 beams-9 beams-10\ beams-11 beams-12 beams-13 beams-14 beams-15 beams-16 beams-17\ user-offset-1 user-offset-2 chord-space-1 chord-space-2 tablature-1 image-1\ diff --git a/vtest/gen.bat b/vtest/gen.bat index 6223f283d01b6..7913bb8be5ab2 100644 --- a/vtest/gen.bat +++ b/vtest/gen.bat @@ -20,7 +20,8 @@ set SRC=mmrest-1,bravura-mmrest,gonville-mmrest,mmrest-2,mmrest-4,mmrest-5,mmres accidental-1,accidental-2,accidental-3,accidental-4,accidental-5, ^ accidental-6,accidental-7,accidental-8,accidental-9,accidental-10, ^ tie-1,tie-2,tie-3,grace-1,grace-2,grace-3,grace-4,tuplets-1,tuplets-2,breath-1, ^ - harmony-1,harmony-2,harmony-3,harmony-4,harmony-5,harmony-6,harmony-7,harmony-8,harmony-9,harmony-10,harmony-11, ^ + harmony-1,harmony-2,harmony-3,harmony-4,harmony-5,harmony-6,harmony-7, ^ + harmony-8,harmony-9,harmony-10,harmony-11,harmony-12, ^ beams-1,beams-2,beams-3,beams-4,beams-5,beams-6,beams-7,beams-8,beams-9,beams-10, ^ beams-11,beams-12,beams-13,beams-14,beams-15,beams-16,beams-17, ^ user-offset-1,user-offset-2,chord-space-1,chord-space-2,tablature-1,image-1, ^ diff --git a/vtest/harmony-12-ref.png b/vtest/harmony-12-ref.png new file mode 100644 index 0000000000000..17567927a2aa0 Binary files /dev/null and b/vtest/harmony-12-ref.png differ diff --git a/vtest/harmony-12.mscz b/vtest/harmony-12.mscz new file mode 100644 index 0000000000000..ba37f5d01396f Binary files /dev/null and b/vtest/harmony-12.mscz differ