stop discord from setting activity on no title
This commit is contained in:
parent
664303a180
commit
0aab392541
2 changed files with 22 additions and 16 deletions
|
@ -198,7 +198,7 @@ export default class DiscordRPC {
|
|||
* @param attributes Music Attributes
|
||||
*/
|
||||
private setActivity(attributes: any) {
|
||||
if (!this._client) {
|
||||
if (!this._client || !attributes) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -219,6 +219,10 @@ export default class DiscordRPC {
|
|||
return;
|
||||
}
|
||||
|
||||
if (!activity) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!attributes.status && this._utils.getStoreValue("connectivity.discord_rpc.clear_on_pause")) {
|
||||
this._client.clearActivity();
|
||||
} else if (activity && this._activityCache !== activity) {
|
||||
|
@ -240,25 +244,16 @@ export default class DiscordRPC {
|
|||
viewOnOtherMusicServices: "songLink",
|
||||
};
|
||||
|
||||
const firstActivity = {
|
||||
label: this._utils.getLocale(this._utils.getStoreValue("general.language"), `settings.option.connectivity.discordRPC.buttons.${this._utils.getStoreValue("connectivity.discord_rpc.activity.buttons.first")}`),
|
||||
url: activityUrls[this._utils.getStoreValue("connectivity.discord_rpc.activity.buttons.first")],
|
||||
};
|
||||
const secondActivity = {
|
||||
label: this._utils.getLocale(this._utils.getStoreValue("general.language"), `settings.option.connectivity.discordRPC.buttons.${this._utils.getStoreValue("connectivity.discord_rpc.activity.buttons.second")}`),
|
||||
url: activityUrls[this._utils.getStoreValue("connectivity.discord_rpc.activity.buttons.second")],
|
||||
};
|
||||
const firstActivity = this._utils.getLocale(this._utils.getStoreValue("general.language"), `settings.option.connectivity.discordRPC.buttons.${this._utils.getStoreValue("connectivity.discord_rpc.activity.buttons.first")}`);
|
||||
const secondActivity = this._utils.getLocale(this._utils.getStoreValue("general.language"), `settings.option.connectivity.discordRPC.buttons.${this._utils.getStoreValue("connectivity.discord_rpc.activity.buttons.second")}`);
|
||||
|
||||
if (this._utils.getStoreValue("connectivity.discord_rpc.activity.buttons.second") != "disabled") {
|
||||
activity.buttons = [
|
||||
{ label: firstActivity.label, url: attributes.url[firstActivity.url] },
|
||||
{ label: secondActivity.label, url: attributes.url[secondActivity.url] },
|
||||
{ label: firstActivity, url: attributes.url[activityUrls[this._utils.getStoreValue("connectivity.discord_rpc.activity.buttons.first")]] },
|
||||
{ label: secondActivity, url: attributes.url[activityUrls[this._utils.getStoreValue("connectivity.discord_rpc.activity.buttons.second")]] },
|
||||
];
|
||||
console.log(secondActivity);
|
||||
console.log("Its not disabled");
|
||||
} else {
|
||||
activity.buttons = [{ label: firstActivity.label, url: attributes.url[firstActivity.url] }];
|
||||
console.log("Its disabled");
|
||||
activity.buttons = [{ label: firstActivity, url: attributes.url[activityUrls[this._utils.getStoreValue("connectivity.discord_rpc.activity.buttons.first")]] }];
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -328,6 +323,10 @@ export default class DiscordRPC {
|
|||
if (!activity.largeImageText || activity.largeImageText.length < 2) {
|
||||
delete activity.largeImageText;
|
||||
}
|
||||
|
||||
if (activity.status === "" || activity.details === "") {
|
||||
return false;
|
||||
}
|
||||
return activity;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -9,6 +9,7 @@ const MusicKitInterop = {
|
|||
/* MusicKit.Events.playbackStateDidChange */
|
||||
MusicKit.getInstance().addEventListener(MusicKit.Events.playbackStateDidChange, () => {
|
||||
const attributes = MusicKitInterop.getAttributes();
|
||||
if (!attributes) return;
|
||||
if (MusicKitInterop.filterTrack(attributes, true, false)) {
|
||||
global.ipcRenderer.send("playbackStateDidChange", attributes);
|
||||
global.ipcRenderer.send("wsapi-updatePlaybackState", attributes);
|
||||
|
@ -18,6 +19,7 @@ const MusicKitInterop = {
|
|||
/* MusicKit.Events.playbackProgressDidChange */
|
||||
MusicKit.getInstance().addEventListener(MusicKit.Events.playbackProgressDidChange, async () => {
|
||||
const attributes = MusicKitInterop.getAttributes();
|
||||
if (!attributes) return;
|
||||
// wsapi call
|
||||
ipcRenderer.send("wsapi-updatePlaybackState", attributes);
|
||||
// lastfm call
|
||||
|
@ -34,8 +36,8 @@ const MusicKitInterop = {
|
|||
|
||||
/* MusicKit.Events.nowPlayingItemDidChange */
|
||||
MusicKit.getInstance().addEventListener(MusicKit.Events.nowPlayingItemDidChange, async () => {
|
||||
console.debug("[cider:preload] nowPlayingItemDidChange");
|
||||
const attributes = MusicKitInterop.getAttributes();
|
||||
if (!attributes) return;
|
||||
attributes.primaryArtist = app.cfg.connectivity.lastfm.remove_featured ? await this.fetchSongRelationships() : attributes.artistName;
|
||||
|
||||
global.ipcRenderer.send("nowPlayingItemDidChange", attributes);
|
||||
|
@ -54,6 +56,7 @@ const MusicKitInterop = {
|
|||
await this.sleep(750);
|
||||
MusicKit.getInstance().playbackRate = app.cfg.audio.playbackRate;
|
||||
}
|
||||
console.debug("[cider:preload] nowPlayingItemDidChange");
|
||||
});
|
||||
|
||||
/* MusicKit.Events.authorizationStatusDidChange */
|
||||
|
@ -159,6 +162,10 @@ const MusicKitInterop = {
|
|||
attributes.currentPlaybackProgress = currentPlaybackProgress ?? 0;
|
||||
attributes.startTime = Date.now();
|
||||
attributes.endTime = Math.round(attributes?.playParams?.id === cache.playParams.id ? Date.now() + attributes?.remainingTime : attributes?.startTime + attributes?.durationInMillis);
|
||||
|
||||
if (attributes.name === "no-title-found") {
|
||||
return;
|
||||
}
|
||||
return attributes;
|
||||
},
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue