Playback Notifications Now Configurable and available on all systems

DiscordRPC swapped to bool for clear activity
Updated store file to bools and added playback notification
Updated en_GB to fun language, as from what I've seen none of the US English words are different in GB English
This commit is contained in:
Core 2022-01-29 12:37:36 +00:00
parent 3a9bce5f26
commit 499659469e
No known key found for this signature in database
GPG key ID: FE9BF1B547F8F3C6
7 changed files with 625 additions and 579 deletions

View file

@ -1,10 +1,10 @@
{
// i18n Info
"i18n.languageName": "English (UK)", // name of language in native language
"i18n.languageName": "English (UK) (Roadman)", // name of language in native language
"i18n.languageNameEnglish": "English (UK)", // name of language in English
"i18n.category": "main", // main = real language, fun = fun community languages
"i18n.authors": "", // Authors, if you contribute to this file feel free to add your name seperated with a space
"i18n.category": "fun", // main = real language, fun = fun community languages
"i18n.authors": "Core", // Authors, if you contribute to this file feel free to add your name seperated with a space
"date.format": "${d} ${m}, ${y}",
"home.friendsListeningTo": "Bruv's Listening To"
"home.friendsListeningTo": "Mandems Listening To"
}

View file

@ -244,6 +244,7 @@
"settings.header.connectivity": "Connectivity",
"settings.header.connectivity.description": "Adjust the connectivity settings for Cider.",
"settings.option.connectivity.discordRPC": "Discord Rich Presence", // Dropdown
"settings.option.connectivity.playbackNotifications": "Playback Notifications", // Toggle
// Refer to term.disabled for the disabled option
"settings.header.connectivity.discordRPC.cider": "Display as 'Cider'",
"settings.header.connectivity.discordRPC.appleMusic": "Display as 'Apple Music'",
@ -261,8 +262,8 @@
"settings.option.experimental.compactUI": "Compact UI", // Toggle
"settings.option.experimental.closeButtonBehaviour": "Close Button Behavior",
"settings.option.experimental.closeButtonBehaviour.quit": "Quit Cider",
"settings.option.experimental.closeButtonBehaviour.minimizeTaskbar": "Minimize to taskbar",
"settings.option.experimental.closeButtonBehaviour.minimizeTray": "Minimize to system tray",
"settings.option.experimental.closeButtonBehaviour.minimizeTaskbar": "Minimize to Taskbar",
"settings.option.experimental.closeButtonBehaviour.minimizeTray": "Minimize to Tray",
// Refer to term.disabled & term.enabled
// Spatialization Menu

View file

@ -7,10 +7,11 @@ export class ConfigStore {
private defaults: any = {
"general": {
"close_behavior": 0, // 0 = close, 1 = minimize, 2 = minimize to tray
"startup_behavior": 0, // 0 = nothing, 1 = open on startup
"open_on_startup": false,
"discord_rpc": 1, // 0 = disabled, 1 = enabled as Cider, 2 = enabled as Apple Music
"discordClearActivityOnPause": 1, // 0 = disabled, 1 = enabled
"language" : "en_US"
"discord_rpc_clear_on_pause": true,
"language": "en_US", // electron.app.getLocale().replace('-', '_') this can be used in future
"playbackNotifications": true
},
"home": {
"followedArtists": [],

View file

@ -125,7 +125,7 @@ export default class DiscordRichPresence {
// Check if its pausing (false) or playing (true)
if (!attributes.status) {
if (DiscordRichPresence._store.general.discordClearActivityOnPause == 1) {
if (DiscordRichPresence._store.general.discord_rpc_clear_on_pause) {
this._client.clearActivity()
.catch((e: any) => console.error(`[DiscordRichPresence][clearActivity] ${e}`));
} else {
@ -138,7 +138,7 @@ export default class DiscordRichPresence {
}
} else if (this._activity && this._activityCache !== this._activity && this._activity.details) {
if (DiscordRichPresence._store.general.discordClearActivityOnPause != 1) {
if (!DiscordRichPresence._store.general.discord_rpc_clear_on_pause) {
this._activity.smallImageKey = 'play';
this._activity.smallImageText = 'Playing';
}

View file

@ -124,9 +124,6 @@ export default class MinimizeToTray {
this._win.hide();
this.SetContextMenu(false);
});
electron.ipcMain.handle("update-store-mtt", (event, value) => {
this._store.general["close_behavior"] = value;
})
this._win.on("close", (e :any) => {
if (this._forceQuit || this._store.general["close_behavior"] == '0' ) {
this._app.quit();

View file

@ -751,7 +751,7 @@ const app = new Vue({
app.loadLyrics();
// Playback Notifications
if ((app.platform === "darwin" || app.platform === "linux") && !document.hasFocus() && a.artistName && a.artwork && a.name) {
if (this.cfg.general.playbackNotifications && !document.hasFocus() && a.artistName && a.artwork && a.name) {
if (this.notification) {
this.notification.close()
}

View file

@ -10,7 +10,8 @@
{{$root.getLz('settings.option.audio.quality')}}
</div>
<div class="md-option-segment md-option-segment_auto">
<select class="md-select" style="width:180px;" v-model="app.cfg.audio.quality" v-on:change="changeAudioQuality">
<select class="md-select" style="width:180px;" v-model="app.cfg.audio.quality"
v-on:change="changeAudioQuality">
<!-- // <option value="990">Extreme</option> -->
<option value="256">{{$root.getLz('settings.header.audio.quality.high')}}</option>
<option value="64">{{$root.getLz('settings.header.audio.quality.low')}}</option>
@ -33,7 +34,8 @@
<small>{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.description')}}</small>
</div>
<div class="md-option-segment md-option-segment_auto">
<input type="checkbox" v-model="app.cfg.advanced.AudioContext" v-on:change="toggleAudioContext" switch/>
<input type="checkbox" v-model="app.cfg.advanced.AudioContext" v-on:change="toggleAudioContext"
switch/>
</div>
</div>
<div class="md-option-line" v-show="app.cfg.advanced.AudioContext">
@ -53,7 +55,8 @@
<small>{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.audioNormalization.description')}}</small>
</div>
<div class="md-option-segment md-option-segment_auto">
<input type="checkbox" v-model="app.cfg.audio.normalization" v-on:change="toggleNormalization" switch/>
<input type="checkbox" v-model="app.cfg.audio.normalization" v-on:change="toggleNormalization"
switch/>
</div>
</div>
<div class="md-option-line" v-show="app.cfg.advanced.AudioContext">
@ -76,10 +79,16 @@
{{$root.getLz('settings.option.visual.windowBackgroundStyle')}}
</div>
<div class="md-option-segment md-option-segment_auto">
<select class="md-select" @change="$root.getNowPlayingArtworkBG(undefined, true)" v-model="app.cfg.visual.window_background_style">
<option value="none">{{$root.getLz('settings.header.visual.windowBackgroundStyle.none')}}</option>
<option value="artwork">{{$root.getLz('settings.header.visual.windowBackgroundStyle.artwork')}}</option>
<option value="image">{{$root.getLz('settings.header.visual.windowBackgroundStyle.image')}}</option>
<select class="md-select" @change="$root.getNowPlayingArtworkBG(undefined, true)"
v-model="app.cfg.visual.window_background_style">
<option value="none">{{$root.getLz('settings.header.visual.windowBackgroundStyle.none')}}
</option>
<option value="artwork">
{{$root.getLz('settings.header.visual.windowBackgroundStyle.artwork')}}
</option>
<option value="image">
{{$root.getLz('settings.header.visual.windowBackgroundStyle.image')}}
</option>
</select>
</div>
</div>
@ -89,23 +98,33 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<select class="md-select" v-model="app.cfg.visual.animated_artwork">
<option value="always">{{$root.getLz('settings.header.visual.animatedArtwork.always')}}</option>
<option value="limited">{{$root.getLz('settings.header.visual.animatedArtwork.limited')}}</option>
<option value="disabled">{{$root.getLz('settings.header.visual.animatedArtwork.disable')}}</option>
<option value="always">{{$root.getLz('settings.header.visual.animatedArtwork.always')}}
</option>
<option value="limited">{{$root.getLz('settings.header.visual.animatedArtwork.limited')}}
</option>
<option value="disabled">{{$root.getLz('settings.header.visual.animatedArtwork.disable')}}
</option>
</select>
</div>
</div>
<div class="md-option-line" v-if="app.cfg.visual.animated_artwork == 'always' || app.cfg.visual.animated_artwork == 'limited'">
<div class="md-option-line"
v-if="app.cfg.visual.animated_artwork == 'always' || app.cfg.visual.animated_artwork == 'limited'">
<div class="md-option-segment">
{{$root.getLz('settings.option.visual.animatedArtworkQuality')}}
</div>
<div class="md-option-segment md-option-segment_auto">
<select class="md-select" v-model="app.cfg.visual.animated_artwork_qualityLevel">
<option value="0">{{$root.getLz('settings.header.visual.animatedArtworkQuality.low')}}</option>
<option value="1">{{$root.getLz('settings.header.visual.animatedArtworkQuality.medium')}}</option>
<option value="2">{{$root.getLz('settings.header.visual.animatedArtworkQuality.high')}}</option>
<option value="3">{{$root.getLz('settings.header.visual.animatedArtworkQuality.veryHigh')}}</option>
<option value="4">{{$root.getLz('settings.header.visual.animatedArtworkQuality.extreme')}}</option>
<option value="0">{{$root.getLz('settings.header.visual.animatedArtworkQuality.low')}}
</option>
<option value="1">{{$root.getLz('settings.header.visual.animatedArtworkQuality.medium')}}
</option>
<option value="2">{{$root.getLz('settings.header.visual.animatedArtworkQuality.high')}}
</option>
<option value="3">
{{$root.getLz('settings.header.visual.animatedArtworkQuality.veryHigh')}}
</option>
<option value="4">{{$root.getLz('settings.header.visual.animatedArtworkQuality.extreme')}}
</option>
</select>
</div>
</div>
@ -124,8 +143,12 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<select class="md-select" style="width:180px;" v-model="app.cfg.visual.hw_acceleration">
<option value="default">{{$root.getLz('settings.header.visual.hardwareAcceleration.default')}}</option>
<option value="webgpu">{{$root.getLz('settings.header.visual.hardwareAcceleration.webGPU')}}</option>
<option value="default">
{{$root.getLz('settings.header.visual.hardwareAcceleration.default')}}
</option>
<option value="webgpu">
{{$root.getLz('settings.header.visual.hardwareAcceleration.webGPU')}}
</option>
<option value="disabled">{{$root.getLz('term.disabled')}}</option>
</select>
</div>
@ -135,7 +158,8 @@
{{$root.getLz('settings.option.visual.showPersonalInfo')}}
</div>
<div class="md-option-segment md-option-segment_auto">
<input type="checkbox" v-model="app.cfg.visual.showuserinfo" v-on:change="toggleUserInfo" switch/>
<input type="checkbox" v-model="app.cfg.visual.showuserinfo" v-on:change="toggleUserInfo"
switch/>
</div>
</div>
</div>
@ -449,6 +473,15 @@
</div>
<div class="settings-option-body">
<div class="md-option-line">
<div class="md-option-segment">
{{$root.getLz('settings.option.connectivity.playbackNotifications')}}
</div>
<div class="md-option-segment md-option-segment_auto">
<input type="checkbox" v-model="app.cfg.general.playbackNotifications" switch/>
</div>
</div>
<div class="md-option-line">
<div class="md-option-segment">
{{$root.getLz('settings.option.connectivity.discordRPC')}}
@ -457,7 +490,8 @@
<select class="md-select" v-model="app.cfg.general.discord_rpc">
<option value="0">{{$root.getLz('term.disabled')}}</option>
<option value="1">{{$root.getLz('settings.header.connectivity.discordRPC.cider')}}</option>
<option value="2">{{$root.getLz('settings.header.connectivity.discordRPC.appleMusic')}}</option>
<option value="2">{{$root.getLz('settings.header.connectivity.discordRPC.appleMusic')}}
</option>
</select>
</div>
</div>
@ -466,10 +500,7 @@
{{$root.getLz('settings.option.connectivity.discordRPC.clearOnPause')}}
</div>
<div class="md-option-segment md-option-segment_auto">
<select class="md-select" v-model="app.cfg.general.discordClearActivityOnPause">
<option value="0">{{$root.getLz('term.disabled')}}</option>
<option value="1">{{$root.getLz('term.enabled')}}</option>
</select>
<input type="checkbox" v-model="app.cfg.general.discord_rpc_clear_on_pause" switch/>
</div>
</div>
<div class="md-option-line">
@ -526,8 +557,11 @@
{{$root.getLz('settings.option.experimental.compactUI')}}
</div>
<div class="md-option-segment md-option-segment_auto">
<button class="md-btn" :class="{'md-btn-primary': app.cfg.advanced.experiments.includes('compactui')}" @click="app.cfg.advanced.experiments.includes('compactui') ? removeExperiment('compactui') : addExperiment('compactui')">
{{app.cfg.advanced.experiments.includes('compactui') ? $root.getLz('term.enabled') : $root.getLz('term.disabled')}}
<button class="md-btn"
:class="{'md-btn-primary': app.cfg.advanced.experiments.includes('compactui')}"
@click="app.cfg.advanced.experiments.includes('compactui') ? removeExperiment('compactui') : addExperiment('compactui')">
{{app.cfg.advanced.experiments.includes('compactui') ? $root.getLz('term.disabled') :
$root.getLz('term.enabled')}}
</button>
</div>
</div>
@ -537,9 +571,12 @@
{{$root.getLz('term.language')}}
</div>
<div class="md-option-segment md-option-segment_auto">
<select class="md-select" @change="$root.setLz('');$root.setLzManual()" v-model="app.cfg.general.language">
<select class="md-select" @change="$root.setLz('');$root.setLzManual()"
v-model="app.cfg.general.language">
<optgroup :label="index" v-for="(categories, index) in getLanguages()">
<option v-for="lang in categories" :value="lang.code">{{lang.nameNative}} ({{ lang.nameEnglish }})</option>
<option v-for="lang in categories" :value="lang.code">{{lang.nameNative}} ({{
lang.nameEnglish }})
</option>
</optgroup>
</select>
</div>
@ -550,9 +587,15 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<select class="md-select" v-model="app.cfg.general.close_behavior" @change="sendDataToMTT()">
<option value="0">{{$root.getLz("settings.option.experimental.closeButtonBehaviour.quit")}}</option>
<option value="1">{{$root.getLz("settings.option.experimental.closeButtonBehaviour.minimizeTaskbar")}}</option>
<option value="2">{{$root.getLz("settings.option.experimental.closeButtonBehaviour.minimizeTray")}}</option>
<option value="0">
{{$root.getLz("settings.option.experimental.closeButtonBehaviour.quit")}}
</option>
<option value="1">
{{$root.getLz("settings.option.experimental.closeButtonBehaviour.minimizeTaskbar")}}
</option>
<option value="2">
{{$root.getLz("settings.option.experimental.closeButtonBehaviour.minimizeTray")}}
</option>
</select>
</div>
</div>
@ -686,12 +729,16 @@
toggleNormalization: function () {
if (app.cfg.audio.normalization) {
CiderAudio.normalizerOn()
} else { CiderAudio.normalizerOff() }
} else {
CiderAudio.normalizerOff()
}
},
toggleSpatial: function () {
if (app.cfg.audio.spatial) {
CiderAudio.spatialOn()
} else { CiderAudio.spatialOff() }
} else {
CiderAudio.spatialOff()
}
},
changeAudioQuality: function () {
app.mk.bitrate = app.cfg.audio.quality
@ -700,7 +747,7 @@
app.chrome.hideUserInfo = !app.cfg.visual.showuserinfo
},
sendDataToMTT: function () {
window.ipcRenderer.invoke('update-store-mtt', app.cfg.general.close_behavior);
ipcRenderer.invoke('setStoreValue', 'general.close_behavior', app.cfg.general.close_behavior);
}
}
})