summaryrefslogtreecommitdiffstats
path: root/assets/js/player.js
diff options
context:
space:
mode:
authorTheFrenchGhosty <47571719+TheFrenchGhosty@users.noreply.github.com>2020-09-09 03:15:21 +0000
committerGitHub <noreply@github.com>2020-09-09 03:15:21 +0000
commit3ab3a5a2367a836f8a077ead22b0df4a5bd337f7 (patch)
treed18f8a8ee2d9426ca345983f1d2c191937a1fa35 /assets/js/player.js
parent4a6e920d0e4e2dd4b67006e203e5776893c3639b (diff)
parente3593fe197369c583fc6f91292ff8cc06f87eced (diff)
downloadinvidious-3ab3a5a2367a836f8a077ead22b0df4a5bd337f7.tar.gz
invidious-3ab3a5a2367a836f8a077ead22b0df4a5bd337f7.tar.bz2
invidious-3ab3a5a2367a836f8a077ead22b0df4a5bd337f7.zip
Merge pull request #713 from leonklingele/keydown-mediakeys-detection
js: add support to detect media keys in keydown handler
Diffstat (limited to 'assets/js/player.js')
-rw-r--r--assets/js/player.js34
1 files changed, 32 insertions, 2 deletions
diff --git a/assets/js/player.js b/assets/js/player.js
index 75370de6..edab35bf 100644
--- a/assets/js/player.js
+++ b/assets/js/player.js
@@ -231,11 +231,24 @@ function set_time_percent(percent) {
player.currentTime(newTime);
}
+function play() {
+ player.play();
+}
+
+function pause() {
+ player.pause();
+}
+
+function stop() {
+ player.pause();
+ player.currentTime(0);
+}
+
function toggle_play() {
if (player.paused()) {
- player.play();
+ play();
} else {
- player.pause();
+ pause();
}
}
@@ -341,9 +354,22 @@ window.addEventListener('keydown', e => {
switch (decoratedKey) {
case ' ':
case 'k':
+ case 'MediaPlayPause':
action = toggle_play;
break;
+ case 'MediaPlay':
+ action = play;
+ break;
+
+ case 'MediaPause':
+ action = pause;
+ break;
+
+ case 'MediaStop':
+ action = stop;
+ break;
+
case 'ArrowUp':
if (isPlayerFocused) {
action = increase_volume.bind(this, 0.1);
@@ -360,9 +386,11 @@ window.addEventListener('keydown', e => {
break;
case 'ArrowRight':
+ case 'MediaFastForward':
action = skip_seconds.bind(this, 5);
break;
case 'ArrowLeft':
+ case 'MediaTrackPrevious':
action = skip_seconds.bind(this, -5);
break;
case 'l':
@@ -394,9 +422,11 @@ window.addEventListener('keydown', e => {
break;
case 'N':
+ case 'MediaTrackNext':
action = next_video;
break;
case 'P':
+ case 'MediaTrackPrevious':
// TODO: Add support to play back previous video.
break;