Files
ArtPlayer/packages/artplayer/src/player/fullscreenWebMix.js
T
2019-04-06 09:15:29 +08:00

42 lines
1.2 KiB
JavaScript

export default function fullscreenWebMix(art, player) {
const {
template: { $player },
} = art;
Object.defineProperty(player, 'fullscreenWebState', {
get: () => $player.classList.contains('artplayer-web-fullscreen'),
});
Object.defineProperty(player, 'fullscreenWebEnabled', {
value: () => {
if (player.fullscreenState) {
player.fullscreenExit();
}
$player.classList.add('artplayer-web-fullscreen');
player.aspectRatio('default');
art.emit('fullscreenWeb:enabled');
},
});
Object.defineProperty(player, 'fullscreenWebExit', {
value: () => {
if (player.fullscreenWebState) {
player.fullscreenExit();
$player.classList.remove('artplayer-web-fullscreen');
player.aspectRatio('default');
art.emit('fullscreenWeb:exit');
}
},
});
Object.defineProperty(player, 'fullscreenWebToggle', {
value: () => {
if (player.fullscreenWebState) {
player.fullscreenWebExit();
} else {
player.fullscreenWebEnabled();
}
},
});
}