playable
Version:
Video player based on HTML5Video
139 lines (138 loc) • 4.48 kB
TypeScript
import { IFullScreenAPI, IFullScreenManager } from './types';
import { IEventEmitter } from '../event-emitter/types';
import { IPlaybackEngine } from '../playback-engine/types';
import { IPlayerConfig } from '../../core/config';
import { IRootContainer } from '../root-container/types';
declare class FullScreenManager implements IFullScreenManager {
static moduleName: string;
static dependencies: string[];
private _eventEmitter;
private _engine;
private _helper;
private _element;
private _exitFullScreenOnEnd;
private _enterFullScreenOnPlay;
private _exitFullScreenOnPause;
private _pauseVideoOnFullScreenExit;
private _isEnabled;
private _unbindEvents;
constructor({ eventEmitter, engine, rootContainer, config, }: {
engine: IPlaybackEngine;
eventEmitter: IEventEmitter;
rootContainer: IRootContainer;
config: IPlayerConfig;
});
private _onChange;
private _bindEvents;
private _exitOnEnd;
private _enterOnPlayRequested;
private _exitOnPauseRequested;
private _processNextStateFromEngine;
/**
* Allow player try to exit full screen on pause
* @example
* player.play();
* player.enableExitFullScreenOnPause();
* player.enterFullScreen();
* console.log(player.isInFullScreen) // true
* player.pause();
* console.log(player.isInFullScreen) // false
*/
enableExitFullScreenOnPause(): void;
/**
* Disallow player to exit full screen on pause
* @example
* player.play();
* player.disableExitFullScreenOnPause();
* player.enterFullScreen();
* console.log(player.isInFullScreen) // true
* player.pause();
* console.log(player.isInFullScreen) // true
*/
disableExitFullScreenOnPause(): void;
/**
* Allow player try to exit full screen on end
* @example
* player.play();
* player.enableExitFullScreenOnEnd();
* player.enterFullScreen();
* console.log(player.isInFullScreen) // true
* console.log(player.isEnded); // true
* console.log(player.isInFullScreen) // false
*/
enableExitFullScreenOnEnd(): void;
/**
* Disallow player try to exit full screen on end
* @example
* player.play();
* player.disableExitFullScreenOnEnd();
* player.enterFullScreen();
* console.log(player.isInFullScreen) // true
* console.log(player.isEnded); // true
* console.log(player.isInFullScreen) // true
*/
disableExitFullScreenOnEnd(): void;
/**
* Allow player try to exit full screen on end
* @example
* player.enableEnterFullScreenOnPlay();
* console.log(player.isInFullScreen) // false
* player.play();
* console.log(player.isInFullScreen) // true
*/
enableEnterFullScreenOnPlay(): void;
/**
* Disallow player try to exit full screen on end
* @example
* player.disableEnterFullScreenOnPlay();
* console.log(player.isInFullScreen) // false
* player.play();
* console.log(player.isInFullScreen) // false
*/
disableEnterFullScreenOnPlay(): void;
/**
* Allow player try to exit full screen on end
* @example
* player.play();
* player.enablePauseVideoOnFullScreenExit();
* player.enterFullScreen();
* console.log(player.isInFullScreen) // true
* player.pause();
* console.log(player.isInFullScreen) // false
*/
enablePauseVideoOnFullScreenExit(): void;
/**
* Disallow player try to exit full screen on end
* @example
* player.play();
* player.enablePauseVideoOnFullScreenExit();
* player.enterFullScreen();
* console.log(player.isInFullScreen) // true
* player.pause();
* console.log(player.isInFullScreen) // true
*/
disablePauseVideoOnFullScreenExit(): void;
/**
* Player would try to enter fullscreen mode.
* Behavior of fullscreen mode on different platforms may differ.
* @example
* player.enterFullScreen();
*/
enterFullScreen(): void;
/**
* Player would try to exit fullscreen mode.
* @example
* player.exitFullScreen();
*/
exitFullScreen(): void;
/**
* Return true if player is in full screen
* @example
* console.log(player.isInFullScreen); // false
*/
get isInFullScreen(): boolean;
get isEnabled(): boolean;
destroy(): void;
}
export { IFullScreenAPI };
export default FullScreenManager;