"Select Events under Cursor" selects the wrong event when zoomed out

Steps to reproduce:

  1. Create a MIDI Part and split it at a bar line. The Part to the right is automatically selected.
  2. Step the cursor 1 frame left.
  3. Zoom in adequately so that the Left Part is enlarged enough.
  4. Run “Select Events under Cursor”. Observe that the Left Part is selected.
  5. Select the Right Part again.
  6. Zoom out quite a lot.
  7. Run “Select Events under Cursor” again. Observe that the Right part is still selected.
  8. Deselect both Parts.
  9. Run the command again. Observe that the Right Part is selected.

Expected results: “Select Events under Cursor” should always select the events that is under the cursor, independent of Zoom level.

Actual result: It doesn’t.

Nuendo 12.0.60, macOS Monterey.
Aug-29-2023 20-12-48

Is it really selected, or is it this bug ?

It’s really the wrong one selected, or rather, the correct one is not selected. I discovered it since “Select Events under Cursor” is part of a macro I’ve build that suddenly malfunctioned when I triggered it zoomed out. Zooming in, the macro worked as expected, so I started troubleshooting and found this bug to be the culprit.

Your repro must be missing steps.

Where was the cursor to begin with? What was selected to begin with?

The cursor was at a bar start. I then stepped 1 frame left. Zoomed in, it will select the event under cursor (that extends to right before bar start), but zooming out, it will either not select it, or select the wrong event.

EDIT: The right part (starting at bar start) is selected. Or nothing is selected. The result is the same. It will select the right event even though the cursor is positioned over the left event.

This bug is still plaguing me. The reproduction is all there, including an animation showing where the cursor is to begin with. But, for even higher clarity, I’m re-writing the reproduction scheme:

Steps to reproduce:

  1. Create a MIDI Part.
  2. Position the cursor anywhere above the MIDI part and use function “Split at cursor”.
  3. Step the cursor 1 frame/tick/1ms left.
  4. Zoom in adequately so that the Left Part is enlarged enough.
  5. Run “Select Events under Cursor”. Observe that the Left Part is selected.
  6. Select the Right Part again.
  7. Zoom out quite a lot.
  8. Run “Select Events under Cursor” again. Observe that the Right part is still selected.
  9. Deselect both Parts.
  10. Run the command again. Observe that the Right Part is selected.

Expected results: “Select Events under Cursor” should always select the events that is under the cursor, independent of Zoom level.

Actual result: It doesn’t.