summaryrefslogtreecommitdiff
path: root/internal/ui/static/js
diff options
context:
space:
mode:
authorGravatar Romain de Laage <romain.delaage@rdelaage.ovh> 2024-03-16 14:20:02 +0100
committerGravatar Frédéric Guillot <f@miniflux.net> 2024-03-17 11:53:30 -0700
commit00dabc1d3c86af88ece7a292ecc968f5d825749e (patch)
tree9369f3d606abf6e52257547631859bd772163e88 /internal/ui/static/js
parentb68ada396a342ef6ab447c2bb98d7c96aa643178 (diff)
downloadv2-00dabc1d3c86af88ece7a292ecc968f5d825749e.tar.gz
v2-00dabc1d3c86af88ece7a292ecc968f5d825749e.tar.zst
v2-00dabc1d3c86af88ece7a292ecc968f5d825749e.zip
feat: Media player: Conrol playback speed
fix #1845
Diffstat (limited to 'internal/ui/static/js')
-rw-r--r--internal/ui/static/js/bootstrap.js12
1 files changed, 10 insertions, 2 deletions
diff --git a/internal/ui/static/js/bootstrap.js b/internal/ui/static/js/bootstrap.js
index 0acef71c..0a9c2b78 100644
--- a/internal/ui/static/js/bootstrap.js
+++ b/internal/ui/static/js/bootstrap.js
@@ -152,11 +152,19 @@ document.addEventListener("DOMContentLoaded", () => {
});
// Save and resume media position
- const elements = document.querySelectorAll("audio[data-last-position],video[data-last-position]");
- elements.forEach((element) => {
+ const lastPositionElements = document.querySelectorAll("audio[data-last-position],video[data-last-position]");
+ lastPositionElements.forEach((element) => {
if (element.dataset.lastPosition) {
element.currentTime = element.dataset.lastPosition;
}
element.ontimeupdate = () => handlePlayerProgressionSave(element);
});
+
+ // Set media playback rate
+ const playbackRateElements = document.querySelectorAll("audio[data-playback-rate],video[data-playback-rate]");
+ playbackRateElements.forEach((element) => {
+ if (element.dataset.playbackRate) {
+ element.playbackRate = element.dataset.playbackRate;
+ }
+ });
});