VP-31: Implement proper keyboard interactions for the videoPlayer components

Metadata

Source
VP-31
Type
Bug
Priority
Major
Status
Closed
Resolution
Fixed
Assignee
James Yoon
Reporter
Alexey Novak
Created
2012-08-23T11:52:44.751-0400
Updated
2013-01-28T09:25:21.315-0500
Versions
N/A
Fixed Versions
N/A
Component
N/A

Description

When videoPlayer has a focus:

  • Up/Down keys should control video's sound
  • Left/Right keys should control scrubber
  • Enter/Space should Play/Pause the video

When sound controls container has a focus

  • Up/Down keys should control video's sound
  • Enter/Space should Mute/Unmute sound

When user selects and clicks on one of the language options in the Caption/Transcript menus the menu should hide and a focus should get back to the Caption/Transcript button depending on which menu was open.

Comments

  • Anastasia Cheetham commented 2012-08-27T15:23:47.633-0400

    James has spelled out all the details on the wiki, at
    http://wiki.fluidproject.org/display/fluid/Floe+video+player+interactions

  • Anastasia Cheetham commented 2012-08-28T15:23:37.666-0400

    James, the Video Player currently defines a number of "hot keys:"

    Shift+P = play/pause
    Shift+T = show/hide transcripts
    Shift+C = show/hide captions
    Shift+F = toggle full-screen mode
    Shift+up/down arrows = increase/decrease volume
    Shift+right/left arrows = fast-forward/rewind video

    These keystrokes can be customized by an integrator, so that a website could choose different keys for the functionality.

    Should we keep any of these, or scrap them all, or use different keys for the functionality, etc?

  • James Yoon commented 2012-08-28T16:07:05.476-0400

    I assume these hotkeys are for when the focus is on the video player container? (vs. specific interface element, or no focus on anything video player related)

    If so,

    Spacebar = play/pause
    Up/down arrows = increase/decrease volume
    Left/right arrows = scrub backward/forward

    Will edit further with thoughts on transcripts/captions/full-screen key bindings.

  • Anastasia Cheetham commented 2012-08-28T16:52:07.683-0400

    So James, just to clarify: You're saying we should scrap support for "Shift+X" and user your keystrokes instead (as opposed to supporting both sets). Is that correct?

    Also: Should the choice of keys be overridable by implementors? E.g. should OER Commons (for example) be able to choose different keys that the arrow keys for volume, for example?

  • Anastasia Cheetham commented 2012-08-28T16:58:36.899-0400

    Just another point, to refresh your memory: Way back after Tona came up with the wireframes, she suggested keyboard interactions:
    http://wiki.fluidproject.org/display/fluid/Video+Player+Questions
    I'm not sure if these are relevant anymore.

  • Anastasia Cheetham commented 2012-08-29T11:43:24.854-0400

    James commented in a verbal converstation that:

    • yes, the Shift+X interactions should be scrapped, and
    • yes, the integrator should be able to override the choice of keys
  • Anastasia Cheetham commented 2012-08-29T12:50:30.909-0400

    One more requirement from James:
    When focus firsts lands on the video element, the controls should NOT pop up. They should remain invisible until the user presses Tab again and focuses on the Play button.

    Because this is a bit trickier than it sounds, it will be addressed through a separate JIRA: FLUID-4785

  • Michelle D'Souza commented 2012-08-31T14:10:54.818-0400

    Merged into project repo demo branch at da3a7d421ccec70ff7f5f09bbd204fa563ab0c29