mirror of
https://github.com/TeamPiped/Piped.git
synced 2024-08-14 23:57:27 +00:00
Implement basic manual skipping
This commit is contained in:
parent
90ef42abef
commit
bbc066c514
1 changed files with 25 additions and 9 deletions
|
@ -88,7 +88,7 @@ export default {
|
||||||
this.hotkeysPromise.then(() => {
|
this.hotkeysPromise.then(() => {
|
||||||
var self = this;
|
var self = this;
|
||||||
this.$hotkeys(
|
this.$hotkeys(
|
||||||
"f,m,j,k,l,c,space,up,down,left,right,0,1,2,3,4,5,6,7,8,9,shift+n,shift+,,shift+.",
|
"f,m,j,k,l,c,space,s,up,down,left,right,0,1,2,3,4,5,6,7,8,9,shift+n,shift+,,shift+.",
|
||||||
function (e, handler) {
|
function (e, handler) {
|
||||||
const videoEl = self.$refs.videoEl;
|
const videoEl = self.$refs.videoEl;
|
||||||
switch (handler.key) {
|
switch (handler.key) {
|
||||||
|
@ -118,6 +118,27 @@ export default {
|
||||||
else videoEl.pause();
|
else videoEl.pause();
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
break;
|
break;
|
||||||
|
case "s":
|
||||||
|
{
|
||||||
|
const time = videoEl.currentTime;
|
||||||
|
const selectedSkip = self.getPreferenceDict("selectedSkip");
|
||||||
|
if (self.sponsors && self.sponsors.segments) {
|
||||||
|
for (const segment of self.sponsors.segments) {
|
||||||
|
const end = segment.segment[1];
|
||||||
|
if (time >= segment.segment[0] && time < end) {
|
||||||
|
switch (selectedSkip[segment.category]) {
|
||||||
|
case "skip":
|
||||||
|
case "manual":
|
||||||
|
console.log("Manually skipped segment at " + time);
|
||||||
|
videoEl.currentTime = end;
|
||||||
|
segment.skipped = true;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
case "up":
|
case "up":
|
||||||
videoEl.volume = Math.min(videoEl.volume + 0.05, 1);
|
videoEl.volume = Math.min(videoEl.volume + 0.05, 1);
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
|
@ -361,16 +382,11 @@ export default {
|
||||||
if (!segment.skipped || this.selectedAutoLoop) {
|
if (!segment.skipped || this.selectedAutoLoop) {
|
||||||
const end = segment.segment[1];
|
const end = segment.segment[1];
|
||||||
if (time >= segment.segment[0] && time < end) {
|
if (time >= segment.segment[0] && time < end) {
|
||||||
switch (this.getPreferenceDict("selectedSkip")[segment.category]) {
|
if (this.getPreferenceDict("selectedSkip")[segment.category] == "skip") {
|
||||||
case "skip":
|
console.log("Skipped segment at " + time);
|
||||||
console.log("Skipped segment at " + time);
|
videoEl.currentTime = end;
|
||||||
videoEl.currentTime = end;
|
|
||||||
break;
|
|
||||||
// show and off cases are do-nothing
|
|
||||||
// TODO: Manual skip
|
|
||||||
}
|
}
|
||||||
segment.skipped = true;
|
segment.skipped = true;
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue