+ What is sticking out of the note head (eg. a flag), doesn't get
+ the full amount of space.
+
+ FIXED also includes the left part of the right object.
+ */
+ *fixed
+ = (left_head_wid.is_empty () ? increment
+ : /*
+ Size of the head:
+ */
+ (left_head_wid[RIGHT]+
+
+ /*
+ What's sticking out of the head, eg. a flag:
+ */
+ (extents[LEFT][RIGHT] - left_head_wid[RIGHT]) / 2))
+
+ /*
+ What is sticking out on the left side of the right note:
+ */
+ + (extents[RIGHT].is_empty ()
+ ? 0.0
+ : ((- extents[RIGHT][LEFT] / 2)
+
+ /*
+ Add that which sticks out a lot.
+ */
+ + max (0.0, -extents[RIGHT][LEFT] - (base_space - 0.5 * increment))));
+
+ /*
+ We don't do complicated stuff: (base_space - increment) is the
+ normal amount of white, which also determines the amount of
+ stretch. Upon (extreme) stretching, notes with accidentals should
+ stretch as much as notes without accidentals.
+ */
+ *space = (base_space - increment) + *fixed;
+
+#if 0
+ /*
+ The below situation is now handled by the "sticks out a lot" case
+ above. However we keep around the code for a few releases before
+ we drop it.
+ */
+ if (!extents[RIGHT].is_empty ()
+ && (Item::is_breakable (right_col)
+ || right_col->original ()))