/**
* @Datei fullscreen-toggle.js
* /
importiere Button aus '../button.js';
importiere Komponente aus '../component.js';
dokument aus 'global/document' importieren;
/**
* Video im Vollbildmodus umschalten
*
* @erweitert Button
* /
class FullscreenToggle extends Button {
/**
* Erzeugt eine Instanz dieser Klasse.
*
* @param {Player} Spieler
* Der `Player`, dem diese Klasse zugeordnet werden soll.
*
* @param {Object} [Optionen]
* Der Schlüssel/Wertspeicher der Playeroptionen.
* /
constructor(spieler, optionen) {
super(Spieler, Optionen);
this.on(player, 'fullscreenchange', (e) => this.handleFullscreenChange(e));
if (document[player.fsApi_.fullscreenEnabled] === false) {
this.disable();
}
}
/**
* Erzeugt den Standard-DOM "Klassenname".
*
* @return {string}
* Der DOM `className` für dieses Objekt.
* /
buildCSSClass() {
return `vjs-fullscreen-control ${super.buildCSSClass()}`;
}
/**
* Behandelt den Vollbildwechsel im Player und ändert den Kontrolltext entsprechend.
*
* @param {EventTarget~Event} [event]
* Das Ereignis {@link Player#fullscreenchange}, das diese Funktion ausgelöst hat
* genannt.
*
* @listens Player#fullscreenchange
* /
handleFullscreenChange(event) {
if (this.player_.isFullscreen()) {
this.controlText('Nicht-Vollbild');
} else {
this.controlText('Fullscreen');
}
}
/**
* Diese Funktion wird aufgerufen, wenn ein `FullscreenToggle` "angeklickt" wird. Sehen
* {@link ClickableComponent} für genauere Informationen darüber, was ein Klick sein kann.
*
* @param {EventTarget~Event} [event]
* Das `Keydown`-, `Tap`- oder `Click`-Ereignis, das diese Funktion ausgelöst hat
* genannt.
*
* @listens tap
* @listens klicken
* /
handleClick(event) {
if (!this.player_.isFullscreen()) {
this.player_.requestFullscreen();
} else {
this.player_.exitFullscreen();
}
}
}
/**
* Der Text, der über den `FullscreenToggle`-Steuerelementen angezeigt werden soll. Für die Lokalisierung hinzugefügt.
*
* @Typ {String}
* @privat
* /
FullscreenToggle.prototype.controlText_ = 'Fullscreen';
Component.registerComponent('FullscreenToggle', FullscreenToggle);
standardmäßig FullscreenToggle exportieren;