Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Microtonal / scale settings edit broken #274

Open
JamesCrompton opened this issue Feb 18, 2021 · 6 comments
Open

Microtonal / scale settings edit broken #274

JamesCrompton opened this issue Feb 18, 2021 · 6 comments
Assignees

Comments

@JamesCrompton
Copy link

JamesCrompton commented Feb 18, 2021

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.
@pgervais
Copy link
Collaborator

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

I'll work on fixes.

@pgervais
Copy link
Collaborator

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 mruby-zest/mruby-zest-build#41 or an equivalent being merged. So no PR yet.

@pgervais
Copy link
Collaborator

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.

@fundamental
Copy link
Member

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

@pgervais
Copy link
Collaborator

pgervais commented Apr 6, 2023

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 mruby-zest/mruby-zest-build#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.

@fundamental
Copy link
Member

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants