Skip to content

Add keyboard navigation help documentation #10556

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

Draft
wants to merge 11 commits into
base: master
Choose a base branch
from

Conversation

microbit-robert
Copy link
Contributor

This is intended as a follow-up PR to #10512 and #10551, and we are opening in draft for visibility.

The diff in this PR is not representative of the changes proposed.

See microsoft/pxt-microbit#6152. There is an alternative suggestion on the linked issue that these docs could opened in a separate sidebar tab. The work we have done here does not include that suggestion as we're hoping for more feedback on the style, position and discoverability of the help documentation before implementing further changes.

Link to demo. Please note that 'accessible blocks' needs to be set to 'on' in the settings menu.

@microbit-matt-hillsdon

This PR adds three shortcuts to help keyboard users navigate to the
editor (workspace), toolbox and trigger the hex download.

Co-authored-by: Grace <[email protected]>
microbit-grace and others added 10 commits May 7, 2025 16:05
- Collapse simulator when navigate region overlay opens
- Expand mini sim when region is selected
This uses the sidebar but not the docs system which allows us
to pull live shortcut bindings. Particularly useful if we allow custom
shortcut bindings going forward.

- Moves the tab order of the sidebar docs forward and adds a focus ring.
- Handle shortcuts triggered when the sim has focus.
- Maximise the mini sim for region nav as it's too small for accessible use.
- Added support for escape to close keyboard controls - note this doesn't work
  for reference docs due to the iframe.

Closes microsoft#10556
* @param modifierNames The names to use for the Meta/Control/Alt modifiers.
* @returns The formatted shortcuts.
*/
function getActionShortcutsAsKeys(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is all a bit gross but matches the keyboard nav plugin's code for its simpler keyboard shortcut dialog.

As per the comment above, it would all be much nicer if Blockly only bound shortcuts relevant to the current platform or at least tagged them with a platform.

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

Successfully merging this pull request may close these issues.

3 participants