Ticket #3719 (new enhancement)
Options: Weird keyboard navigation over radiobuttons
Reported by: | egmont | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | Future Releases |
Component: | mc-core | Version: | master |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Branch state: | no branch | Votes for changeset: |
Description
Open Options -> Configurations.
Let's assume that Pause after run is set to its default value, the middle one (On dumb terminals).
Press the Down arrow a couple of times. When it enters this box, it jumps to this middle entry, skipping the first one. Then it goes to the last, and then it leaves this box. Keep pressing Down, the next time it enters this box it jumps to the last item straight away.
Similarly, pressing the Up arrow many times will first enter at the last item and then go up one by one, but the next time it'll enter at the first item.
Looks like the radiobuttons have an internal concept of "active" field which is initialized to the selected entry but later on lives its own separate life with no visual feedback.
Tab and Shift-Tab behave differently: They only go to the "active" field and then leave the radiobuttons immediately.
Other radiobuttons also behave the same way. E.g. it's totally silly under Left -> Sort order.
This behavior is quite counterintuitive to me. I'm also wondering why this is the only place where Tab / Shift-Tab behaves differently from Down / Up. Actually I don't quite like the behavior of either.
I think it would be better if they always stepped through all the visible options.
I myself don't see a problem with the current behavior.
Would it look
more naturalless awful to you if, upon moving the focus to the widget, the active item will be set to the selected item? (instead of being the last remembered one)When you press down/up at the last/first item of the radio widget, the widget tells the system "I haven't handled this key". Then the dialog takes over translating this down/up to mean tab_to_next_widget / tab_to_prev_widget. To me this behavior is intuitive. Why, what's the behavior of common GUI tooolkits?