DDMAL/Neon

Accidentals reassigning to nearest staff automatically and too quickly

Closed this issue · 6 comments

I have encountered a situation where an accidental is placed quite high above the staff it belongs to, like so:

145r high accid

Even though it's fully touching the staff above, it definitely belongs to the staff below. However, Neon just won't let me assign it like that. When a neume component is initially assigned to the wrong staff, I usually observe this behaviour:

  1. Say the neume is assigned to staff A, but I want it to be assigned to staff B. I first drag the neume to the middle of staff B;
  2. Then I manually reassign it to the nearest staff, which assigns it to staff B;
  3. Then I move it back to where it actually goes;
  4. The neume will stay assigned to staff B, regardless of where I put it.

In the accid's case, two behaviours don't match this outline:

  • Even if I reassign the accid to the staff I want, when I move it to its correct position it automatically reassigns itself to the wrong staff.
  • It also automatically reassigns itself to the wrong staff even when the correct staff is significantly closer.

Both these things are demonstrated here:

145r.accid.reassignment.mov

At the end of the video, the accidental is pale blue even though it's still on the green staff. If I click on Re-associate to nearest staff, it stays pale blue.

Ideally, I think accidentals should behave like neumes: once the user manually assigns them to a staff, they stay assigned to that staff regardless of where they go.

I've removed automatic staff changing for both custos and accid. I kept the staff changing for divLine because divLine is rendered by the y position of its staff (the automatic staff changing is not avoidable.) I also noticed that the staff changing for clef is not functioning with the verovio merge changes because of the y shift calculation. I will further look into that.

@yinanazhou, are these changes in production yet? I'm looking at the same folio and the accidental is still doing the same thing!

@JoyfulGen, sorry I haven't pushed the changes to production and staging. I will push the changes to staging after I fix the clef thing.

Hi @JoyfulGen I've pushed the changes to Neon staging.

@yinanazhou sorry for being so late! Just to make sure, you've pushed these changes to staging, but not production, right?

@JoyfulGen Yes, only staging