C2LC-638: Pressing tab after opening the control panel for a start loop block does not take you into the control panel but through the program sequence

Description

Steps to reproduce:

  • Focus a start loop block
  • Press Enter to open the control panel
  • Press Tab, focus moves to the iteration input control
  • Press Tab again

Expected:

  • Focus to go into the control panel

Actual:

  • Focus goes to the following add node

Cause: the iteration input control is not specified for the control panel focus trap.

https://github.com/codelearncreate/c2lc-coding-environment/blob/e64d694519bbd964c00c96162f197141662eda07/src/ProgramBlockEditor.js#L696-L718

Comments

  • Simon Bates commented 2022-05-31T09:30:27.535-0400

    The behaviour is now different from that described above: when the control panel is open, focus does not go to the loop iteration text box, but instead moves directly to the control panel.

  • Simon Bates commented 2022-05-31T09:37:25.643-0400

    I am unable to reproduce this, even going back to 1.2. Investigate how to reproduce.

  • Simon Bates commented 2022-05-31T09:38:19.203-0400

    The new behaviour is good. But it would be good to figure out why this issue was created and under what circumstances it was happening.

  • Simon Bates commented 2022-05-31T09:40:09.451-0400

    It is possible to open the control panel by pressing ‘space’ when focus is in the loop iteration text box. This is a bug.

  • Simon Bates commented 2022-05-31T14:38:08.403-0400

    I have been unable to reproduce this issue with the documented reproduction steps. I’m wondering if maybe I wrote them up incorrectly.

    I can reproduce something like the described issue with the following steps:

    • Focus a start loop block
    • Press Enter to open the control panel
    • Click in the iteration input control to move focus to that control
    • Press Tab
  • Simon Bates commented 2024-04-22T11:26:29.439-0400

    The updated behaviour described in the comment of 2022-05-31 is captured by https://fluidproject.atlassian.net/browse/C2LC-649. Closing this issue as Done.