steve wrote:Robert J. H. wrote:By the way, is there any reason why the drop down menu isn't listed in the keyboard section of the preferences dialog?
If it were the case, I'd simply assign the move up and down commands to Pg up and Pg down.
There is one track drop-down menu for every track. Each track has its own drop-down menu. This has some interesting repercussions in both the code and in a practical user way. For users it means that the menu will affect the track that the menu belongs to, and not the track that is selected or the track that has focus. You could think of it as the keyboard preferences having global scope, whereas the scope of the drop-down menu is limited to the track that the menu belongs to.
Sorry, but that's hardly a reason, it's rather an obstacle for the programmer. Many menu commands do not care what is selected (play for example). In its simplest form, the key assignement could simply send "shift-m" and "u" to the keyboard buffer.
Anyway, this is a little off-topic. I'll consider it and have a look at the source code myself.
There's also the possibility to program such a thing directly for the screen reader.
steve wrote:When I previously wrote "it might be worth taking quite a different approach", what I had in mind was an "Effect" to move tracks. An effect could be as simple or complex as we want, and as it would be part of the project menu, it would be available to the keyboard preferences. Also, it would affect selected tracks rather than the track that has focus. In the simplest case, this would mean that you could, for example, assign "Pg Up" and "Pg Down" to move the selected tracks up or down. This would be a different feature to the one being discussed in this topic.
And then there's the point where you have selected tracks with gaps between.
Two possibilities (e.g. by sending them to the top):
- The gaps are preserved, i.e. all tracks are moved by the same amount.
- they are collected at the top, i.e. the last is sent to the top then the second last and so on.
This raises the problem, what the undo function exactly affects.
The first possibility is easier; one upwards motion of the selected tracks can be collected into one undo step.
The second one has numerous solutions and is difficult to predict for the user.
Back to the current proposal and something that is only a problem for VI users.
Sighted users can move the track up until it is at the right position because they see what's above and below the track. The same thing with first sending the track to the top and then undoing.
I have always to move the focus to a neighbouring track to control if I am yet at the right position. That's why choosing the target position from a list would have been so convenient.
There's at least one improvement: I don't have to re-establish the focus on the track to be moved before undoing.
Furthermore, I can plan the arranging and send the tracks in reversed order to top or bottom.