TrackButton

The base class for buttons that toggle specific track types (e.g. subtitles).

Constructor

new TrackButton(player, optionsopt)

Creates an instance of this class.

Parameters:
Name Type Attributes Description
player Player

The Player that this class should be attached to.

options Object <optional>

The key/value store of player options.

Extends

Members

protected hideThreshold_ :Number

Hide the menu if the number of items is less than or equal to this threshold. This defaults to 0 and whenever we add items which can be hidden to the menu we'll increment it. We list it here because every time we run createMenu we need to reset the value.

Inherited From:

Methods

blur()

Remove the focus from the actual button, not this element

Inherited From:

buildCSSClass() → {string}

Builds the default DOM className.

Returns:
string -

The DOM className for this object.

Inherited From:

buildWrapperCSSClass() → {string}

Allow sub components to stack CSS class names for the wrapper element

Returns:
string -

The constructed wrapper DOM className

Inherited From:

controlText(textopt, elopt) → {string}

Get or set the localized control text that will be used for accessibility.

NOTE: This will come from the internal menuButton_ element.

Parameters:
Name Type Attributes Default Description
text string <optional>

Control text for element.

el Element <optional>
this.menuButton_.el()

Element to set the title on.

Returns:
string -
  • The control text when getting
Inherited From:

createEl() → {Element}

Create the MenuButtonss DOM element.

Returns:
Element -

The element that gets created.

Inherited From:

abstract createItems()

Create the list of menu items. Specific to each subclass.

Inherited From:

createMenu() → {Menu}

Create the menu and add all items to it.

Returns:
Menu -

The constructed menu

Inherited From:

disable()

Disable the MenuButton. Don't allow it to be clicked.

Inherited From:

enable()

Enable the MenuButton. Allow it to be clicked.

Inherited From:

focus()

Set the focus to the actual button, not to this element

Inherited From:

handleBlur(event)

Called when a MenuButton loses focus. Turns off the listener for keydown events. Which Stops this.handleKeyPress from getting called.

Parameters:
Name Type Description
event EventTarget~Event

The blur event that caused this function to be called.

Listens to Events:
  • event:blur
Inherited From:

handleClick(event)

Handle a click on a MenuButton. See ClickableComponent#handleClick for instances where this is called.

Parameters:
Name Type Description
event EventTarget~Event

The keydown, tap, or click event that caused this function to be called.

Listens to Events:
  • event:tap
  • event:click
Inherited From:

handleFocus(event)

This gets called when a MenuButton gains focus via a focus event. Turns on listening for keydown events. When they happen it calls this.handleKeyPress.

Parameters:
Name Type Description
event EventTarget~Event

The focus event that caused this function to be called.

Listens to Events:
  • event:focus
Inherited From:

handleKeyPress(event)

Handle tab, escape, down arrow, and up arrow keys for MenuButton. See ClickableComponent#handleKeyPress for instances where this is called.

Parameters:
Name Type Description
event EventTarget~Event

The keydown event that caused this function to be called.

Listens to Events:
  • event:keydown
Inherited From:

handleSubmenuKeyPress(event)

Handle a keydown event on a sub-menu. The listener for this is added in the constructor.

Parameters:
Name Type Description
event EventTarget~Event

Key press event

Listens to Events:
  • event:keydown
Inherited From:

pressButton()

Put the current MenuButton into a pressed state.

Inherited From:

unpressButton()

Take the current MenuButton out of a pressed state.

Inherited From:

update()

Update the menu based on the current state of its items.

Inherited From: