feat (pattern-editor): allow for copying single row in highlighted channel when no selection is available#385
Conversation
|
So time to get back to this I think, what I've seen so far: (debugging this causes ctrl c and ctrl v to not do anything, very cool)
I think I'll need to split copying with a selection and copying without a selection for things to make sense. |
|
i'm hesitant to merge this feature as i can't find a good reason for automatically copying an entire row without selecting it. wouldn't it make sense that if nothing is selected, then nothing is cut/copied? |
The reason is basically the inverse. If I want to copy an entire row I currently have to select it. This usually involves something like:
Or something. In other words it's slow. Especially with multiple different instruments in the same channel where you have to select, copy, paste, select, copy paste a bunch of times. You're right that it makes sense that if nothing is selected, then nothing is cut/copied. But is this behavior actually useful? For me a key doing nothing (disabled) is just a waste of a key. I would be way happier if I could copy/cut without a selection (cut isn't part of this PR though). If it's too weird it could be put behind a feature flag. |
|
also, as a reminder: please fill out the pull request template, it helps with changelog documentation |
How exactly? I tried at the top.
For me this isn't super useful, if you're already in the position to copy the highlighted row you might as well type it, or press shift+down+up. It also doesn't solve my problem which is I want to copy 1-7 columns (depending on row data) with a single keystroke. This is if you're talking about the data under the highlight of the cursor though. Maybe "entire row" was a bad description, I meant in a single channel, so it won't copy all channels at once, just the channel which the cursor is in. |
the placeholder text is meant to be overwritten with your changes to be listed in the change log. i should probably make its intent more clear.
it's more of a personal thing that i think it's not intuitive that it copies the row instead of the cell that the cursor highlights, but i'll have to interview more users about it. |
Maybe it's not super intuitive but you usually don't copy without a selection anyway so I think it's fine to change the behavior here. Copying with a selection works as before. I don't this this feature would inconvenience someone really, but it's a bit hard to find out that it exists I guess. This change was meant to make copying all columns of the highlighted channel faster because to me it was a bit annoying. This would be a workflow boost for me personally because I do this a lot and this change would make it a bit more efficient by not requiring mouse selections and so on. Even if it doesn't make sense in a logical sense that copying nothing copies the row in the highlighted channel, if the result is that I can make songs faster I'm happy with it. But this is a subjective thing. And why I'm fine with making it a setting if needed. |
|
that's fair. i will review the code tomorrow afternoon. |
|
there's an assert fail when pasting the row data; the investigating this now. in |
|
Yes there was some weirdness which I couldn't fix (C noob), I added some workaround to make it work like I wanted it to work but a better solution would be great. No need to rush though if you don't feel like it, I will be away for some days anyway. |


This pull request aims to add a feature to allow for coping a single row when no selection is available.
I always thought it was a bit annoying that
Ctrl+cwithout a selection didn't do anything. Now it does something, it copies the entire row at once.There is a crash if you copy a row without a selection, paste and then press delete, not sure what's going on there so I'm marking this as draft for now.
(If applicable) This pull request improves upon and supercedes#<PR number>.Changes in this PR: