zyn-fusion-issues icon indicating copy to clipboard operation
zyn-fusion-issues copied to clipboard

Microtonal / scale settings edit broken

Open JamesCrompton opened this issue 4 years ago • 6 comments

Version 3.0.5

  1. When I click in any of the boxes in the scale settings and try to edit them, the Wrong Thing happens:

Name: no cursor, all edits are at the end of the text. Comment: no cursor, characters are added to the end of the text and cannot be deleted. Tunings: cursor is shown, but edits are applied some distance before it. Editing the last two tones is difficult to impossible. Key mapping: cursor is often shown, but edits are applied earlier, making editing of any key after the 4th or 5th impossible. If I delete the first few keys, I can then also delete some later ones, making it possible to enter a new mapping after a few iterations. Except that the key doesn't work, and each key needs to be on a separate line.

  1. When I load an SCL or KBM file, the new tuning/mapping is not shown unless I try to edit it.

JamesCrompton avatar Feb 18 '21 10:02 JamesCrompton

Confirming this report: I can reproduce all these bugs in the latest version of the code.

I'll work on fixes.

pgervais avatar Feb 18 '21 17:02 pgervais

I have a fix for the missing cursor in "Name" and "Comment", as well as for 2. (which turned out to be an issue also affecting other parts of the UI). But it depends on https://github.com/mruby-zest/mruby-zest-build/pull/41 or an equivalent being merged. So no PR yet.

pgervais avatar Feb 18 '21 19:02 pgervais

Recent update:

  • Cursors are properly shown in the "name" and "comment" box
  • Loading an SCL / KBM file works correctly.

Not closing this issue yet because the issue with edits appearing far behind the cursor is not solved.

pgervais avatar Mar 18 '23 16:03 pgervais

Current plans are to remove the tunings/key mappings fields or at least make them non-editable.

fundamental avatar Mar 18 '23 18:03 fundamental

A short update on this issue. I'm working with @marahmbawwab and @top1million on fixing the TextEdit widget which is used for these settings. I acknowledge the decision of switching to non-editable fields here, but feel there is still value in fixing TextEdit since it's used elsewhere in the UI.

The cursor / edit point mismatch is being addressed in https://github.com/mruby-zest/mruby-zest-build/pull/92

We'll also tackle some of those other issues:

  • placing the cursor using the mouse doesn't work.
  • pressing the 'delete' key results in inserting a blank character (probably the control character) instead of deleting the character to the right.
  • unicode support: inserting one non-ascii character work (e.g. "é" ), but inserting two in a row results in both not being rendered. Once a single non-ascii character is present, cursor movement is partly broken, and inserting other characters appear to not work.
  • auto-repeat for arrow keypress doesn't work: if you press an arrow key and keep it pressed, the cursor will only move once. It make it difficult to move quickly, especially since you cannot use the mouse (see above).
  • the pageup/pagedown, home/end keys do nothing.
  • (nice to have) make Control-left/right move one word to the left/right.

pgervais avatar Apr 06 '23 09:04 pgervais

auto-repeat for arrow keypress doesn't work:

You may want to check host behavior. I think this functionality was problematic with at least how VST2 passed messages.

(nice to have) make Control-left/right move one word to the left/right.

The host captures CTRL, so this would not be possible in plugin mode.

fundamental avatar Apr 06 '23 12:04 fundamental