microsoft / microsoft/pxt-microbit
Keyboard navigation: using "up arrow" doesn't visit all nodes
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 804
- Forks
- 721
- Avg merge
- 2d 9h
- Merged PRs (30d)
- 2
Description
Describe the bug
With the following layout, created by using "format code" shortcut, you are unable to move one of the orphaned statement blocks back into the "forever" loop using up arrow or left arrow. You can get to it via down arrow or right arrow.
To Reproduce
Steps to reproduce the behavior:
- Edit the linked project
- Ensure keyboard controls are switched on
- Click on the "pause" or "show number" block
mto enter move modeup arrowrepeatedly to try to move into "forever"- You are unable to move the block into "forever"
- Use
down arrowand observe there is an additional connection and you can now successfully move inside "forever"
Screen recording
micro:bit version (please complete the following information):
N/A
Desktop (please complete the following information):
- OS: Win 11
- Browser: Firefox
Smartphone (please complete the following information):
N/A
Additional context
Having written this all out, I'm increasingly sure I've seen mention of it on the blockly-keyboard-navigation plugin repo but (a) I can't replicate it there to log the bug there, and (b) I can't find it anything matching in their open or closed issues, so I may have imagined it.
A fix here might just be "update the keyboard nav plugin at some point"
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the linked example project and reproduce the keyboard-navigation steps in Firefox with keyboard controls enabled. Inspect the keyboard navigation integration and compare it with the referenced blockly-keyboard-navigation plugin repository. Done means the orphaned statement block can be reached and moved into the forever loop with repeated up-arrow or left-arrow navigation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- accessibility, frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100