From 37ffb28cf7e800a7b071334b5452caade30d6f7a Mon Sep 17 00:00:00 2001 From: James Mizen Date: Thu, 27 Feb 2025 16:54:21 +0000 Subject: [PATCH] Calculate width from position for clef, key&time sigs --- .../rendering/score/horizontalspacing.cpp | 7 ++++++- vtest/scores/leadingNonChordSeg.mscz | Bin 0 -> 24983 bytes 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 vtest/scores/leadingNonChordSeg.mscz diff --git a/src/engraving/rendering/score/horizontalspacing.cpp b/src/engraving/rendering/score/horizontalspacing.cpp index 69855c593004a..448ee1241e3b8 100644 --- a/src/engraving/rendering/score/horizontalspacing.cpp +++ b/src/engraving/rendering/score/horizontalspacing.cpp @@ -1038,7 +1038,12 @@ void HorizontalSpacing::setPositionsAndWidths(const std::vector Measure* curSegMeasure = curSeg->measure(); Measure* nextSegMeasure = nextSeg->measure(); - double segWidth = curSegMeasure == nextSegMeasure || nextSeg->isStartRepeatBarLineType() ? nextX - curX : curSeg->minRight(); + bool leadingNonCRException = ((nextSeg->isKeySigType() || nextSeg->isTimeSigType() + || nextSeg->isClefType()) && !curSeg->isType(SegmentType::BarLineType)); + bool computeWidthByDifferenceFromNext = curSegMeasure == nextSegMeasure || nextSeg->isStartRepeatBarLineType() + || leadingNonCRException; + + double segWidth = computeWidthByDifferenceFromNext ? nextX - curX : curSeg->minRight(); curSeg->setWidth(segWidth); diff --git a/vtest/scores/leadingNonChordSeg.mscz b/vtest/scores/leadingNonChordSeg.mscz new file mode 100644 index 0000000000000000000000000000000000000000..b7bcad428873d3844056073603c51ee8f4c34979 GIT binary patch literal 24983 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 literal 0 HcmV?d00001