PlaybackRateMenuButton(player, optionsopt)

The component for controlling the playback rate.

new PlaybackRateMenuButton(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.

Overrides:

buildWrapperCSSClass() → {string}

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

Returns:
string -

The constructed wrapper DOM className

Overrides:

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 Component's DOM element

Returns:
Element -

The element that was created.

Overrides:

abstract createItems()

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

Inherited From:

createMenu() → {Menu}

Create the playback rate menu

Returns:
Menu -

Menu object populated with PlaybackRateMenuItems

Overrides:

disable()

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

Inherited From:

dispose()

Dispose of the menu-button and all child components.

Overrides:

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:

handleClick(eventopt)

This gets called when an PlaybackRateMenuButton is "clicked". See ClickableComponent for more detailed information on what a click can be.

Parameters:
Name Type Attributes Description
event EventTarget~Event <optional>

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

Listens to Events:
  • event:tap
  • event:click
Overrides:

handleKeyDown(event)

Handle tab, escape, down arrow, and up arrow keys for MenuButton. See ClickableComponent#handleKeyDown 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:

handleMenuKeyUp(event)

Handle a keyup event on a MenuButton. The listener for this is added in the constructor.

Parameters:
Name Type Description
event EventTarget~Event

Key press event

Listens to Events:
  • event:keyup
Inherited From:

handleMouseLeave(event)

Handle mouseleave for MenuButton.

Parameters:
Name Type Description
event EventTarget~Event

The mouseleave event that caused this function to be called.

Listens to Events:
  • event:mouseleave
Inherited From:

handleSubmenuKeyDown(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:

handleSubmenuKeyPress(event)

This method name now delegates to handleSubmenuKeyDown. This means anyone calling handleSubmenuKeyPress will not see their method calls stop working.

Parameters:
Name Type Description
event EventTarget~Event

The event that caused this function to be called.

Inherited From:

playbackRates() → {Array}

Get possible playback rates

Returns:
Array -

All possible playback rates

playbackRateSupported() → {boolean}

Get whether playback rates is supported by the tech and an array of playback rates exists

Returns:
boolean -

Whether changing playback rate is supported

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:

updateARIAAttributes()

Updates ARIA accessibility attributes

updateLabel(eventopt)

Update button label when rate changed

Parameters:
Name Type Attributes Description
event EventTarget~Event <optional>

The event that caused this function to run.

Listens to Events:

updateVisibility(eventopt)

Hide playback rate controls when they're no playback rate options to select

Parameters:
Name Type Attributes Description
event EventTarget~Event <optional>

The event that caused this function to run.

Listens to Events: