]> git.donarmstrong.com Git - lilypond.git/commitdiff
Fix 739.
authorJoe Neeman <joeneeman@gmail.com>
Sat, 30 May 2009 01:35:28 +0000 (18:35 -0700)
committerPatrick McCarty <pnorcks@gmail.com>
Fri, 17 Jul 2009 09:39:17 +0000 (02:39 -0700)
Ensure that bends always go left-to-right.
(cherry picked from commit 567779897a8e8bf635b2388b86e68cf71af26a6d)

scm/define-grobs.scm
scm/output-lib.scm

index 4187a386d39a8382d9513b2f1dd9b506b944af93..e8b65da9ed159a1521c8e329933fafc6973d873a 100644 (file)
     (BendAfter
      . (
        (stencil . ,bend::print)
+       (minimum-length . 0.5)
        (thickness . 2.0)
        (meta . ((class . Spanner)
                 (interfaces . (spanner-interface
index 53a5773d0f738e570b855b8a68e402c793fd23c5..b82ffa2c4c42e3ceed980e8397735f2986c01dd7 100644 (file)
@@ -540,6 +540,8 @@ centered, X==1 is at the right, X == -1 is at the left."
                                                                 left-span X)
                                        X))
        (common-y (ly:grob-common-refpoint spanner left-span Y))
+       (minimum-length (ly:grob-property spanner 'minimum-length 0.5))
+
        (left-x (+ padding
                  (max (interval-end (ly:grob-robust-relative-extent
                                      left-span common X))
@@ -550,9 +552,9 @@ centered, X==1 is at the right, X == -1 is at the left."
                            (interval-end (ly:grob-robust-relative-extent dots common X))
                            -10000) ;; TODO: use real infinity constant.
                        )))
-       (right-x (- (interval-start
-                   (ly:grob-robust-relative-extent right-span common X))
-                  padding))
+       (right-x (max (- (interval-start (ly:grob-robust-relative-extent right-span common X))
+                       padding)
+                    (+ left-x minimum-length)))
        (self-x (ly:grob-relative-coordinate spanner common X))
        (dx (- right-x left-x))
        (exp (list 'path thickness