thanks discord [support changing listen type]
This commit is contained in:
parent
284db988c9
commit
906ffee8bc
4 changed files with 35 additions and 2 deletions
|
@ -468,6 +468,8 @@
|
|||
"discordApplicationId_description": "the application id for {{discord}} rich presence (defaults to {{defaultId}})",
|
||||
"discordIdleStatus": "show rich presence idle status",
|
||||
"discordIdleStatus_description": "when enabled, update status while player is idle",
|
||||
"discordListening": "show status as listening",
|
||||
"discordListening_description": "show status as listening instead of playing. note that this currently breaks timer bar",
|
||||
"discordRichPresence": "{{discord}} rich presence",
|
||||
"discordRichPresence_description": "enable playback status in {{discord}} rich presence. Image keys are: {{icon}}, {{playing}}, and {{paused}} ",
|
||||
"discordUpdateInterval": "{{discord}} rich presence update interval",
|
||||
|
|
|
@ -45,7 +45,7 @@ export const useDiscordRpc = () => {
|
|||
state: (artists && `By ${artists}`) || 'Unknown artist',
|
||||
// I would love to use the actual type as opposed to hardcoding to 2,
|
||||
// but manually installing the discord-types package appears to break things
|
||||
type: 2,
|
||||
type: discordSettings.showAsListening ? 2 : 0,
|
||||
};
|
||||
|
||||
if (currentStatus === PlayerStatus.PLAYING) {
|
||||
|
@ -73,7 +73,13 @@ export const useDiscordRpc = () => {
|
|||
}
|
||||
|
||||
discordRpc?.setActivity(activity);
|
||||
}, [currentSong, currentStatus, discordSettings.enableIdle, discordSettings.showServerImage]);
|
||||
}, [
|
||||
currentSong,
|
||||
currentStatus,
|
||||
discordSettings.enableIdle,
|
||||
discordSettings.showAsListening,
|
||||
discordSettings.showServerImage,
|
||||
]);
|
||||
|
||||
useEffect(() => {
|
||||
const initializeDiscordRpc = async () => {
|
||||
|
|
|
@ -119,6 +119,29 @@ export const DiscordSettings = () => {
|
|||
postProcess: 'sentenceCase',
|
||||
}),
|
||||
},
|
||||
{
|
||||
control: (
|
||||
<Switch
|
||||
checked={settings.showAsListening}
|
||||
onChange={(e) => {
|
||||
setSettings({
|
||||
discord: {
|
||||
...settings,
|
||||
showAsListening: e.currentTarget.checked,
|
||||
},
|
||||
});
|
||||
}}
|
||||
/>
|
||||
),
|
||||
description: t('setting.discordListening', {
|
||||
context: 'description',
|
||||
postProcess: 'sentenceCase',
|
||||
}),
|
||||
isHidden: !isElectron(),
|
||||
title: t('setting.discordListening', {
|
||||
postProcess: 'sentenceCase',
|
||||
}),
|
||||
},
|
||||
];
|
||||
|
||||
return <SettingsSection options={discordOptions} />;
|
||||
|
|
|
@ -181,6 +181,7 @@ export interface SettingsState {
|
|||
clientId: string;
|
||||
enableIdle: boolean;
|
||||
enabled: boolean;
|
||||
showAsListening: boolean;
|
||||
showServerImage: boolean;
|
||||
updateInterval: number;
|
||||
};
|
||||
|
@ -306,6 +307,7 @@ const initialState: SettingsState = {
|
|||
clientId: '1165957668758900787',
|
||||
enableIdle: false,
|
||||
enabled: false,
|
||||
showAsListening: false,
|
||||
showServerImage: false,
|
||||
updateInterval: 15,
|
||||
},
|
||||
|
|
Reference in a new issue