me = me->get_parent (a);
- if (! to_boolean (me->get_grob_property ("collision-done")))
+ if (! to_boolean (me->get_grob_property ("positioning-done")))
{
- me->set_grob_property ("collision-done", SCM_BOOL_T);
+ me->set_grob_property ("positioning-done", SCM_BOOL_T);
do_shifts (me);
}
else if (upball_type > dnball_type)
wipe_ball = nu;
- if (wipe_ball)
+ if (wipe_ball && wipe_ball->live ())
{
wipe_ball->set_grob_property ("transparent", SCM_BOOL_T);
- wipe_ball->set_grob_property ("molecule", SCM_EOL);
+ wipe_ball->set_grob_property ("molecule", SCM_EOL);
+
+ if (Grob *d = unsmob_grob (wipe_ball->get_grob_property ("dot")))
+ d->suicide ();
+ }
+
+ if (wipe_ball == 0
+ && unsmob_grob (nd->get_grob_property ("dot")))
+ {
+ unsmob_grob (nd->get_grob_property ("dot"))->suicide ();
}
}
else if (close_half_collide && !touch)
"directions and horizontal shifts. Most of the interesting properties "
"are to be set in @ref{note-column-interface}: these are "
"@code{force-hshift} and @code{horizontal-shift}. ",
- "merge-differently-dotted merge-differently-headed collision-done");
+ "merge-differently-dotted merge-differently-headed positioning-done");