playable
Version:
Video player based on HTML5Video
48 lines (47 loc) • 1.54 kB
TypeScript
import View from './volume.view';
import { IEventEmitter } from '../../../event-emitter/types';
import { ITooltipService } from '../../core/tooltip/types';
import { IVolumeControl } from './types';
import { ITextMap } from '../../../text-map/types';
import { IPlaybackEngine } from '../../../playback-engine/types';
import { IThemeService } from '../../core/theme';
export default class VolumeControl implements IVolumeControl {
static moduleName: string;
static View: typeof View;
static dependencies: string[];
private _engine;
private _eventEmitter;
private _textMap;
private _tooltipService;
private _theme;
private _buttonInterceptor;
private _inputInterceptor;
private _unbindEvents;
view: View;
isHidden: boolean;
constructor({ engine, eventEmitter, textMap, tooltipService, theme, }: {
eventEmitter: IEventEmitter;
engine: IPlaybackEngine;
textMap: ITextMap;
tooltipService: ITooltipService;
theme: IThemeService;
});
getElement(): HTMLElement;
private _initUI;
private _initInterceptor;
private _destroyInterceptor;
private _bindEvents;
private _bindCallbacks;
private _broadcastDragStart;
private _broadcastDragEnd;
private _changeVolumeLevel;
private _toggleMuteState;
private _getVolumeLevelFromWheel;
private _getVolumeLevelFromInput;
private _updateSoundState;
private _setVolumeLevel;
private _setMuteState;
hide(): void;
show(): void;
destroy(): void;
}