"Press" the "OK" button via keyboard in Land Safe activity
Closed, ResolvedPublic

Description

In the Land Safe activity in https://gcompris.net/download/qt/linux/beta/gcompris-qt-1.0-beta-Linux64.sh, all the input comes via the keyboard. The up and down arrow keys control vertical thrust. The left and right arrow keys control either horizontal thrust (levels 1 - 7) or rotation (levels 8 - 14). When a level is over, the next one doesn't begin until the "OK" button is clicked with the mouse.

I think it would be better if it were possible to "press" the "OK" button without needing to use the mouse. I had three thoughts about how to achieve this.

  1. Bind the "Enter" key to the "OK" button.
  2. Bind all four arrow keys to the "OK" button.
  3. Bind all keys other than those already in use (like "ESC") to the "OK" button.

I like 2 the best. My hand is already on the arrow keys from the previous level, and it is very natural for the user to push an arrow key potentially thinking that the next level has already started. The "OK" button is like a modal popup but doesn't take up much of the screen, so it is easy to miss it. This is especially true in the levels with low acceleration since the initial state of those levels at the first few seconds are very similar (since the velocity remains so low).

Could also do both 1 and 2 to increase the chance that the user discovers this quality of life improvement. Option 3 significantly increases this chance, but as a programmer, I am worried that some key binding might be stolen from some other behavior (like how binding "ESC" to the "OK" button would steal this key from its current behavior of exiting the activity).

Isn't it land safe instead of solar system?

tysonwilliams renamed this task from "Press" the "OK" button via keyboard in Solar System activity to "Press" the "OK" button via keyboard in Land Safe activity.Sep 16 2020, 5:19 PM
tysonwilliams updated the task description. (Show Details)

Ah, yes, yes! Thanks. I am submitting too many bug reports!! ;)

I corrected my original post.

timotheegiet added a subscriber: timotheegiet.

OK, I'll add that yes.

Ah, yes, yes! Thanks. I am submitting too many bug reports!! ;)

Thank you for this! It's really great to have user feedback, so thank you very much!
We'll do our best to fix them for the release (and if we can sooner to create a new beta too!)

I corrected my original post.

timotheegiet closed this task as Resolved.Sep 16 2020, 5:39 PM

And fixed in commit e66601933b9dd1c132bcf0efcd71dedeb864eac4 :-)

I added Enter/Return and Space shortcuts for the OK button, so it's quite easy to find for the user.
I preferred not to reuse the arrow keys to keep it safe and not start the level by mistake (and also to stay somehow consistent with other activities shortcuts).

Sounds great. Thanks :)

I tested now. If works just as you said (both Enter/Return and Space are bound to the "OK" button). Thanks again :)