mirror of
https://gitlab.com/futo-org/fcast.git
synced 2025-06-24 21:25:23 +00:00
Hide speed menu when clicking outside element
This commit is contained in:
parent
4beb3ded54
commit
e1a1ca7743
1 changed files with 15 additions and 1 deletions
|
@ -585,14 +585,20 @@ playerCtrlFullscreen.onclick = () => { playerCtrlStateUpdate(PlayerControlEvent.
|
||||||
|
|
||||||
playbackRates.forEach(r => {
|
playbackRates.forEach(r => {
|
||||||
const entry = document.getElementById(`speedMenuEntry_${r}`);
|
const entry = document.getElementById(`speedMenuEntry_${r}`);
|
||||||
entry.onclick = () => { player.setPlaybackRate(parseFloat(r)); playerCtrlStateUpdate(PlayerControlEvent.SetPlaybackRate); };
|
entry.onclick = () => {
|
||||||
|
player.setPlaybackRate(parseFloat(r));
|
||||||
|
playerCtrlStateUpdate(PlayerControlEvent.SetPlaybackRate);
|
||||||
|
playerCtrlStateUpdate(PlayerControlEvent.ToggleSpeedMenu);
|
||||||
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
videoElement.onclick = () => {
|
videoElement.onclick = () => {
|
||||||
|
if (!playerCtrlSpeedMenuShown) {
|
||||||
if (player.isPaused()) {
|
if (player.isPaused()) {
|
||||||
playerCtrlStateUpdate(PlayerControlEvent.Play);
|
playerCtrlStateUpdate(PlayerControlEvent.Play);
|
||||||
} else {
|
} else {
|
||||||
playerCtrlStateUpdate(PlayerControlEvent.Pause);
|
playerCtrlStateUpdate(PlayerControlEvent.Pause);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
videoElement.ondblclick = () => { playerCtrlStateUpdate(PlayerControlEvent.ToggleFullscreen); };
|
videoElement.ondblclick = () => { playerCtrlStateUpdate(PlayerControlEvent.ToggleFullscreen); };
|
||||||
|
@ -630,6 +636,14 @@ document.onmousemove = function() {
|
||||||
|
|
||||||
window.onresize = () => { playerCtrlStateUpdate(PlayerControlEvent.TimeUpdate); };
|
window.onresize = () => { playerCtrlStateUpdate(PlayerControlEvent.TimeUpdate); };
|
||||||
|
|
||||||
|
// Listener for hiding speed menu when clicking outside element
|
||||||
|
document.addEventListener('click', (event: MouseEvent) => {
|
||||||
|
const node = event.target as Node;
|
||||||
|
if (playerCtrlSpeedMenuShown && !playerCtrlSpeed.contains(node) && !playerCtrlSpeedMenu.contains(node)){
|
||||||
|
playerCtrlStateUpdate(PlayerControlEvent.ToggleSpeedMenu);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
// Add the keydown event listener to the document
|
// Add the keydown event listener to the document
|
||||||
const skipInterval = 10;
|
const skipInterval = 10;
|
||||||
const volumeIncrement = 0.1;
|
const volumeIncrement = 0.1;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue