Fix SpeedGrader keyboard navigation when menu open
Fix SpeedGrader keyboard navigation when menu open

Make SpeedGrader update the currently selected student in response to
keystrokes when the custom dropdown menu is open, and fix a couple of
the most salient issues, but do not attempt to fix everything.

closes EVAL-1610
flag=none

Test plan:

SpeedGrader provides a veritable bonanza of methods to select students
using the dropdown menu at the upper right:

1. Click on the dropdown to open it, navigate between students
   using the arrow keys or the Home/End keys, and hit Enter or Space to
   close the dropdown and select the last-focused student. As you
   navigate between students, the currently-selected item should have a
   distinct background. Avoid using both the mouse and the keyboard at
   once here, or the menu will get very confused.
2. Open the dropdown as described in (1), then close it. There should
   now be a focus rectangle around the dropdown, and you should be able
   to navigate between students using the arrow keys and Home/End.
3. Click somewhere on the header, tab until the left arrow is focused,
   then tab once more to focus the invisible browser-native select menu.
   Use the arrow keys to select a student.

Test that all three methods work to select students in SpeedGrader. Note
that methods 1 and 2 currently do not support switching sections using
the keyboard.

Change-Id: I3007324165ae7fa5b5cace1e2f5d7e0019e9ecc7
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275524
Tested-by: Service Cloud Jenkins <9144042a601061f88f1e1d7a1753ea3e2972119d@instructure.com>
Product-Review: Jody Sailor
QA-Review: Aaron Shafovaloff <d0ee6b99167c663aba7bc3efd806fe8d6cad437b@instructure.com>
Reviewed-by: Dustin Cowles <25afa0fec7fcf03720748195b533ef56026fd0cf@instructure.com>
Reviewed-by: Kai Bjorkman <4693b3d9e71784d629732770ab5e83ed8fbdb83e@instructure.com>

sfu/canvas-lms,sfu/canvas-lms,sfu/canvas-lms,sfu/canvas-lms,sfu/canvas-lms,sfu/canvas-lms,sfu/canvas-lms