Added more customizability to the Discord Rich Presence Plugin on Cider (Buttons)
With this PR, people can choose whether to hide buttons on their rich presence (Listen on Cider & View on Apple Music).
This commit is contained in:
parent
7911ffdba9
commit
2d3a449bd7
4 changed files with 44 additions and 18 deletions
|
@ -371,6 +371,7 @@
|
|||
"settings.header.connectivity.discordRPC.cider": "Display as 'Cider'",
|
||||
"settings.header.connectivity.discordRPC.appleMusic": "Display as 'Apple Music'",
|
||||
"settings.option.connectivity.discordRPC.clearOnPause": "Clear Discord Rich Presence on Pause",
|
||||
"settings.option.connectivity.discordRPC.hideButtons": "Hide buttons on Discord Rich Presence",
|
||||
"settings.option.connectivity.lastfmScrobble": "Last.fm Scrobbling",
|
||||
"settings.option.connectivity.lastfmScrobble.delay": "Last.fm Scrobble Delay (%)",
|
||||
"settings.option.connectivity.lastfmScrobble.nowPlaying": "Enable Last.fm Now Playing",
|
||||
|
|
|
@ -371,6 +371,7 @@
|
|||
"settings.header.connectivity.discordRPC.cider": "Display as 'Cider'",
|
||||
"settings.header.connectivity.discordRPC.appleMusic": "Display as 'Apple Music'",
|
||||
"settings.option.connectivity.discordRPC.clearOnPause": "Clear Discord Rich Presence on Pause",
|
||||
"settings.option.connectivity.discordRPC.hideButtons": "Hide buttons on Discord Rich Presence",
|
||||
"settings.option.connectivity.lastfmScrobble": "Last.fm Scrobbling",
|
||||
"settings.option.connectivity.lastfmScrobble.delay": "Last.fm Scrobble Delay (%)",
|
||||
"settings.option.connectivity.lastfmScrobble.nowPlaying": "Enable Last.fm Now Playing",
|
||||
|
|
|
@ -135,11 +135,13 @@ export default class DiscordRichPresence {
|
|||
delete activity.largeImageText
|
||||
}
|
||||
|
||||
activity.buttons.forEach((key: { label: string, url: string }, _v: Number) => {
|
||||
if (!DiscordRichPresence._store.general.discord_rpc_hide_buttons) {
|
||||
activity.buttons.forEach((key: { label: string; url: string }, _v: Number) => {
|
||||
if (key.url.includes('undefined') || key.url.includes('no-id-found')) {
|
||||
activity.buttons.splice(key, 1);
|
||||
}
|
||||
})
|
||||
});
|
||||
}
|
||||
return activity
|
||||
}
|
||||
|
||||
|
@ -161,6 +163,18 @@ export default class DiscordRichPresence {
|
|||
return;
|
||||
}
|
||||
|
||||
// Check if show buttons is (true) or (false)
|
||||
if (DiscordRichPresence._store.general.discord_rpc_hide_buttons) {
|
||||
this._activity = {
|
||||
details: attributes.name,
|
||||
state: `${attributes.artistName ? `by ${attributes.artistName}` : ''}`,
|
||||
startTimestamp: Date.now() - (attributes?.durationInMillis - attributes?.remainingTime),
|
||||
endTimestamp: attributes.endTime,
|
||||
largeImageKey: attributes?.artwork?.url?.replace('{w}', '1024').replace('{h}', '1024'),
|
||||
largeImageText: attributes.albumName,
|
||||
instance: false
|
||||
};
|
||||
} else {
|
||||
this._activity = {
|
||||
details: attributes.name,
|
||||
state: `${attributes.artistName ? `by ${attributes.artistName}` : ''}`,
|
||||
|
@ -170,10 +184,11 @@ export default class DiscordRichPresence {
|
|||
largeImageText: attributes.albumName,
|
||||
instance: false, // Whether the activity is in a game session
|
||||
buttons: [
|
||||
{label: "Listen on Cider", url: attributes.url.cider},
|
||||
{label: "View on Apple Music", url: attributes.url.appleMusic},
|
||||
{ label: 'Listen on Cider', url: attributes.url.cider },
|
||||
{ label: 'View on Apple Music', url: attributes.url.appleMusic }
|
||||
] //To change attributes.url => preload/cider-preload.js
|
||||
};
|
||||
}
|
||||
|
||||
this._activity = this.filterActivity(this._activity, attributes)
|
||||
|
||||
|
|
|
@ -637,6 +637,15 @@
|
|||
<input type="checkbox" v-model="app.cfg.general.discord_rpc_clear_on_pause" switch/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="md-option-line" v-show="app.cfg.general.discord_rpc != 0">
|
||||
<div class="md-option-segment">
|
||||
{{$root.getLz('settings.option.connectivity.discordRPC.hideButtons')}}<br>
|
||||
<small>({{$root.getLz('settings.option.visual.hardwareAcceleration.description')}})</small>
|
||||
</div>
|
||||
<div class="md-option-segment md-option-segment_auto">
|
||||
<input type="checkbox" v-model="app.cfg.general.discord_rpc_hide_buttons" switch/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="md-option-line">
|
||||
<div class="md-option-segment">
|
||||
{{$root.getLz('settings.option.connectivity.lastfmScrobble')}}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue