skipToPreviousItem bug mitigation
This commit is contained in:
parent
590357dfcf
commit
942aa1b1b4
4 changed files with 14 additions and 8 deletions
|
@ -217,11 +217,11 @@ export class BrowserWindow {
|
||||||
res.send("Stopped")
|
res.send("Stopped")
|
||||||
break;
|
break;
|
||||||
case "next":
|
case "next":
|
||||||
BrowserWindow.win.webContents.executeJavaScript("if (MusicKit.getInstance().queue.nextPlayableItemIndex != -1) {MusicKit.getInstance().changeToMediaAtIndex(MusicKit.getInstance().queue.nextPlayableItemIndex);}")
|
BrowserWindow.win.webContents.executeJavaScript("if (MusicKit.getInstance().queue.nextPlayableItemIndex != -1 && MusicKit.getInstance().queue.nextPlayableItemIndex != null) {MusicKit.getInstance().changeToMediaAtIndex(MusicKit.getInstance().queue.nextPlayableItemIndex);}")
|
||||||
res.send("Next")
|
res.send("Next")
|
||||||
break;
|
break;
|
||||||
case "previous":
|
case "previous":
|
||||||
BrowserWindow.win.webContents.executeJavaScript("MusicKit.getInstance().skipToPreviousItem()")
|
BrowserWindow.win.webContents.executeJavaScript("if (MusicKit.getInstance().queue.previousPlayableItemIndex != -1 && MusicKit.getInstance().queue.previousPlayableItemIndex != null) {MusicKit.getInstance().changeToMediaAtIndex(MusicKit.getInstance().queue.previousPlayableItemIndex);}")
|
||||||
res.send("Previous")
|
res.send("Previous")
|
||||||
break;
|
break;
|
||||||
default: {
|
default: {
|
||||||
|
|
|
@ -182,12 +182,12 @@ export class wsapi {
|
||||||
response.message = "Unmuted";
|
response.message = "Unmuted";
|
||||||
break;
|
break;
|
||||||
case "next":
|
case "next":
|
||||||
this._win.webContents.executeJavaScript(`if (MusicKit.getInstance().queue.nextPlayableItemIndex != -1) {
|
this._win.webContents.executeJavaScript(`if (MusicKit.getInstance().queue.nextPlayableItemIndex != -1 && MusicKit.getInstance().queue.nextPlayableItemIndex != null) {
|
||||||
MusicKit.getInstance().changeToMediaAtIndex(MusicKit.getInstance().queue.nextPlayableItemIndex);}`);
|
MusicKit.getInstance().changeToMediaAtIndex(MusicKit.getInstance().queue.nextPlayableItemIndex);}`);
|
||||||
response.message = "Next";
|
response.message = "Next";
|
||||||
break;
|
break;
|
||||||
case "previous":
|
case "previous":
|
||||||
this._win.webContents.executeJavaScript(`MusicKit.getInstance().skipToPreviousItem()`);
|
this._win.webContents.executeJavaScript(`if (MusicKit.getInstance().queue.previousPlayableItemIndex != -1 && MusicKit.getInstance().queue.previousPlayableItemIndex != null) {MusicKit.getInstance().changeToMediaAtIndex(MusicKit.getInstance().queue.previousPlayableItemIndex)}`);
|
||||||
response.message = "Previous";
|
response.message = "Previous";
|
||||||
break;
|
break;
|
||||||
case "musickit-api":
|
case "musickit-api":
|
||||||
|
|
|
@ -127,13 +127,14 @@ const MusicKitInterop = {
|
||||||
},
|
},
|
||||||
|
|
||||||
next: () => {
|
next: () => {
|
||||||
if (MusicKit.getInstance().queue.nextPlayableItemIndex != -1)
|
if (MusicKit.getInstance().queue.nextPlayableItemIndex != -1 && MusicKit.getInstance().queue.nextPlayableItemIndex != null)
|
||||||
MusicKit.getInstance().changeToMediaAtIndex(MusicKit.getInstance().queue.nextPlayableItemIndex);
|
MusicKit.getInstance().changeToMediaAtIndex(MusicKit.getInstance().queue.nextPlayableItemIndex);
|
||||||
// MusicKit.getInstance().skipToNextItem().then(r => console.log(`[MusicKitInterop.next] Skipping to Next ${r}`));
|
// MusicKit.getInstance().skipToNextItem().then(r => console.log(`[MusicKitInterop.next] Skipping to Next ${r}`));
|
||||||
},
|
},
|
||||||
|
|
||||||
previous: () => {
|
previous: () => {
|
||||||
MusicKit.getInstance().skipToPreviousItem().then(r => console.log(`[MusicKitInterop.previous] Skipping to Previous ${r}`));
|
if (MusicKit.getInstance().queue.previousPlayableItemIndex != -1 && MusicKit.getInstance().queue.previousPlayableItemIndex != null)
|
||||||
|
MusicKit.getInstance().changeToMediaAtIndex(MusicKit.getInstance().queue.previousPlayableItemIndex);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1350,7 +1350,7 @@ const app = new Vue({
|
||||||
app.mk.seekToTime(0);
|
app.mk.seekToTime(0);
|
||||||
} else {
|
} else {
|
||||||
app.prevButtonBackIndicator = false;
|
app.prevButtonBackIndicator = false;
|
||||||
app.mk.skipToPreviousItem()
|
app.skipToPreviousItem()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
async getNowPlayingItemDetailed(target) {
|
async getNowPlayingItemDetailed(target) {
|
||||||
|
@ -3735,8 +3735,13 @@ const app = new Vue({
|
||||||
},
|
},
|
||||||
skipToNextItem(){
|
skipToNextItem(){
|
||||||
// app.mk.skipToNextItem() is buggy somehow so use this
|
// app.mk.skipToNextItem() is buggy somehow so use this
|
||||||
if (this.mk.queue.nextPlayableItemIndex != -1)
|
if (this.mk.queue.nextPlayableItemIndex != -1 && this.mk.queue.nextPlayableItemIndex != null)
|
||||||
this.mk.changeToMediaAtIndex(this.mk.queue.nextPlayableItemIndex);
|
this.mk.changeToMediaAtIndex(this.mk.queue.nextPlayableItemIndex);
|
||||||
|
},
|
||||||
|
skipToPreviousItem(){
|
||||||
|
// app.mk.skipToPreviousItem() is buggy somehow so use this
|
||||||
|
if (this.mk.queue.previousPlayableItemIndex != -1 && this.mk.queue.previousPlayableItemIndex != null)
|
||||||
|
this.mk.changeToMediaAtIndex(this.mk.queue.previousPlayableItemIndex);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue